A Journey as an Android Developer in a Year of Experience

Eminarti Sianturi
Pairworking
Published in
5 min readDec 19, 2017

--

Based on my opinion and experiences

Mobile Developer image taken from Google

I started to learn Android application development when I was in the end of year in my studying , about 2 years ago. Mobile application development course was given to us in the 3rd year, but I had already started it earlier since my final project related to mobile application development. At that moment, I studied how to develop android applications through the course module of previous year. My seniors and my friends also supported me and I tried to understand how to develop an Android application well. I developed my application based on module and lecturer. My application didn’t have an architecture, because of all I know is about how to make an android application. And at that time, I felt the application that I had already developed is really good and nice.

In fact, my real journey as a Android Developer was started since a year ago. I just graduated from my college and applied jobs to multiple companies with multiple positions. And I accepted in Kurio as a Android Developer and started my journey. The team that I had that time totaled 3 people including me, a fairly small team to me.

At the beginning of my journey, I feel confident with the skills that I had before. However when I learned to understand the project, suddenly I felt afraid, I felt like *wtf*, what is actually done while developing android applications. I felt strange and suddenly my knowledge about Android development that I had before just missing, I’m blank 😱. Here the first time I learned about application architecture, dependency injection, including learning how to use git (version control).

Thanks to both of my leader that helped me to understand how the application runs. Some articles are often shared by them to help me understand about things the less I understand. At the beginning, my leader often reminds me about our application architecture so that I can do it according to the guidelines regarding some of the task. And as time went on, I started to develop my own applications to make me better understand the application development flow. Slowly the task that I handle becomes more difficult and larger. Sometimes my leader and I was divided the task into two parts. So I also have the same load with my leader, despite the fact that my leader really help me a lot when working on it.

And now after a year of my journey as a Android Developer, what things that I have gotten?

1. Learn to develop applications with architecture

Developing an application it would be easier if you have a framework and clear architecture. This will help you in the development process including how to make the functions, how to test the functions, looking for bugs and errors as well as it would be easier for a newbie to join like me. Every code that was developed has put in the appropriate place.

2. Learn to pour a design into code

This action is difficult for me because I don’t like to pour the design into the code particularly e.g. make it in xml version. I love to see the design but I often feel inadequate and difficult to do it. But as a mobile developer, we have to translate each of the existing design into a form in appropriate and efficient code. How the size, layout, color must match. Even though we’re not a UI/UX designer, we should understand and follow the development of material design in mobile application so that we can understand how to pour the design into code properly to make a good application.

3. Learn about the new concepts and technologies

Lots of technologies and concepts that support Android application development for the better. One of them is about dependency injection. For the first time I find out this thing I felt strange and confused about what is the main function of this technology. But the more I learn and repeat to apply it, the more I understand about them. The same case is when we migrate our application to use retrofit 2 combined with RxJava. That time I also got a new challenge from my leader to working on one section full, so I understand how technology was used. Even to this day I still have to do more research about that.

4. Learn to follow the development of the mobile OS

Because of a lot of Android device types with different screens, settings, sizes, and performances as well as OS types, it is indirectly asking me to follow news about its development. This is due to the difference in device or OS can effect how we developed our application. Beside it, bugs and errors that occur sometimes specific or occur only in some devices or OS so I need to know how to solve these problems.

5. Learn to develop applications with different language or technology

Programming Language Images Taken from Google

Developing android applications are no longer just limited using Android Studio with Java programming language. There are so many new technologies and is currently being used like Kotlin, React Native, and others. Although the development of android applications that most popular and stable are still using Java programming language, but due to the emergence of a new trend, this can be ascertained to change the pattern of development of mobile applications. Therefore, it’s good to learn developing Android applications with a variety of new technologies. In addition, to improve our skill and experience, we can find comparisons among them to get the result which is better used for developing applications. It’s also good learning to develop mobile applications in other types, such as iOS because I’m a mobile developer where mobile is not just android but there are other types.

So, here some experiences in my journey as a android developer in one year. I hope this article gives you new energy to learn more and more. There is no limit for learning but the time is limited. Thanks for reading this article. Be sure to clap/recommend as much as you can and also share with your friends. It means a lot to me. Happy Learning :)

If you have any questions or complains, please feel free to contact me in these social networks: twitter, linkedin, or email. I’ll try to do my best to answer if I can, otherwise we will learn together :)

--

--