Company overview and job description
SquareGPS is a private IT company with approximately 80 employees. Our developers are divided into several teams, each of which is working on an individual product on the basis of the common platform. You can choose which team to work with — taking into account your experience and professional interests, the desire to broaden the knowledge in a new subject area. Sometimes the choice is determined by personal inclination towards a particular team or the desire to try yourself in a new role.
What you’ll get to do:
As the Senior Android Developer, you will take part in creation of brand-new mobile applications and refinement of the existing ones, leaving a mark on one of the leading Mobile Resource Management platforms in the world. Our applications support various maps, allow you to track employees in the background, provide real-time data, view tasks, exchange messages, build routes and much more.
At SquareGPS, we apply the most prominent and perspective technologies and tools:
- Languages: Java 7, Kotlin 1.3 (now actively migrating our codebase to Kotlin)
- Target SDK — version 26
- Libraries: Google Play Services, ButterKnife, OkHttp, kotlinx-coroutines, Glide, Jackson, etc.
- Data Formats: JSON over HTTP API, Navixy Binary Protocol
- Error Collection, Statistics: Crashlytics
- IDE: Android Studio
- Version Control: Mercurial
- Task Management: JetBrains YouTrack
- Continuous integration: JetBrains TeamCity
- 7+ knowledge of Java (Kotlin will be a plus).
- Proven 3+ years experience in developing mobile applications in Java and sophisticated knowledge in Android platform development.
- Knowledge of Android application structure, the life cycle of its components and the principles of their interaction, the ability to work with application resources.
- Understanding about the principles of OOP and design patterns, SOLID, the ability to create supported code.
- Experience building multi-threaded applications on Android platform.
- Good understanding of the model and principles of client-server interaction (HTTP, Rest API, JSON, form data).
- Technical English at the level of reading / writing documentation.
- Experience with version control systems (Mercurial, Git …)
Will be an extra plus:
- The ability to create beautiful and intuitive interfaces in the Material Design style.
- Experience working in a team.
- Test writing skills.
- Experience with Google maps, Firebase services, In-app purchases.
- Available code examples.