How to become an Android developer [practical approach].

How to become an Android developer [practical approach].
Spread the love

Android developer’s have seem a surge in demand from firms over the last decade, interestingly. But first, who is an Android developer, and what is Android?

 

 

Android developer(dev), the short story!

 

 

An Android developer could be anyone. I know this because I was once a hopeless prospect who, somehow, figured it out!

 

I will first walk you through working it out yourself, with reference to videos that will serve you. Then we can touch on boot camps and online/varsity courses, optional, in future blogs!

 

Being an Android developer can get tricky; let me start there! I won’t bullshit you. Moreso if you are in it alone!

 

This framework is challenging and sometimes nightmarish.

I know of a few people who cried Android with anguish in their sleep because its vast, imposing riddle refused to reveal itself to them.

 

It would chase them in torment, revealing its numerous facets at every corner of their terrible ordeal.

 

Many keyboards lie in ruin at dumpsides from souls who were endlessly trapped in compile-time/run-time errors.

 

And unless you’re one of those few anomalies that breathe code as H2O, you’ve probably encountered the same challenges.

 

 

However, it does get better. And sooner than you think!

 

 

Android developer
The traditional king of Android developer’s, Mr(s) Green!

 

 

 

I am not here to help your despair because you deserve and need every bit of it. I am here to say that more is coming. However, we can create a structure that can help us cope and subsequently begin improving.

 

A big part of understanding these structures involves finding your niche in Android. What about Android do you like? What speaks to you? 

 

What are you perceptible to?

 

 

Here are the four major components in an Android developer ‘s roadmap(to help you decide).

 

Step 1.

  • The UI/UX plus prototypes: This includes the UI(User Interface) components that a user engages with. The more you improve the elegance and functionality of the designs, the more the UX(User Experience) improves. These components would then be exported whole or in parts into the XML file of your Android Studio project. Or directly into the backend as composables using Jetpack-compose. Common UI/UX design + prototyping tools include(but are not limited to) Figma, Sketch, and Adobe XD.

    • If you are visually inclined or are an artist, then this is a good option for you. UI/UX designers are Android’s response to Graphic designers(Me think so!).

 

 

Step 2.

  • The Xml or composable. These are the UI components exported from Figma, now implemented in Android Studio(Our app-building Development space). Historically, XML components would be declared on their own file, linked to the Kotlin backend folder. They would be located by their assigned ID and manipulated from there. The standard way was to use the ‘findViewById’ call, which meant that Android understood them as views with certain qualities. By the method call above, you are just fetching the qualities of that view for whatever it is you need them for. But finding views by their ID is now considered outdated. Two new practices have overtaken it. A. View-BindingB. Jetpack compose. Both still declare views by their ID; the only difference is that the class making the call does not have to constantly find them whenever it’s loaded.

    • The same rules as above apply. You will fit here if you are visually inclined with an added incline in user experience design. However, unlike in Figma, with the absence of the backend, Android frontend developers need only a slight knowledge of how the backend works. This is to prepare a workable solution for Backend developers in the case below.

 

 

 

Step 3.

  • The Backend. This is where the bulk of the work is done. This is where all the mysterious twists and turns occur that allow your app to function as it does. In some circles[according to some people], the entirety of steps 1 to 3 would constitute the frontend, and in some, the fullstack(frontend and backend). Usually, step three would include step four, but I will separate the two for this presentation. Just know that the vast majority of developers do work on the third step. 

    • Below are non-negotiable skills you must have to be competent in this space.

      • Kotlin

      • OOP(Object Oriented Programming)

      • Android lifecycle.

      • SOLID-PRINCIPLES.

      • MVVM Architecture.

      • State Management.

Here are resources that follow each skill set.

 

 

Step 4.

  • The final step is serverside work or stored procedures. This SQL code can be manipulated repeatedly (created, read, updated and deleted). This has two components: 1. The local database, which is entirely held within the Android ecosystem. The Room database is the best tool for this, built on the SQL paradigm and designed to simplify data manipulation. 2. Remote database. As its namesake, this one is stored on a server or multiple servers somewhere and can be manipulated using APIs that come standard with the solution provider you’re using. Or, if you have your own internal server, you would use DBeaver | PostgresSql, etc., for the data administration. Dbeaver is one of many. It’s one that I am mildly familiar with.

 

And as tradition dictates, the resource.

 

 

And there you have it. Pick yours and start there. However, be mindful that all are co-dependent on each other. They’re all bolts in a wheel. But it will serve you well to play with them and see where your interest lies.

 

Eventually, you will become proficient in all of them, as am I. And Android will start feeling much more rewarding(mainly through positive feedback). Now that I think back, Android is not too complicated at all.

 

An Android developer needs patience.
An Android developer needs patience.

 

 

You’re already an Android developer, just know that…

 

But attitude goes a long way. And I assure you that yours will stink now and then as you learn about this paradigm and yourself.

 

 

But you’re already there. Start with what you’re drawn to, anywhere from steps one to four, then fail forward.

 

If you feel stuck, write to me; hopefully, I’ll help you debug your issue. Please don’t count on it, though!

Although not as extensive and slightly outdated as this one, you may still be interested in: Learning Android, free material.

 

Happy coding.