Today it is difficult to imagine everyday life without a smartphone. They have everything: online stores, mobile banks, trackers for sports, nutrition and habits, e-books, documents, spreadsheets, photos, movies, etc.
The mobile development market is growing rapidly: in 2020, the share of smartphones based on Android occupied more than 70% of the market. Therefore, today the profession of an Android developer is one of the most highly sought and promising.
In this article, we will tell you what the profession of an Android developer is, what you may encounter in your work, what skills you should focus on during your studies, and also share the experience of entering the profession of our teachers.
WHAT DOES AN ANDROID DEVELOPER DO
An Android developer creates applications for devices based on the Android operating system: writes program code, typesets screens, assembles assemblies, uploads the application to the store where users can download it from.
He also analyzes the terms of reference from the customer and makes recommendations, conducts code reviews and tests the code.
WHICH HARD AND SOFT SKILLS SHOULD AN ANDROID-DEVELOPER HAVE
Hard skills
In an ideal scenario, you know the Android SDK, Java or Kotlin languages, OOP, design patterns, development principles and the HTTP protocol, and how to work with streams and the REST API.
But at the start, it is not necessary to have all these skills. You can compensate the absence of one or two with high motivation to work and developed soft skills which we will talk about later.
Soft skills
Teamwork. In your work, you will interact with Android and iOS-developers, backend developers, managers, analysts, testers, etc. The more coherent is communication, the more effective is the work of the whole team, because sometimes the fate of the release depends on the ability to come to an arrangement with each other. This is especially true for distributed teams where the developers are located remotely from each other. In this case, all available types of communication are used – instant messengers, correspondence, audio and video calls, and screen sharing.
Listen to others and give feedback. Learn to listen to the team and respond appropriately to criticism. This skill is especially useful for code review – checking your program code by other developers. This is a great practice that will allow you to reduce the number of errors in the code and improve your development skills thanks to the advice of your colleagues.
Adapt. We often work in a mode of rapidly changing conditions – we updated the layouts, added requirements to the task, and then found a critical bug. Imagine if the next release is right at hand. It is important to be in touch, quickly get involved in work and calmly respond to changes.
Independence. Most often, developers manage their own working time, so it is important to develop discipline, responsibility and decision-making skills.
ADVANTAGES OF THE PROFESSION
There is a convenient development environment Android Studio which has built-in emulators of Android devices with the configurable characteristics. This greatly simplifies the process of testing your project – you don’t even need a real device. You can configure the emulator with your desired screen size, aspect ratio, memory size, and operating system version.
Not tied to OS. You can develop for Android on any system – MacOs, Linux, or Windows.
Materials. Well-written documentation, a large number of development guides, guides and articles (we left links to them at the end of the material).
High demand for qualified specialists. You can easily find a job, you have practically no salary cap – it all depends on your aspirations. You yourself can decide in what conditions you will work: in a cool office with goodies from the company or remotely at home, in a coffee shop or traveling. After all, there are a huge number of vacancies on the market.
DISADVANTAGES OF THE PROFESSION
A large number of smartphones. This is both an advantage and disadvantage. On the market, there are a large number of manufacturers with their own shells. Due to the hardware features of the phone, the functionality in the application may behave differently. For example, unexpected crashes may occur on some devices, or screen content may not display as you intended. All this will need to be taken into account and corrected during development.
A large number of operating systems versions. Not all smartphones receive the latest system updates, so you have to support different versions of the Android OS. This is fraught with errors on certain versions that need to be resolved and taken into account. And be sure to check the functionality on different versions of the operating system. This is usually done by testers, but developers should not forget about it either.
A large number of different screens where you need to check the display and make adjustments if necessary. For example, it often happens that some UI element does not fit small screens or the font looks too small on a large screen.
Non-standard tasks that require looking for non-standard solutions. For example, you are told to use some design element “like in iOS”, but in Android there is no such tool. You have to create a custom view yourself with non-standard behavior for the operating system.
But don’t let these difficulties scare you 🙂
I HAVE DECIDED TO BECOME AN ANDROID DEVELOPER, WHAT SHOULD I DO?
- Install Android Studio IDE. To do this, follow the instructions.
- Select the training material – we left links to them at the end of the article.
- Be bold, learn new things, don’t be afraid of difficulties and, voila – you are an Android developer!
HOW OUR ANDROID-DEVELOPERS CAME INTO THE SPHERE
Elsa
3 years in the profession
I first learned about this profession when I was at the university. At that time I was very far from development and did not see myself in this profession at all, although I studied in the corresponding specialty. Everything was decided by chance.
For my graduation project, I needed a practical part, which was a website or a mobile application. Working with a smartphone seemed much more interesting to me, and I asked my friend, an Android developer, to teach me everything I need to create a simple mobile application. Luckily for me, he agreed.
For me it was a real challenge! Day and night, I sat with a small child in my arms, either over a diploma, or over lessons for beginners in Android. I read articles, googled a lot, called my mentor who checked the code I wrote, took all the comments and tried to fix them. Finally, I got my degree!
At the same time, I got an email with information about the upcoming course for beginner Android developers. This was my chance to get into the profession. Simultaneously with writing an application for my diploma, I was busy completing assignments for courses. It was not easy, but really fascinating!
Thus, I, initially not seeing my future in programming, got a job as an intern developer. Life is unpredictable!
Samantha
4 years in the profession
I never wanted to be a programmer. When I entered the faculty of information systems and technologies at a technical university, I did not particularly think about working as per my profession. I chose the faculty because I heard good reviews about it from friends, and it fit the exams that I passed. And during my studies, I became more and more convinced that programming is not mine.
When I was the first year-student, the laboratory work related to the creation of applications for Android in Java became the exception. During it, I was hooked by the fact that you can immediately see the result of your work on your own phone.
And during summer training in an IT company as a 4 year-student I was asked what programming language I knew, I, remembering those labs, named Java. So I ended up in the mobile development department where I continued to work after completing my training.
I liked the IT industry itself — the people and the atmosphere. It was very interesting to work on a product that thousands of people use and see the result of my work just by running the application on my phone.
IN CONCLUSION
An Android developer creates applications for smartphones based on the Android operating system: writes program code, typesets screens, assembles assemblies, uploads the application to the store, conducts code review and tests its code, analyzes the terms of reference from the customer and makes recommendations.
To get a starting position, you need to know the Android SDK, Java or Kotlin languages, OOP, design patterns, development principles and the HTTP protocol, be able to work with streams and REST API.
You must also be able to work in a team, listen to others and adequately respond to criticism, quickly adapt to changes, be stress-resistant, organized and independent.
Advantages of the profession: it is in demand with no salary cap, convenient Android Studio development environment, no OS binding (you can work on any – MacOs, Linux, Windows), good documentation and a large number of training materials.
The main disadvantage is in a large number of smartphones, versions of operating systems and different screens where each can behave differently and produce its own errors. The task of the Android developer is to capture and solve them.
If you are just starting to study the profession, pay attention to the list of training materials that we left below, enjoy and good luck! 🙂
ADDITIONAL RESOURCES
IDE
Before you start learning Android, you need to install the IDE – Android Studio.
To do this, follow the instructions.
Tutorials and Articles
- The official website of Android Developers – a fount of useful information for developers. There is also the documentation that you will refer to most often.
- The Android Developer Dictionary, which complements Google’s free “Android Basics: User Interface” course for beginners.
- Official tutorials from Android Studio
- Documentation on the Kotlin programming language
- Articles about Android development by Medium
In addition, hot key lists that greatly simplify and speed up your work – recommended by IntelliJIDEA
Books
- “Efficient Android Threading” (by Anders Göransson)
- “Android Programming: The Big Nerd Ranch Guide” (by Bill Phillips, Chris Stewart and Kristin Marsicano)