A very brief description of your profile. Your previous work experience/research experience.
I went to school in Chennai (PSBB and PS Senior). NITT ECE 2009-13. Internship at Directi, converted PPO. Worked at Directi from 2013 until mid-2017 in Gurgaon and Bangalore. Worked for Facebook in London since then.
When do you think is the right time to make a switch to a different career option? When did you decide to make a switch from electronics and communication to computer science?
I decided to switch sometime in the 2nd semester when I realized I enjoyed it a lot more than electronics. I think this was because I was pretty good at CS compared to most people around me since I had spent a lot of time on it at school. I was also bad at electronics compared to my classmates.
Is working in electronics sector for a few years and then switching to software firms a feasible option? What about the other way around, i.e. working in a software firm and then switching to electronics sector?
I haven’t ever encountered someone who has made that switch either way without doing a Masters. I think this is because hiring managers are reluctant to take chances on people – why hire an electronics engineer from Nvidia when you can get a CS grad from say Amazon? The feeling I get is that the career prospects for electronics engineers isn’t great in India – because many of the good people from my class left to the US to complete their Masters and continue working there. It would be good to reach out to someone who actually works in electronics though, I can’t speak with any authority about it.
How useful are online courses from a recruiters point of view?
I’ve done one course on cryptography and another on machine learning. I don’t know if it matters to recruiters that much because I have a feeling people don’t spend too long looking at resumes. At least in software interviews, people seem much more interested in the impact you’ve had at your job in the last 6-18 months and whether you can answer their questions. Nevertheless, I think courses are very important. They’re possibly the best way to invest in your own learning.
Is the syllabus (of CSE in particular) in colleges in India up-to-date to meet the current requirements of the industry? What can students do to bridge the gap?
I have no idea what the syllabus looks like right now so I don’t want to criticise something without knowing about it well. I will say this – there are 2 high impact activities that CS students can do. The first I assume everyone already does – solving problems on interviewbit/topcoder. This will help you clear interviews. The second, which I don’t think very many people do is to contribute to open source projects. Read their code, open issues, contribute code, get your code reviewed, listen to the feedback, improve the software you write. People don’t do this because the payoff isn’t immediate and they have more urgent (but not important) things to do.
What skills should one develop to follow the career path you’ve chosen? Do include courses, internships etc.
Contribute to open source (to become a better software engineer), solve online problems (to become better at clearing interviews) and keep reading, keep learning. Learn languages and frameworks and build things just for the sake of building things.
What must one do after getting admitted into college? I.e How do you feel time must be utilized post-admission?
There is one thing – for the people who are from TN (like me) you’ll go home every weekend. No matter what I say here, you’ll go home anyway. There’s nothing I can do to convince you to do otherwise. But I will say that sometime in your third year you might figure out that the people who stay in college during the weekends get a lot more out of college. Not saying that just sitting in Thuvakudi automatically makes you amazing, rather it provides an interesting opportunity. You have time, smart people around you and reasonable resources to do anything you want. If you want to do something awesome, you can.
Read books that aren’t prescribed in your curriculum. Doesn’t matter what it is, could be technical or fiction or non-fiction. Whatever it is, keep reading. Books are your best way to grow as a person. Reading articles online might seem like it’s a good way to spend your time but its junk food compared to what you’ll find in books. It doesn’t matter if you’ve never read a book for fun before. It’s alright, start now. It costs (almost) nothing to try.
What are some things about your career path you wish you knew in college, in retrospect?
It took me a long time to figure out the difference between a junior engineer and a senior engineer. They probably take about the same time to do a task but the senior engineer asks the question – “does this need to be done at all?”
A mistake I made when I joined work was thinking that my job was to complete all the tasks on my plate and that’s it. But to become a senior engineer, its important to set your own direction. Decide if what’s on top of your task queue is the most impactful thing you could be doing and if it isn’t, find that thing and do that instead. Of course, this involves people skills as much as technical skills. You also need to convince your peers and superiors that your new direction is the best thing for the team.
How can one be sure that a certain career path is right for them? What is a good way to make that decision?
If you’re happy getting to work on Mondays and you make enough money to keep you happy, you’ve chosen the right field. I’m lucky that I found what I was looking for, but many people don’t. For people unhappy with their field after a few years, the most common approach is an MBA. If you asked other people this question you might get platitudes about passion, but it really just boils down to what I said.