The journey from studying commerce to working at ShareChat as a Software Engineer!
Table of contents
- Chapter 0, a rookie programmer (NOOB)!!
- Chapter 1, wannabe ethical hacker!!
- Chapter 2, commerce (seriously??)
- Chapter 3, life isn’t all beer and skittles!
- Chapter 4, a risk worth taking!!
- Chapter 5, BCA!
- Chapter 6, entry to the world of Android development!!
- Chapter 7, my first ever live Android app!!
- Chapter 8, developing to solve problems of people around you
- Chapter 9, finally first job!!
- Chapter 10, ShareChat!!!!
I am back with a new article after a long time! But this time the article is not about a new Android library, fundamentals or anything technical at all.
Today in this article I will talk about my journey from opting for commerce in higher secondary to working at ShareChat as a software engineer. If you are interested to know about my journey then without further ado, let’s get started:- )
Chapter 0, a rookie programmer (NOOB)!!
I was in class 8th when I started programming. And no, it was not parents’ pressure, any relative/neighbour with a well-paying software engineering job, newspaper clickbait of an IITian getting placed at Google etc that triggered me to start coding Java (my first programming language!) was a part of my school curriculum (ICSE students can relate) and I started coding so that I could pass in this subject xD
Initially, I did not like coding at all I hated it, I used to think why the heck am I writing these weird symbols and countless semicolons only to perform simple mathematical calculations? But after several failed attempts and thorough practice and thanks to my awesome computer teacher at that time (thanks if you are reading this article :-)). I had finally started to feel comfortable coding and was becoming better and better day by day. To be precise my subject was Object Oriented Programming with Java, and that is how my programming journey started. But till that time, I still had no clue that all the apps, websites, software we use or games we play, are a result of these programming languages.
Chapter 1, wannabe ethical hacker!!
Yes, you read that right, just like many other Indian students in tech, I wanted to be a white hat hacker aka an ethical hacker. I started reading more and more about how I can become a white hat hacker. There are very misleading titles and courses on the internet telling you to do a course or follow a playlist to peruse hacking as a career. I studied about few things about offensive security like Phishing, MITM attacks, RCE, SQL Injection etc, I finally connected with some friends on Facebook to know more about this field and take it more seriously, and by the time, I had completed my 10th class with good enough marks. And it was the time I had to choose between different streams(medical/non-med/commerce) that was supposed to decide my career/future (but did that decide my career?)
Chapter 2, commerce (seriously??)
Many of you might be wondering after reading the first two paragraphs, that if I had an interest in tech/cyber security, then why the hell did I choose commerce after the 10th class? For my non-Indian readers, if you do not choose non-med as your field in 11th and 12th, you cannot pursue an engineering degree in India after that. Honestly, the answer is simple, I was not interested in or ready to study advanced mathematics, chemistry or even physics and on top of that dealt with the pressure of cracking entrance exams, which was going to consume most of my time leaving me with no time to study anything related to my interest (cyber security/tech). So, I decided to choose another route, opt for commerce with subjects like business studies, economics, accounts etc and spend my spare time in programming/hacking. After that do BCA and find a job (yes that is how simple I thought getting a job after BCA was at that time)!
Anyways I thought it was better than dealing with the pressure of non-medical and entrance exams as I could self-study in peace. So let’s find out if things worked out as per my plan or not.
Chapter 3, life isn’t all beer and skittles!
Reiterating what I said earlier, I initially thought 2 years is a big time, if I work hard daily, I would do very well by the time I complete my 12th, but that was not the case. I did a very big mistake while in school in my approach to studying programming and hacking. I was stuck in a tutorial hell, tried 10 different things one by one and on top of that gave up easily. I tried Python (Django, Flask, Web Scraping), Java, ASP.net (C#), Android development, HTML + CSS and most importantly cyber security(I was preparing for a certification called OSCP, which occupied most of my time) all on my own without any proper guidance during these 2 years. But unfortunately, I gave up on all of them. To summarise, by the time I completed my 12th class, ideally, I should have had a good grasp of domain-specific knowledge of cyber security or at least any particular tech/framework etc as per my plans, but I failed miserably in executing my plan. Basically, after the 12th class, I was a commerce graduate with only basic knowledge of Java and OOPS, and on top of that no option to pursue engineering.
Chapter 4, a risk worth taking!!
Now after 12th, I had two choices, either do a Bachelor’s in Business Administration followed by an MBA or do Bachelor’s in Computer Applications and start from scratch again, starting from scratch here meant unlearning the things I did in 11th and 12th and try a new approach towards studying***.*** Honestly speaking and as most of you may be aware, BBA+MBA has better scope in India as compared to BCA+MCA, the main reason being, after MCA, you have to compete with the already in abundance and far more skilled B.Tech students to get a good job, and not to forget the extra one year you had to spend as compared to BBA+MBA (BCA and MCA both are of 3 years each). My parents and my brain suggested that I should pursue BBA and keep my interest in coding/cyber security only limited to a hobby rather than a career, and also I failed once in the same, but my heart said that I should give it one more shot at tech and do BCA. After all in the worst case what would have happened? I had to spend one extra year (MCA), and then after some struggle, get a job.
Chapter 5, BCA!
So finally I followed my heart and opted for BCA instead of doing an MCA, believe me, I had never thought that I would be trying for a job right after BCA, as I was always told by everyone that no one gets a good job after BCA and that too as a software engineer. I knew that still even though I had opted for a technical degree that contains all programming subjects, I still shouldn't have much expectations or dependency on my college curriculum for studying, as it was pretty outdated, and I realized this after coming to college that in BCA, only ~2% of the students were genuinely interested in programming / cyber security, and I should not wait for anyone and prepare a plan and study well. I decided to follow the same plan of self-studying which I had followed in the 11th and 12th classes, but with these improvements from my previous mistakes -:
Focus on one thing, do not focus on 10 different things.
Be Consistent and Persistent, do not give up.
So I started my BCA journey with this mindset. Now it was time to execute it properly.
Chapter 6, entry to the world of Android development!!
I had mentioned earlier that I had an interest in cyber security and studied a lot for it, but after joining BCA, I realised that I should follow a path of building/developing web or mobile applications first instead of hacking the same, to understand how things actually work behind the scenes and maybe then try hacking? So this is when and how I started with Android development from Udacity. But again there is a difference between saying not a give up at any cost and not giving up, it requires a change in mindset, actions and self-esteem. Even this time I found Android development very difficult and almost gave up, but again I tried and tried and ultimately things started to make much more sense and I started to develop basic calculator-type android apps.
Chapter 7, my first ever live Android app!!
I can say that this is one of the most interesting parts of my journey toward becoming a software engineer. There was a fest named Phoenix which took place every year in our college. Not to go into much detail but it was a fest where students from different colleges came to our college to participate in various technical and non-technical events. Usually, only a website was designed for the fest, few of my seniors came to the first-year class and asked if anyone knows any kind of development and can help with the same. I out of curiosity and interest but with little confidence said that I know Android development but to a very beginner level and was not sure if I could develop a full-fledged app all alone. But thanks to my seniors, they showed confidence in me and said you can try if that works out even if it does not, no issues. So I had nothing to lose, but the problem was that I had never developed a working Android app before and on top of that no one in the college was there was familiar with Android development and I had to do the development all alone.
I worked very hard in college to develop this app. I remember I used to go to college at 8 AM and return at 5 PM skipping most of my lectures. After tons of obstacles and new learnings, I was finally able to develop a working app as per my teachers' and seniors' expectations on time, and that was the moment I realised that my hard work finally paid off and everyone including my teachers and seniors appreciated me. It boosted my self-esteem a lot and I realised I should develop something for people around me to actually learn and grow. I have never looked back since then. By the way here is my first ever working Android app.
GitHub - hiteshchopra11/Phoenix
*Phoenix Android Application is a mobile app which lets students from different colleges to register for the fest. Uses…*github.com
Chapter 8, developing to solve problems of people around you
Now that I was doing well and I had understood what an ideal project was, I decided to identify a problem which I and people around me were facing and could be solved through tech. One day, I was searching for the syllabus for my 3rd semester in college and I realised that going through my university’s website and finding the syllabus was a big pain. I thought why not develop an application which allows you to see, download and view syllabus from a single app, without any need for searching for your syllabus in the file manager every time and on top of that requiring a third-party PDF application to view this syllabus so that’s I how I developed an app PU syllabus, PU(Panjab University) is the name of the university my college was affiliated to. Here is the PU syllabus app on the play store which has around 1k+ installs to date. It was a full-fledged app and everything from UI designing to deciding what to add in the app and where I did it all by myself, it was indeed a very great learning experience. Here is the link to the PU Syllabus app
Chapter 9, finally first job!!
As I had mentioned earlier, I had never planned to try getting a job after BCA as I had that perception in my mind that it is not possible to get a good job especially as good as a software engineer right after BCA and I had to do a masters to get there. And even if I get a job, it would be limited to a few companies, I would never be considered to sit for interviews of very good companies in future, considering the reputation of BCA and competition with Btech and MCA peers. My brain said to do MCA but by the time I had completed my 5th semester, I was confident about my development skills, particularly Android app development as I had 2 live apps on Play Store. So my heart said to try for a job at least once before considering doing a Master’s. Again, I listened to my heart and started looking out for an entry-level internship/job as a software engineer. After getting rejected several times, learning a new programming language Kotlin, and applying to 100s of companies, I finally received an internship and PPO offer from Mutual Mobile. It was one of the best days of my life, the internship and PPO were far beyond my expectations. I am grateful to all my peers at Mutual Mobile for a wonderful experience, great learnings and most importantly giving a chance to a non-engineering graduate with no work experience. Only those who have experienced know the struggle and challenges of getting the first job!!
Chapter 10, ShareChat!!!!
After completing almost a year at Mutual Mobile, I thought that I should try applying at companies which have developed apps used by millions of users. I had shortlisted a few product-based companies and startups. ShareChat was one of them, I had never expected my resume would be considered for ShareChat as I had seen many IITians, NITians and alumni from the best engineering colleges working in ShareChat and forget my college tier, I did not even have an engineering degree to compete with other applicants, but still, I applied with the hope that I may get a call. And finally, I got a call from the recruiter!! I could not believe it at first, but this was true, now my target was to give my best in the interview so that I could clear the interview and work for one of the biggest startups (unicorn) in India!! I prepared thoroughly and I was confident about the work I had done in my current company. There were 3 interviews in total and all went very well I finally got an offer from ShareChat within a week of interviewing!! I had only heard from some people that it is only your skills that matter and if you are skilled enough, no college or degree can stop you, but I finally experienced it myself and got a chance to work with one of the best startups in the country.
It has been a year since I joined ShareChat at the time of writing this article and the experience couldn’t have been better. Here I am a part of the Moj LiveStream android team responsible for providing a seamless live-streaming experience to millions of Moj creators and viewers.
The greatest reward in achieving success is not in the outcome but in the journey of getting there. Here is a pic of me receiving an award for being a part of the organising committee of Phoenix, the event for which I made my first ever Android app that shaped my career later :)