“This is an important stage of your life, this is where you decide what you will do for the rest of your life” – Mostly everyone around me said this after my HSC OR 12th board exams. One of those milestone years where you are at crossroads of life apparently.You ponder over it , sleepless night, list down your dreams and ambitions etc and then finalize about something. Phew !!!

The question is ; really does it matter so much, are we really framing our life at that point?

I have known a lot of friends who may have studied something but what they are doing now has got nothing to do with it.So we really need to relax and we will know are true calling eventually.

Speaking of which, we have with Abhishek Raj with us – He is a graduate from L.N.C.T Bhopal – He graduated in in electronics and instrumentation however he changed paths to be a freelance Android developer. Go figure.


The Leap from Electronics to App development :

Being even from a non-cs background(I did B.E. in Electronics & Instrumentation), it was not hard for me to get interested in computer- coding etc.
I was always learning about the latest technologies and tools used worldwide. This helped me focus and So I pushed myself and started learning to code on my own through some online videos .I must say, it was great to be ready for this when the concept of MOOCs (Massive Open Online Courses) was just launched.
Knowing how to code and using those skills to create things has a big difference. We all learn how to make the arithmetic calculation logic work through coding but when it comes to creating a real calculator app, it’s a real big pain point to do so, because connecting the dots is hard when you don’t know which tool and IDEs to go for. And the lack of good one-to-one support like a mentor plays a big role there.
Fortunately, I choose to go with android as this was something which always excited me, especially because of it’s wide presence and use in our day-to-day life and AndroidStudio was a boon for me there as there are lots and lots of available resources to help you out on issues faced.
So now it’s been almost 2 years with this and it’s getting better with time.
Now that I get some projects from local clients, it’s sufficient enough to keep me with this IDE cum a great friend. So all in all, I’d say the freelance developer journey is more of a learning experience for me rather than making money because you’re making money and making progress only if you’re learning the latest offerings of Android and support tools. If you stop this process, your business will stop as technologies will become useless as soon as a new one is announced, which happens really fast.
As a developer, my biggest pain is the designing. Naturally, that’s not my area and so when new projects come, it almost always requires some fresh UI idea. So even if I’ve learned something from the earlier work, the same thing can’t be applied to every project as their need varies a lot. Yes, it’s though true that after doing a handful of projects you have already developed some instinct as to which type of feel what particular type of app needs.
It would be great support if the client is already clear about what their exact requirement is, which generally don’t happen. Almost every time, during the development phase, their demand will change and so it’s a bit hard to make the adjustments given the time constraint.
                     (A hundred developers around the country cried after that statement was made – authors note )
One more thing, I personally face is dealing with the backend(I mean the databases and APIs, of course). Creating a product for a couple of thousands of user is fine but if the clients expect from you that you make a scalable ready app from the beginning it’s hard to do so, because of the lack of resources and the limited budget, specially of local markets
 What should every app developer know about android?
Generally after a year of work, you understand the basic working, enough to put you over the tag of junior android developer but from thereafter the real journey begins. The performance and battery(yes, it’s really a big focus of android framework after the latest Oreo release) optimization is what one needs to have a strong hold on.
So if the first year of learning is about lifecycles, adapter and layouts then the advanced development is about saving network resources, batteries and libraries like RxJava and Dagger2.
The complexity on those things is big but so is the reward. You can almost always satisfy the clients need if you have a real working experience with these things as they’re a big support to large, scalable and rewarding works which can keep away the cluttered code style away and can thus be ready to be worked upon by hundreds of developers at the same time.
 What are the issues you face while testing your apps?
Generally getting the error stack trace and testing the workability of apps across devices is an easier part as there are already a number of tools and services available for that part.
I am interested in trying out the appachhi platform because the tracking/finding of memory issues and network handling is something offered looks a bonus to me. And of course the pre-release testing feature sounds quite interesting as well as it’ll certainly reduce the overhead of going through a number of checklists which sometimes is a bit of mind-boggling.