Getting started with Android Development (for Beginners only)
Tags: Android App Development, Getting Started, Beginners Guide

Why bother to write an article?

Why did I write an article for something one will figure out in a day or two?

Well, firstly, because it saves my time answering the same question which pops in my inbox every once a while and secondly because it saves some of you from the big complex words on the internet about “getting started” and the self-doubt about starting with app dev in the first place!

Once you go through this, you’ll at least know why it is so overwhelming for beginners.

I will talk about pursuing a career as an android developer, what is actually happening in the industry and how to get a hint if this is the niche you wish to excel at, in case you’re exploring stuff right now.

The world of app development

Most simply, I’d describe app development as ever-changing, not difficult and fun!

Apps require regular maintenance, feature updates, new feature addition, security updates and much more. There is always something going on out there. Some apps are updated a LOT, while some are updated less often. The latest version of Instagram is 182.0.0.2.124 as of now, while Whatsapp is 2.21.7.10, both apps by the same company, Facebook.

The average salary of an android developer is $80k-130k, depending on experience. These are average numbers; it all depends on you at the end of the day.

Kotlin, Machine Learning, Google Assistant, Internet of Things (IoT), MotionLayout, Instant Apps, Multiplatform Development (Flutter), Android Jetpack, Navigation Component are some terms you may come across once you get into the industry. There are some good newsletters you can sign up to stay updated on.

By learning Android development, you open yourself up to many career opportunities such as freelancing, becoming an indie developer, or working for high profile companies like Google, Amazon, and Facebook. Although, there is always something new going on in the world of android development. Once you successfully build an app, it NEEDS maintenance. The frequency of maintenance depends on how complex the app is or how many libraries you used in the app got deprecated (in simple words, the portions of your app which won’t work anymore need to be rebuilt).

If you think this excites you, the world of android development is an oyster!

Expectations from a beginner/Pre-requisites

Basic programming (variables, functions, scope, libraries etc.) Familiarity with Object-oriented programming paradigm A laptop/PC in which Android studio can smoothly run Willingness to learn new things every day (I am repeating it on purpose)

Look upon the internet to learn if you think you know less of any of the above list. This is the bare and minimum one needs to know. (There are few things you’ll need to know like Git, terminal commands, build, manifest etc.)

What is the bare minimum to launch an app?

This is a subjective question. Android apps cannot be launched on IOS devices, so you’ll need to work in Swift or Objective-C programming language to develop ios apps. (Cross-platform development, which means developing apps to launch in both android and ios devices, also exists but let us not get into that for now). Depending upon the complexity of the app, the number of libraries will increase. This is where the libraries like Retrofit, JQuery, Glide, Picasso, Butterknife etc. or architectures like MVVM will come into the picture.

As a beginner, try to keep it simple and gradually learn the concepts as you begin learning in android development tutorials. But, whichever app you built, you need to publish it in the Google play store. I recommend publishing all your apps since you can directly leave a link to it in your resume, and also, you’ll learn how to publish app on the play store as well!

Where can you find resources?

I will leave the exploration part to the reader.

You can search in Reddit, GitHub, StackOverflow, SuperUser, Medium (which contains some awesome roadmaps for Android development), Twitter (there are some good development related channels you can follow as well as some android developers who tweet daily) or any good blog. Youtube has some good tutorials which you can watch and learn from. https://developer.android.com/ is the official documentation website by Google.