3 ms·
I'm a native Android developer. Native Android is a good choice if you're going deep. For example, our app does things like voice call interfaces, verifying th
by muzani 5y ago
I'm a native Android developer.
Native Android is a good choice if you're going deep. For example, our app does things like voice call interfaces, verifying that photos are legitimate, verifying that a selfie comes from an actual human and not a photo. These are use cases for native development. Most of the use cases here are Android-only or iOS-only and creating plugins for both are a nightmare.
The downside is you have frameworks like Jetpack and MVVM+repository architectures which take years to pick up and plenty more time to maintain and update. You probably won't be able to compete with someone like me who's been in it for 9 years or so.
If you're doing a CRUD-style app, Flutter is your best bet. It's fast, it's easy, and there's enough of a learning curve to be valuable. There's substantial demand for Flutter. It was developed purely for apps, unlike RN which seems to be somewhat hacked together for it.
React Native does not seem to have much advantage over Flutter, but some companies do it because it's easy to hire when everyone uses React for everything. It's not a great career path, but if you know React, it's lower cost.
Do not touch Cordova/Ionic. I did it for a year, and I'm strongly against it.
Salary and work experience wise: Android pays the highest at the top 10% range, I'd say because certain companies need specialist things done, or optimizations for low budget/large markets like India and Indonesia. However, as a median, Android seems to pay lowest out of the three.
Median-wise, React and React Native pay the highest, but Flutter is close. So if you're looking for a job soon, it's probably these two. React (Native) will probably unlock the most job opportunities, so it's great as a skill that pays the bills.
- flrnd 5y agoInteresting point about picking up with Jetpack and MVVM. I agree with Flutter, I developed an app in less than a month with only few hours a day with no prior experience. I added a comment later because I couldn't with the 2000 char limit, but I'll keep doing freelancing jobs and not sure if I'll use this with clients. For the moment I'm developing tools for myself both web and mobile apps whilst start freelancing full time again (with some hope, this september). So, while it's interesting doubt I will join the job market anytime soon. But thanks for that info because who knows?
- muzani 5y agoBy job market, I mean freelancing too. In some contracts you'll be building a Most Viable Product from scratch. Flutter is better at this, don't need to real with the mess that is adapters/recyclerview/viewholders. A lot of the projects at this stage don't have high budgets though, and often they want to hire one dev instead of two. In more senior contracts, you'll be rewriting an app from scratch or redoing the architecture. I did work with a freelancer for half a year, the Jetpack experience and ability to just jump into the code was essential.
- theflyinghorse 5y agoif Flutter production ready at this point?
- muzani 5y agoYes, it's been used for transferring money. I hear the test suites and architectures are just as solid as Android's but haven't gone that far myself.