My Gate CS 2021 Experience

7 minute read

Published:

What is “GATE Computer Science”?

It is an annual exam, based around the subjects you would typically study during your bachelor’s degree in computer science. The scores and ranks achieved in this exam qualifies you for admissions to top colleges in India. The “top” colleges (ranked in this order) that recruit based on this exam, for their M.Tech. / M.S. / PhD courses are IISc, IITs, IIITs/NITs, and other CFTIs (Centrally Funded Technical Institutes).

The motivation to get into these colleges and get the best possible score from this exam varies, for some it’s better placement opportunities (Top recruiting companies coming directly to hire in campus), for others it may be research exposure, good alumni network, or just padding their resumes.

Unless the syllabus changes significantly, here are some blogs to give you a more in-depth idea about the exam, preparation guide etc. from my friend at IISc, Gokulnath. This blog will talk about my personal motivation, experience, and expectation/reality checks after clearing the exam.

My journey leading upto the decision of GATE CS

TLDR; CS is not just software dev, there’s a lot more to it that you wouldn’t learn by just being in the industry. If you care about learning, go to a good university and get guidance from good professors. That was my motivation.

When I joined my Bachelors’, I didn’t have a lot of ideas about what engineering is about. Thankfully an education in a not-so-good college didn’t really enlighten me, unless engineering is about studying a night before, clearing exams, and doing whatever the heck you want with the remaining 98% of your time.

Regardless, I knew I liked Physics and Maths, and I’ve always spent hours tinkering with my Computer, hardware or software, mostly to squeeze out performance for video games. So I took up Electronics engineering (ECE), hoping I’d learn how to build this computer thing from scratch (Unfathomably stupid). One semester In, I was memorising equations from Analogue electronics and regretting ever choosing this discipline. To be honest, there’s so much free time if you join a university that doesn’t take education seriously, it didn’t matter what I “studied” as my major, I could do whatever I want.

So I started diving into CS fundamentals, and realised how wrong I was in not taking CS instead. I learnt software development from online tutorials, and talked with a lot of companies for any intern opportunities. Finally, a startup was willing to let me develop their website, and agreed to pay me ~$25 a month for it.

$25 a month proved enough for 4 coffees a week from my university eateries, so I can’t complain.

And that was my beginning in the world of software development. Eventually, another employee from that startup liked my work ethic, and wanted to co-found another startup with me, centred around edtech (Tech for Education). We worked on it for 4-5 months, until finally I reached a breaking point. I was working 16 hour days and unable to sleep due to the crumbling pressure of being the sole technical developer of the platform, plus I wasn’t learning things that were interesting to me. An 18 year old kid with no formal software dev training can only do so much with just the internet and no real mentor. I decided to step back and seek out opportunities in bigger startups where I could have an actual mentor.

Somewhere during this time I also spent ~6 months learning ML/AI and RL techniques from first principles. It was fun, but back in 2018, this technology was more theoretical and restrictive in its application than post 2022. So I dropped it to secure skills that could guarantee I remain employable. (Chicken move)

That journey led me to Atlan and Innovaccer subsequently. Amazing companies with smart co-workers, and environments where I could learn and grow. I don’t want to dive into much details here, but I worked on everything ranging from Data Science, Analytics, Databases, Backend Development, Frontend development, and pretty much anything you could think related to software development. This was a good exposure for me to understand what the industry work as a software developer is about, and enough for me to decide I’d rather be a farmer than do this for the rest of my life.

Kinda funny in hindsight, since we all want to be farmers now in the era of AI.

I started hating software development, and how I had to do this since it’s one of the only ways in India to earn good money. I didn’t want this anymore. I took a step back and looked into fundamental CS. I knew CS couldn’t all be about developing software. And those books introduced me to what I’d been looking for. Systems, hardware, low level programming. I bought 10+ books, like the classic “Introduction to Algorithms” from Cormen, 0Step for OS, Hennessy for Architecture, determined to learn from the best possible sources. I spent couple of months just reading these, and seeing if a career in systems engineering exists in India.

Debugging your Kernel Panick bricked laptop’s arch installation is a great way to introduce yourself to deeper OS internals.

In my class of 200+ Bachelor students I was perhaps the only one who wanted to take a risk and not go the classic software dev route. This was relatively unexplored territory, and doing something like this in India, where we want to earn as much money and as fast as possible is the primary motivation, is taking a risk. Survivalist mentality has prevailed for decades here, and will likely do so for the lower income groups. Obviously, I’m not taking a stab at other students. A lot of them went on to do great in their careers, whether it was software, management, or classic electronics.

Semiconductor companies offer a variety of roles in systems engineering, and I wanted to eventually work at one of them. But before that, I still felt like getting a formal education. The best institute in India to do so would be IISc (Fight me). And the way to get there would be cracking the GATE CSE exam. I wasn’t worried about getting a job just yet. I knew that I lacked the skills and education, and wouldn’t feel comfortable directly applying to companies without being fully confident. I hadn’t explored more research work either.

I come from a families of PhDs (Grandpa, Grandma, Dad, Brother were all PhDs), so having some research experience might make me a brown sheep at the very least. Any lighter tint of a black sheep is fine I guess.

To conclude, IISc was the only college I was targeting when I started prepping for the GATE CS exam, and I wouldn’t go to any other college.

PS: I’ve omitted an internship experience from a company here. It was the most harrowing and stressful 2 months of my life, and I hate the company, my “mentor” and the CTO of that company with a passion. But I’m thankful to them, they made me realise how much I never want to work in a toxic work environment again, and to be vocal about horrible working conditions.