Mobile

Mobile developers work on applications for smartphones, tablets, and wearables. Mobile developers specialize in iOS or Android. There is also Windows Mobile, but it’s not very popular. The programming languages and IDE required for development on iOS and Android differ.

Job responsibilities

  • Develop application architecture and interfaces
  • Collaborate with a UX / UI designer
  • Publish ready products in the app stores (Google Play, App Store)
  • Support the applications
  • Test and debug
  • Prepare accompanying documentation, create instructions for working with the product

Skills

  • Familiarity with structures and algorithms, principles of object-oriented programming
  • Knowledge of network protocols
  • Understanding of MVP, MVC, and MVVM patterns
  • Experience with common libraries for the desired platform
  • Experience with Git
  • Knowledge of SQL
  • Proficiency in programming languages specific to each platform

Somewhat less common requirements:

  • Understanding of the principles of mobile app design and engineering
  • Multithreading experience
  • Familiarity with CI/ CD and client-server architecture
  • Understanding of the principles of usability

Other popular skills for mobile are memory management , core animation , auto layout , and a framework for cross-platform development called Flutter.

To develop on iOS you need to know:

  • One or more of the following programming languages: Swift, Objective-C, C++
  • Xcode or Cocoa development environment
  • Apple development guidelines
  • Sometimes, the Core Data framework

For Android:

  • One or more of the programming languages: Java, Kotlin, sometimes Scala, C, C#
  • Android SDK (software development kit) development tools, utilities, and documentation
  • REST architecture style and SOAP messaging protocol
  • Android SDK

FAQ

In general, game development is similar to the development of any application. The programming languages are the same: Swift, C++ for iOS, Java, or C# for Android. Usually, small companies use the Unity engine in combination with C# and JavaScript.
If the app is intended for both iOS and Android, there must be at least two developers on the team. Don't forget that you need not only developers, but also at least a UX/UI designer to create a mobile app.
In the first place, decide on the platform. If you want to develop both iOS and Android versions at the same time, you should hire two developers. Write a job description with specific tasks and requirements. Post your job on the specialized Telegram channels for IT professionals and on job boards. In this way, you can find a developer of the junior or, at best, middle level. It's more efficient to search for competent middle and senior developers via LinkedIn. And it's even better to contact a recruitment agency that can find the best specialist for your project.
There are no significant differences in specialists’ skills and responsibilities. Mobile app testing has some specific features (for example, you should take into consideration limited memory or interruptions of the app operation with calls, SMS, etc.), but it is not difficult to learn them , and game testers usually require gaming experience.
Order a consultation >