Contents:
- A little history: Jobs's prediction and the mobile development revolution
- Prospects for mobile development in numbers
- What languages are used for mobile development
- How a beginner can choose a mobile development platform
- Where mobile programmers are needed
- How much does a mobile developer earn?
- How to become a mobile developer in seven steps

Free Python Course ➞ Mini-course for beginners and experienced coders. 4 cool projects in the portfolio, live communication with the speaker. Click and find out what you can learn in the course.
Learn moreA mobile developer is a specialist who creates software for mobile devices. This category includes not only smartphones and tablets, but also smartwatches, fitness trackers, e-readers, GPS navigators, and other portable devices with screens and control interfaces. Mobile developers use various technologies and programming languages to create applications that provide users with convenient access to information and functionality anytime, anywhere. This area of development requires deep knowledge of UX/UI design, as well as an understanding of the specifics of mobile platforms and their ecosystems.
Most wearable devices run on Android and iOS operating systems. Therefore, mobile developers focus their efforts on creating software specifically for these platforms. This ensures optimal performance and compatibility of applications with popular smartwatches, fitness trackers, and other wearable devices, which significantly increases their functionality and appeal to users.
A Little History: Jobs's Prediction and the Mobile Development Revolution
Mobile development as we know it today began to take shape in the early 2000s with the advent of Java Micro Edition and WAP, a lightweight version of Internet access. Users sought to access entertainment, check email, and communicate via ICQ while performing familiar actions on their mobile devices. Since then, mobile apps and technologies have evolved significantly, providing users with more and more opportunities for interaction and entertainment online. Mobile development has become an integral part of the digital world, changing the way we communicate and access information.
At that time, there were few developers, and each phone model required its own unique version of the program. The application distribution system left much to be desired, despite the fact that Steve Jobs proposed the concept of an application marketplace back in 1983 at the Aspen International Design Conference. This shortcoming limited the options for users and developers, which negatively impacted the growth of the mobile application market.
In his speech "The Future Is Not What It Used to Be," Steve Jobs drew an analogy between software distribution and music stores. He described a process in which a user could download a free demo version of a program and then decide whether to purchase the full version. Moreover, all transactions took place remotely, using a phone line and a bank card number. Jobs noted that while he didn't yet have a clear plan for implementing this idea, it was absolutely necessary. Ultimately, the App Store concept he envisioned wasn't realized until 25 years later, becoming a milestone in the development of digital content and changing the way users interact with software. Initially, the mobile development market grew slowly, but Apple and Google significantly changed this situation. The release of iOS and Android created a powerful incentive for developers, leading to increased interest in mobile app creation. Innovative technologies like the App Store and Google Play made millions of apps available to users, fueling the explosive growth of the industry. English: Every year, mobile applications become more and more important tools for business and everyday life, which creates new opportunities for developers and entrepreneurs.
- 2007 - the first iPhone was released;
- July 10, 2008, the App Store opened;
- 9 months later - 1 billion downloads from the App Store;
- 2008 - the first smartphone under Android appeared (a year after the iPhone);
- October 22, 2008, Google launched the Android Market;
- 2010 - one billion downloads from the Android Market.
A real revolution has occurred in mobile development, driven by the growing demand for mobile applications, effective distribution systems and convenient monetization methods. Smartphones are no longer just devices for making calls; their new functionality requires active use. The development of technology and the increase in the number of mobile device users have opened new horizons for developers, allowing them to create innovative applications that meet the needs of the modern user. Mobile apps now play a key role in everyday life, providing access to information, entertainment content, and various services.
Mobile Development Prospects in Numbers
The demand for mobile developers continues to grow. According to the Statcounter analytical system, mobile traffic reached 57% in April 2020, while in 2012 this figure did not exceed 14%. This indicates a significant increase in the importance of mobile technologies. It is also worth noting that the number of available applications on marketplaces is increasing. In the first quarter of 2020, Google Play had 2.5 million applications, and the App Store - 1.8 million, according to information from Statista.com. The growing popularity of mobile applications and platforms creates new opportunities for developers and determines the need for highly qualified specialists in this field.

Technology continues to develop, and today we are already seeing the emergence of docking stations for smartphones. These devices transform a smartphone into a fully-fledged computer, allowing the user to connect a monitor, keyboard, and mouse. Thus, the smartphone becomes the basis for a compact desktop solution. Projects such as Mirabook and NexDock have successfully received crowdfunding funding, and Samsung has unveiled its DEX Station line. These innovations open up new horizons for mobile users, making the workflow more convenient and efficient.

What languages are used for mobile development?
In mobile development, there are various specializations focused on platforms and programming languages. However, there is no clear division between the frontend and backend, as in web development. A mobile developer must have skills in working with both the user interface and the internal logic of the application. This requires a deep understanding of both the client and server parts, which allows you to create more efficient and integrated solutions for mobile devices.
Development of applications for the Android and iOS platforms is possible in various programming languages, such as C/C++, Fortran, assembler, Python, and JavaScript. However, the most effective way to create mobile applications is to use officially supported languages that provide access to the full functionality of the operating systems. For iOS, these are Objective-C and Swift, and for Android, Java and Kotlin. These languages allow developers to take full advantage of new features and improvements introduced to mobile platforms, which contributes to the creation of high-quality and productive applications.
Currently, Apple recommends using the Swift programming language, and Google actively supports Kotlin. This is due to the fact that Swift was developed internally at Apple as the primary tool for mobile development, eliminating the shortcomings of the outdated Objective-C. In turn, Kotlin has become popular among Android developers due to its compatibility and convenience, which led to its official support by Google in 2019, when it was declared the #1 language for the Android platform.
How a Beginner Can Choose a Mobile Development Platform
To successfully start out as a developer, you need to master a programming language and the corresponding development environment. For iOS, it is recommended to start by learning Swift and using Xcode or AppCode. In the case of Android, it is worth paying attention to Kotlin and Android Studio. If you're working independently, it's helpful to have a basic understanding of design and development standards for these platforms. In any case, you should carefully study the official guides to deepen your knowledge and skills.
To get started with Android development, there's a basic set of tools available for installation on Windows, Linux, and macOS operating systems. This set includes the necessary components and software to effectively create and test applications for the Android platform. Once you install these tools, you can begin developing, debugging, and optimizing your mobile apps.
- Android Studio development environment (already includes Kotlin). The tool is downloadable for free from developer.android.com.
- Java Runtime Environment (Kotlin is based on Java, so it uses its compiler). You can download it from java.com.

The iOS development starter kit includes all the necessary resources and technologies to successfully create mobile applications for the iOS platform. The first step is to install Xcode, Apple's official development environment, which provides all the tools you need to create, test, and debug apps. It's also important to become familiar with the Swift programming language, which has become the staple of iOS development thanks to its simplicity and efficiency. Learning UIKit and SwiftUI, which help you create user interfaces, is equally important. It's also helpful to master version control tools like Git for storing and collaborating on code. Learning the basics of working with APIs and databases is also essential for creating fully functional apps. It's recommended to consider learning resources like online courses, Apple documentation, and developer communities. These components will provide a solid foundation for your start in iOS development.
- A Macintosh computer is required. You won't be able to fully develop iOS apps on other platforms.
- Development environment: Xcode or AppCode. You can download them from developer.apple.com and jetbrains.com.
If you don't have a Mac but want to try one, there are three easy ways to do so. First, you can use a shared hosting service, which allows you to run macOS on cloud servers. This will allow you to use all the system's features without having to purchase a device. Second, consider purchasing a used or refurbished Mac. This can be a more affordable way to experience the benefits of the Apple ecosystem. Finally, you can install macOS in a virtual machine on your PC using software like VirtualBox or VMware. This solution requires some technical skill, but it allows you to access the system without significant costs.
- GNU/Linux with Swift installed (there are official packages for Ubuntu, CentOS, and Amazon Linux; you can download it from the language's official website), a text editor such as mousepad or gedit, the clang compiler, and a Unicode toolchain—libicu-dev.
- Windows with an unofficial Swift for Windows package and a text editor such as Notepad++ or Brackets. The package is available on GitHub.
- A ready-made macOS build for a virtual machine from torrents (for example, under Virtualbox).
It is recommended to use a Mac, as running macOS in a virtual machine violates Apple's license. Without a Mac, you can only get acquainted with Swift programming in Windows and Linux environments, but fully-fledged application development will be impossible.
Where mobile programmers are needed
Mobile applications cover a wide range of tasks and are designed to meet various user needs. They include calendars, email clients, note-taking applications, games, and mobile banking. In addition, there is even an accordion emulator for iOS, which allows users to click virtual buttons on the screen and enjoy music. Mobile applications have become an integral part of everyday life, offering convenience and functionality for solving a wide variety of problems.
Desktop services and programs are actively developing their mobile applications to meet modern user demands. Applications such as 1C Bitrix, Photoshop Lightroom, and Gosuslugi are already available in the Google Play and App Store marketplaces. However, creating an application is only the first step. It requires regular updates and maintenance, which requires significant effort and highly qualified specialists. Mobile app support involves fixing bugs, adding new features, and adapting to changes in operating systems, making this process complex and resource-intensive. There are a number of particularly promising areas. The data below is for 2019. Gaming is one of the most extensive and profitable industries in the modern world. The number of players and the diversity of gaming genres are growing every year, making this sector attractive for investment and development. The video game industry spans multiple platforms, including PCs, consoles, and mobile devices, attracting audiences of all ages. Game development requires highly qualified specialists such as programmers, designers, and writers, creating new jobs and fostering technological advancement. With gaming's ever-growing popularity, it is important to consider market trends and user preferences to remain competitive. The gaming industry not only entertains but also shapes culture, inspires creativity, and fosters social interaction.
- 33% of all mobile app downloads are games.
- At the end of 2019, mobile game publishers collected $68.5 billion, and by the end of 2020, Newzoo analysts predict growth to $76.7 billion.
- All areas of business draw ideas from GameDev—it represents cutting-edge technologies and working methods.
Education and entertainment are becoming increasingly interconnected. Learning languages, reading books, listening to music, traveling, exercising, and participating in training courses offer a variety of opportunities for personal and professional growth. Online education is firmly occupying its niche, significantly outpacing traditional formats. Users value the convenience and effectiveness of this approach. In 2019, the online education market increased by 60%, confirming a steady trend of growth and development in this area. Online courses and programs provide access to high-quality knowledge and skills, making them popular among students and professionals.
Modern technology has significantly transformed the banking sector, bringing it to smartphones. The Tochka Bank app allows users to easily open and close accounts, and the Sberbank mobile app allows for the issuance of both physical and virtual cards. Even services like Sistema Gorod, which traditionally had numerous offline utility payment locations, are now available in a mobile version. This confirms that the digitalization of banking services is becoming an integral part of our daily lives, making financial transactions more convenient and accessible.
Financial technology (fintech) is an exciting and dynamic industry that is constantly evolving. While it can be challenging for new developers to enter this field, there are ample opportunities for qualified professionals. Fintech is actively seeking experienced professionals who are ready to contribute to innovation and the improvement of financial services.
E-commerce is the process of buying and selling goods and services over the internet. It encompasses a wide range of business models, including retail, wholesale, auctions, and electronic payments. Advances in technology and the increase in internet users have fueled the growth of e-commerce, making it an essential part of modern business.
Key benefits of e-commerce include consumer convenience, the ability to compare prices, access to a global marketplace, and 24/7 operation. For entrepreneurs, this means reduced costs for space and personnel, as well as the ability to scale a business without significant investment.
However, e-commerce also faces challenges, such as intense competition, data security issues, and the need to provide high-quality customer service. To successfully grow a business in this area, it's important to implement effective marketing strategies, optimize websites for search engines, and utilize modern technologies to analyze purchase data.
Modern trends in e-commerce include the use of mobile apps, the implementation of artificial intelligence, and the personalization of offers for users. All of this creates new business opportunities and improves the user experience, which leads to increased sales and stronger customer loyalty.
- Globally, 63% of e-commerce purchases are already made on mobile devices, according to data from the international marketing agency Wolfgang Digital.
- In 2019, Russians spent 1 trillion rubles on smartphones and tablets.
The demand for mobile development continues to grow every year, making this sector one of the fastest-growing in the market. Mobile applications are becoming an integral part of users' lives, opening up new business opportunities. The growing demand for high-quality mobile solutions demonstrates the significant potential of this area, attracting investors and developers. Mobile development is a huge market with impressive turnover, and players in this field have the opportunity to significantly increase their market share.
How much does a mobile developer earn?
The salary range for Android developers, according to hh.ru, as of the end of June 2020 ranges from 80,000 to 150,000 rubles per month. This data reflects current market trends and the level of demand for qualified mobile development specialists. It is important to note that salaries may vary depending on experience, region, and company specifics. Developers with a high level of competence and experience can expect more competitive offers. Given the growing demand for mobile apps, the income outlook in this field remains promising.
- A junior developer with minimal experience is offered a salary of 35,000–40,000 rubles.
- An experienced mid-level developer earns significantly more—from 100,000 rubles.
- A highly qualified senior developer and team leader earn an average of 180,000 rubles, but there are also positions for 400,000–500 rubles.
In addition to knowledge of the programming language, it is important to be proficient in the Git version control system, as well as specialized libraries such as RxJava, Dagger, and Android Architecture Components. These tools significantly simplify the development process and allow you to create more efficient and scalable applications for the Android platform.

The salary range for iOS developers, according to hh.ru as of the end of June 2020, is from 80,000 to 200,000 rubles per month. Salary levels depend on experience, qualifications, and region. Salaries are higher in large cities such as Moscow and St. Petersburg, while they can be significantly lower in the regions. Companies are looking for specialists with deep knowledge of Swift, Objective-C, and experience working with various frameworks. This creates a competitive environment in the labor market, where highly qualified developers can expect a significant increase in income.
- Interns with no experience at all are offered 20-30 thousand rubles.
- Juniors are paid from 40 thousand.
- Middles - around 100 thousand rubles.
- Seniors and team leads - 150-200 thousand.
Most vacancies require knowledge of the RxSwift library. This library is actively used for developing applications on the iOS platform and allows for the effective management of asynchronous events. Employers value specialists with RxSwift skills, as it significantly simplifies data processing and improves application performance. Knowledge of RxSwift is becoming an important competitive advantage for developers who want to successfully advance in the field of mobile development.

How to become a mobile developer in seven steps
A roadmap for a beginner: start with training to eventually achieve financial success, recognition and interesting challenges.
- Master Kotlin/Swift: start coding, understand simple algorithms and functions, get to grips with the terminology, code a few simple programs.
- Learn the basics of the Android SDK / Apple Development Guidelines and write a small, simple app.
- Create a couple of prototypes in Figma, Adobe XD, or Sketch.
- Publish the app on Google Play / AppStore.
- Understand the Git version control system and build a portfolio in it.
- Write a resume, show it to familiar IT recruiters and practicing developers, make edits. Send it out, go to interviews, work on mistakes.
- Profit!
You can learn programming on your own through books, videos, and manuals. However, this path can be difficult and lengthy, especially for beginners. A more effective solution is to begin training with experienced mentors who will provide constant feedback and help you master the necessary skills faster. This approach significantly accelerates the learning process and helps avoid common mistakes.
Reading useful materials and articles is an important aspect of self-education. By immersing yourself in a variety of topics, you not only expand your knowledge but also develop critical thinking. Explore current research and analysis to stay abreast of the latest trends and developments. Don't forget to share interesting discoveries with friends and colleagues; it will help not only you, but also those around you.
- Senior iOS developer from VK: "Working in the enterprise is stability"
- Praising someone for solving a simple problem is also sexist: interview with a senior developer
- The Kotlin programming language: what it is, where it is used, and why developers love it

