Table of contents
- Year 2019 - The Year of Initiation 🏃♂️
- Year 2020 - I became an android wannabe 🤖
- Year 2021 - Rebirth 🐣
- Year 2022 - Keep the dice rolling 🎲
- Thanks 🤍
This article covers my journey from getting my first job in Tech to building a stronger portfolio. The purpose of this article is to share my journey with students who need guidance and assistance towards where to move forward in life and just finished school.
Year 2019 - The Year of Initiation 🏃♂️
In Feb 2019 when my school exam just ended I was about to start my study pharmacy for which I have no passion and doing it because my parents told me to do so, of course, because "Sharma Ji ka ladka bhi vhi kr rha tha"(A popular saying in India, Translate it if you wanna know 🌚) and in my neighborhood one of my senior friends is already studying computer science and he knows that I've been interested to do something in the computer science field and somehow he convinced my parents to help me to take admission in computer science (BCA was the only option in my town, also this was a big decision how things will like for next N Years).
Introduction to Java and Android Development 🤓
Once, I decided to do BCA, after that I started exploring what should I do during my BCA so that after that I have a job in tech.
Where I'm living is a rural town and since I have no idea where to start and no sibling to guide me. I started to find someone who can teach me anything related to coding (Literally I was that desperate). So, I found someone who was my first Sensei I paid some fees to work with him and he was a freelance engineer, and he mainly works in Laravel and PHP, and at that time they recently got a new contract to work on which was a Milk Application and we had to make the entire application.
He taught me Java, it was an in-person thingy at that time, not a remote one (Yes, those things exist 😅) and I used to go to that place from 11 AM to 6 PM, and then after coming back to come I used to watch the same topic from different instructors on Youtube, Udemy and Udacity to understand it better. The reason why I get a chance to learn JAVA and Android Development is that he had a project on that and I was excited as well because it's a legit production project.
He was a primarily backend engineer, he doesn't know much about android but he taught me the basics of programming and android development. I delivered the project around October, worked on it for solid 5-6 months and he built the backend project- First Production Project. I learned how to write android applications and designed the UI/UX as well in Figma. Since it was my first ever project (production as well) and I don't have much knowledge of architecture, so we put the UI, business logic, and database interaction in one activity 🤡 (It was a terrible code).
Keep learning and look for interesting projects 🔎
After that, I leave that office to learn by myself and I learned about Kotlin since it was newly released for android officially 2 years back and different architectures like MVVM, MVI, and MVP during this time I've cold-emailed one Youtuber to work for him who replied to me back after 3 months out of blue, so I used to work for him during the night time as he mostly works at night, mostly he told me to do the revamping of android applications and sell it to its customers, where did he get the source code - Github, Codecanyon. I still remember I got my first 15 USD 💸 that night for my first work, the task was to add a few permissions in the Android Manifest file of the Android Project to make the feature work properly 😄.
It was a lot of money because I think it this way
1 Momos Plate = 0.50 USD, then I can buy 30 Momos plates 🥟 😂
Funny thing is that I paid 15K INR to work with him for the project we built for which he get paid in Lakhs 😂.
What I learned:
You can't just rely on others to just hand you things if you want something worth getting you'll have to be proactive or everyone would also have it then 🤷♂️.
Year 2020 - I became an android wannabe 🤖
This year my Sensei ping me if I want to work for his brother's company to build an Android Application to buy medicines for the Pharma sector, I said sure why not since I had nothing to do now, so I started my first contract/job work as Android Engineer for 150 USD per month and I signed my first NDA (about which I've never heard what's this thing is),
Journey of Freelancing 🖥
During working there I got to know about Upwork (Freelance Platform) to work for clients across the Globe, So I signed up and learned about
- How to bid
- Write proposals for clients
- How to let clients know that you can get the stuff done
After learning all these things, I got my first job on Upwork in the first week of joining the platform, My first task was to make a web-view Android app which I also learned for the first time while implementing it, and delivered it got my first payment of 100 USD 💵.
I worked there for 3 months at Sensei's brother's company and then tragedy happens. Another company in my town I found and they are ready to offer me 300 USD per month, So I left at my Sensei's brother's company but the same day on my way back home I got a call from a new company (which I was about to join) they said we can't offer you job now because of this entire COVID situation and there main business is to make ERP software (Enterprise resource planning) for schools which are also closing now due to current situation.
So, now I can't go anywhere, and I have no job, but since I have a profile on Upwork, I started to focus on freelancing. So I started working full on the Freelance platform. After a few months, I also made a profile on Fiverr to get more work, I got my first order on Fiverr for 5$
Not listening to myself 🧠
I was progressing, and things are getting better for me in the freelance world as I became a Top Rated Seller on Upwork and Level 1 Seller on Fiverr because of that getting more lucrative projects but in November 2020, I got influenced by Youtube to work at FAANG (Facebook, Amazon, Apple, Netflix, and Google). So I made a very stupid decision to stop all of my freelance projects and started learning Data Structures and Algorithms because of that now I've no income. After a few weeks of doing the Algorithmic questions, I found that this is not my cup of tea I mainly love development. At this point neither I'm not doing freelance work and data structures questions out of procrastination I started spending all discord servers playing games (Valorant) and interacting with people.
What I learned
With every failure we have an opportunity to turn the tables, nothing is out of reach as long as your sit down, be patient, and read from the fundamentals if and only if you have an interest in the same field.
Year 2021 - Rebirth 🐣
Since I was already upset with no interest in doing the data structures and algorithms questions, I was spending my entire time on the discord server I made a few friends online from programming discord servers who were doing web development and they're also active in open source at this point I knew nothing about it. So, for a month and, a half I explored web development from making REST API to designing simple HTML and CSS to creating simple web apps.
On January 21, I made a decision to get into the Google Summer of Code and I thought what the best way to crack it so I picked the organization in which I had no interest but which has the less crowd (I got this advice from one Youtuber), So I picked Jenkins which has plenty of projects and fewer candidates since not every student knows about CI/CD in the initial stages of engineering.
So, I spent 3-4 months before GSoC attending all the meetings and learning about CI/CD, Jenkins, and Jenkins Plugins. I settled on a project named "CloudEvents plugin for Jenkins" and here is the proposal that I made also Project proposal Since I had not much interest but just a hope that if I got selected my future will be brighter which in hindsight I was making the same mistake as I made in late 2020.
Because of lack of interest, I got rejection from GSoC and I also got a rejection from MLH as well, they said my English was not that good enough. so, that was a big bummer for me as well.
Importance of tech communities 👯
During all these times of rejections and failures, I have an amazing online community with whom I interact daily, and many people from Discord, Whatsapp and many of them are my mentors now since almost 99% of my friends from tech are on these platforms, I felt less disheartened, thanks for my supporting and humble friends online, learning about there achievements motivated me a lot, I really can't stress enough the importance of having a circle like-minded people in the same field.
Also just before getting the GSoC result, I participated in an AWS Amplify Sponsored 30 Days long hackathon on Hashnode, where I got a runner-up position and won 500 USD and in all this my friends reviewed my project and gave me feedback which means a lot, and later helped me as well to land an internship.
Just a highlighting the importance of the online tech community
- Many Senior Android developers provided me with a list of topics to prepare.
- Helped with my bugs and issue.
- Helping me with resume reviews
- Which companies to choose and what to seek in them.
- Learning about their different domains as well expanded my knowledge.
The list is just endless.
Getting job offers 🥂
In the meantime, I was also searching for internships, so I was applying for almost 50+ companies every day to get one, I got selected by one of the Best Startups I've worked with so far which was Aspire. I was hired as an Android Engineer Intern and later they converted it into a Full-time role.
Later when I asked my manager why they shortlisted me they said you got a runner-up position (which is something than doing nothing) and it shows some credibility. So, basically, instead of me speaking about my work experience, my proof of work was speaking for itself. So, this way I learned that I need to build credibility where my work speaks for itself. As I know I can build a cool android app with all the best industry standards but they don't know, So we have to show something earn their trust.
I had an amazing experience working there and in between working there I got an offer from another company just before getting a full-time offer time from Aspire which was Resellme and somehow my current company convenience me to stay there (basically they offered same money 🌚 and the because of my bonding with current employees) and later we had a wonderful team-meetup as well in Banglore (for me its was a first time meeting up with my team and I was going out of home alone first time and first flight, a lot of first things 😅).
At Aspire I've Worked on things like fixing crashes from crashlytics, integrating new flows in the app, building the core logic of SMS syncing using Room, and basically worked with Kotlin, Coroutines, Retrofit, and other cool Android Jetpack libraries.
and by October I got reached out by one recruiter on Linkedin, and I gave the interview for fun and to know my self-worth somehow it's cleared and since I was active on the Discord server, I've applied to one job from the r/androidev discord server where one of my team members posted a job in that server (where I'm currently working right now) and I somehow that interview was also cleared, altho they were not hiring for juniors but they liked my work done at Aspire.
What I learned
You can't connect the dots looking forward; you can only connect them looking backward. So you have to trust that the dots will somehow connect in your future.
Year 2022 - Keep the dice rolling 🎲
Now I got my dream job at Adjust as Junior Android SDK Engineer, but since I've been working on a legacy codebase for the first time which is in production for more than 9 years, exploring the codebase and understanding it was a bit of a pain, but once I understood it, it becomes easier and easier.
I've mainly worked with mainly writing unit tests for the entire codebase, re-created the design for the app, and working with different android 13 features. The importance of having experienced team members with great managers takes the experience to next level and also the work culture is a lot different which I've never seen before so far, it's kind of top-notch.
Taking back what's mine 😎
Since last year I was rejected by GSoC, this time I tried to work on things that I like since I was already working in Unit testing, So I thought of doing something in the same domain so I was interested in Robolectric, and somehow I got selected as well, so far I've completed 95% of GSoC for the phase 2 as well and a few weeks back I was also selected for Gradle mentorship program where I get a chance to learn more about the Gradle Build system, to improve my knowledge.
What I learned
There are a lot of ways to get better, a good rule of thumb is to pursue projects and opportunities from which we can learn and we can grow because, In the end, successful outcomes are pretty much luck, so if you want to succeed, its number game like rolling the dice. so keep rolling the dice. You can't control the outcomes of the dice roll, but you can control what dice you use, and the more you work on yourself the more dice become weighted to your advantage, So eventually you will hit a jackpot, and as long you keep rolling the dice, you will achieve success whatever that means for you specifically
If you came this far, then you definitely found this interesting, share in the comments what you learned from this article that would interesting to know, and if you have any doubt feel free to reach out to me via - Github, Linkedin
P.S: I just gave my final semester exams 2 weeks back and I'm not a fan of these flashy titles but that's how people click on articles 😅.