Android Technology

Software (Android) Developer Acumen

Being in Software Development workforce for more than 10 years, and in Android Development for 4 years, I observed that different developers does have different attributes. Some are stronger than the others in some aspect.

Technology

Developer is a profession of learning and progressing. Stagnation would be fatal. Technology evolution getting shorter and shorter, hence the at least one of following attributes are essential to ensure one to continue to be in this profession.

Explorer

Google I/O developer conference happens every year. As Android developer, if you get excited and always wanted to be the first to touch on what’s announce (or for some, even before it is announced), you definitely have this attribute. As of today, you perhaps has gone beyond Android development, and have touch on some AI related stuff (e.g. tensorflow) and/or AR/VR in someway. You don’t mind using Android Studio canary version while it is still being developed.

Philosopher

You know MVVM, MVC and MVP and more, and able to tell the differences between them clearly and precisely. Always think of the future of what-if e.g. what if the data-source is no longer using JSON. Abstracting some logic away excites you, though it might not needed now. You have some strong believe in some approach (e.g. Functional is must better then OOP or vice versa) and evolve from case to case of usage. You have your opinion on the latest Architecture Component proposed by Google.

Academic

You like something that looks really elegant. e.g. prefer using RxJava as it looks much more elegant than normal imperative approach. You like Functional Programming as not just because it simplifies and make things cleaner, but also it is so cool. You would want to understand very single bit of it, and perhaps have dive into Android framework source code, to know how things are done.

 

DevOps

Build time, automation, reduce manual effort is what you really cares. You are a master of a few script languages, and Groovy is something under your sleeve. Docker is no stranger to you, and you probably have a good set of images that have all the needed libraries set properly. You hate brittle tests, and sometimes question the need of running extensive test throughout. Peer Review process and GitFlow is well controlled in the process so mistake of merging is not possible. iOS and Android development should be as consistent as possible, so we could share the process.