You should know a modern, object-oriented statically typed programming language like Java, C++, or Python. It's best if you have been programming for at least 1 year, and are comfortable with an IDE, such as IntelliJ or Android Studio.

You must be able to install the latest version of the JDK and the latest version of IntelliJ IDEA CE (Community Edition), which is the IDE that is used in the course.