Please state your current major and explain the area of research you are currently involved in. Do state your past research if any.
I did my Masters in Computer Engineering where I majorly worked on Operating Systems, Networks and Internet of Things. I did take up a research project on synchronized video streaming and indoor localization as I had already worked on the field during my short stint as an intern at Samsung in my third year and I wanted to continue on it. Other than that, I wasn’t interested in pursuing research. It’s the Silicon Valley that looked more attractive to me.
What should students know before taking up research? How should they pursue their career in research?
I would recommend pursuing research on a topic or field one is already familiar with to a certain extent. One should not pursue a project just to fill up a bullet point in your resume. One should also know that a research project could possibly end up nowhere and requires a lot of patience. You will be frustrated at times, but then a PhD. scholar or your professor should be able to guide your way through.
Why are research internships important? How do students hone their skills through these internships? Can you describe your experience in getting an internship?
I cannot answer for research internships. I can tell why industry internships are important though. Setting the obvious reasons apart, for it is a resume builder along with the monetary gains, the internship would also be your first insight into how your future at the company would look like. You get to understand how the company works, the role your team plays, the organizational hierarchy, escalation paths, the attitude you need to have, how your work could affect a million users around the globe and so on. Writing production code is different from the ones you cook up for assignments and projects. There are a lot of factors that need to be taken into consideration before making a decision and an internship is effectively a crash course that pays for you to learn.
During an internship, learn the platform and technologies your team is working on, observe how people in your team code (right down to variable naming conventions- underscores or Camel Cases). At the same time, remember not to get overexcited in an effort to impress everyone and push faulty code that fails to handle boundary conditions.
My internship search experience is a great example of what not do while applying for an internship. I was overconfident thinking having got one and being in a good university, it should be a cake walk. I started searching pretty late and took no effort other than simply uploading my resume on the job boards and (auto) filing application forms. I was also adamant in looking out only for roles that were related to Networks and IoT. Reality responded with a tight slap soon enough. With no interview calls and an array of rejections later, I started diversifying my portfolio (made it more Software Engineering-orientated), started asking for referrals from seniors, connected with recruiters on LinkedIn and proactively shared my resume with them requesting them to pass it on to the teams I wanted to work in (also how I got a Tesla offer). Please do not get into this “I-am-too-cool-to-try-early” bubble (Yes, I am talking about Software Engineering) for you would be awakened rudely. On the other hand, you can beat the competition if you are sincere enough and manage your time effectively between studying, interview preparations and enjoying. I advise all my incoming friends the same every other year and interestingly everyone ignores.
What other skills do you think students need to learn before/while pursuing highers in engineering and sciences?
Before pursuing Masters, have clarity on the field you want to specialize in and what you would like to learn. Do some research on the courses that your university offers and the professors who are going to take them. At the end of the day, you can only choose 30 credits worth of courses. You do not want to end up taking a course just to revise what you had already taken during your undergrad. You are better off learning something new. Yes, Machine Learning sounds cool and it is the new buzzword, but do you like Probability and Statistics? Do a considerable amount of research before deciding where to swim. If you are clueless on what to specialize in, like me, start diversifying. Select a few fields you like and start picking out courses related to those. Being the jack of all trades is as good as being master of one. One good thing about universities here is that they let you trial courses for a week or two before locking in your choices. Use this opportunity to resolve your conflicts.
During Masters, there is a high probability that you won’t have any time to hone any special skills apart from doing assignments and giving interviews. I would recommend keeping tab of the current affairs and what is happening around you(Besides you get enough entertainment from it nowadays). If you want to go to the industry, everyone would prefer a candidate who is not just technically sound but also knows enough about the company and how things are changing in the field – especially if you want to be a program/product manager. If you happen to have time, take up a research project. Professors are always on the lookout for a candidate who can develop software to aid their research. If you are someone like me who is not interested in doing research, those are great opportunities to learn.
Where do you think, the research scenario in NIT Trichy needs improvement, and how can it be improved?
The new labs coming up on the campus are great. I hope we have more such labs partnering with corporates or the government to solve real-world problems. Interesting projects attract students to work on them and soon enough that could become a healthy culture in the campus. It would be really encouraging if NITT could offer research for credits all year round – sign up for research under a professor you are interested in, work on a project, demonstrate and get graded. We do work on a project during our final semester but honestly, that is the period where most of us have absolutely zero motivation.
What must one do after getting admitted into college? I.e. How do you feel time must be utilized post-admission?
Brush up all your technical knowledge before coming for Masters. You will be loaded with assignments all the time and would not have much time preparing for interviews. Do not be idle since you would be flooded with work the moment your classes start and the transition isn’t going to be smooth.
What are some things about your career path you wish you knew in college, in retrospect?
In retrospect, there were a few courses I could have avoided. I decided to go all in on Networks and IoT in my first semester at Columbia and ended up taking a couple of redundant courses. It was only later that I pivoted because it wasn’t working out. I could have put all those credits to better use. I also wish I had taken personal projects while studying at NIT Trichy and contributed to open source community. That would have definitely enriched my knowledge, helped me solve problems quicker in my Masters and could have offered me more clarity on what I want to specialize on. But hey, I had a hard disk with 600 GB worth of movies to waste my time for.
What exams do you think are most important to write before applying for higher studies?
GRE, TOEFL are mandatory. GMAT, if you want to pursue management.
How useful is having work experience before applying for higher studies? Is one year time for work experience ample enough?
Having work experience might help you land jobs easily unless you are switching fields/branches. As to whether it would help in the academics, I am not the right person to answer. My guess is that it will help with you being more professional and disciplined after a year or two of work experience. With that being said, most of the time, someone with work experience starts at the same level as someone without any experience. Also, my wise mom once said that it is difficult to get back the motivation to learn once you start seeing paychecks. It is gradually becoming difficult to survive in the millennial job market with a single degree. I would recommend pursuing Masters as soon you can.
You currently work with IoT and sensors at Tesla. What groundwork did you have to do to equip yourself with skills necessary for that?
I don’t really work on IoT. I work on the Software layer that houses algorithms and applications that use data from sensors/cameras to make intelligent decisions as to when and where to route parts to the assembly line through automated equipment. I pursued Computer Engineering with a focus on system interfaces- Networks, IoT and Operating Systems, and Wireless Networks. I also took up Software Engineering and Database System Implementation to cover the other end of the spectrum. There was a chance to do a project in most of the courses I took. I leveraged the opportunity and started building applications revolving around open and connected systems. Tesla was looking for someone who could write software that can interface with various systems in the factory and I got lucky.
You interned at Tesla Motors briefly before joining Tesla as an engineer. What was the intern about? Did it in any way help you qualify for Tesla as an engineer?
During my internship, I had to develop a web application (Full-stack) to interface with RFID sensors placed over the factory dock doors that track every pallet that is coming into the factory and run analysis on the data collected. I also built a test platform to calculate the error rate of an RFID system that is going to be installed at Tesla in the future. The platform has an Android application that works with a handheld RFID scanner and exports the scanned data to the server. The handheld scanner is given to the production associates to scan every pallet that is being unloaded. The platform also contains a back-end application on the server that matches the data received from the handheld scanner and compares it with the data from the actual RFID systems to calculate the sensor accuracy.
My internship did help me qualify as a Tesla engineer. I got to understand how things work at Tesla, how ideas are conceived and executed and what is expected out of an employee. I guess having the right attitude helped me get an interview call for Full-time.
What courses helped you most in your area of research? Did any form of self-learning, like online courses, help you further your knowledge in that field?
I had never taken any online courses. I hate watching tutorial videos. I interned at Samsung post 6th semester at NIT Trichy where I worked on Adaptive Video Streaming methods (changing the bitrate of a video stream according to the bandwidth to ensure continuous streaming). That experience helped me get a chance to pursue a research project on similar lines in Columbia. The project did not involve much of research. It was mostly about coming up with architecture to send encrypted streams from a Raspberry Pi to a mobile application and creating the whole platform. I had to understand and try various different protocols and video codec formats before arriving at a conclusion. At times, I was on my own with little or no guidance. There were always enough open source projects/libraries to play with. I chose one and worked with my mentor to tweak it. Self-learning is the key. You should be able to scrape through a lot of research papers and projects and also understand them.
Would you recommend branching out and experimenting by learning skills from various fields while in college?
I would totally recommend. It is always good to learn as many skills as possible. A lot of growing startups would prefer someone who is versatile and can work in different areas at the same time. For instance, in a team of 4 people, you might have to do code development, testing and release. Unless you are extremely sure on what you want to specialize in, branch out and do more.
How does the work culture stand out at Tesla?
Tesla is that instructor who throws the beginner into the deeper end of the Olympic pool and expects him to swim out. Things move at a rapid pace because of which you would have to face insane deadlines but at the same time, you are given a lot of freedom. If you can justify a solution to the problem, the team is ready to adopt it. You have a chance to take part in a lot of important decisions made by your team and your voice is heard throughout the company even at the executive level. You also get to collaborate among some of the brightest minds in the industry. There are always opportunities to work with different teams, on different side projects. It has been 1.5 years at Tesla for me and I have already worked with three different teams on three different projects.
You got into Columbia University’s master’s program which is considered really difficult to get into, in general. Can you describe your experience as to how you got this programme?
I was lucky to come across this senior in NIT Trichy whose profile was exactly similar to mine. He got an admit from Columbia and with Columbia being a good school, I decided to apply to it too. I wanted to specialize in Networks and Operating Systems because of which I decided to apply for Computer Engineering. I did some research and chose a couple of professors who specialize in Computer Networks and Distributed Systems, whose work I was interested in. I wrote my SOP targeting them explaining how I was interested in what they were working on and that I am interested in contributing to those projects. It probably worked. I found out later when I was a Teaching Assistant that one of the professors whom I had addressed in my SOP, was in fact in the review committee. Now, I really don’t know if this was the reason behind me getting Columbia but I do recommend making your SOP technical and specific enough. It is the professors who always read your SOP and your job is to impress them.