Basic Information

  • Name Asif Shaikh
  • Curriculum: EE Dual Degree, Spec. in CSP
  • Year of Study: 4th
  • Company/University of Internship: Uber
  • Year of Internship (eg. '23 Summers, '22 Winters): ‘23 Summers
  • Mode of Internship (Online/Offline/Hybrid): Offline
  • Duration of Internship: 8 weeks

I am Asif Shaikh, a fourth-year undergraduate student in the Electrical Engineering Department. As I am writing this blog, I am halfway through my third-year summer internship at Uber.

Getting into the Internship:

What specific domain or field did you target to get an internship in?

During my second-year summers, I was staying on Campus for an internship at an ML startup in Powai and also I was a part of a tech team. Most of the time I was either busy with the tech team or internship work or having fun with my friends. So naturally, I didn’t give any thought to which company or field I should be targeting for the upcoming internship season for most of the summers.
Halfway through June, I started attending some info sessions, talked to some seniors, and did my own research about various companies and profiles. I’ll list down the important facts. A LOT of companies don’t open their IAFs for Dual Degree students. A lot of ML/Data Science roles are baits, and a lot of interns in these companies were unsatisfied with their work. I decided that I would target good companies (read Day One companies) or do some meaningful internship with an ML profile.
So my plan for the internship season was simple. Apply to all Day One companies that open for me. Then apply to the companies which do good work in ML. And if these two don’t work, I would go for univ apping.

What resources did you utilize to prepare for the tests/interviews?

Since I was primarily targeting ML, I also reviewed all the ML courses I had done, tried to improve my basics, and reviewed all my projects. Talking specifically about software, having a good handle on DSA and cp is a must for landing any Software intern. Both the coding tests and interviews consist of DSA/CP problems. Besides, some ML and Quant companies also use cp as a filter for shortlisting students. A good place to start would be the competitive programming handbook and cses.fi. LeetCode, GeeksforGeeks, InterviewBit, etc. can be used for solving problems on a regular basis. CodeForces is also popular, but the type of questions there aren’t really asked for software roles.
Software interviews require more than just solving cp problems. It’s good to have some mock interviews with your friends to prepare for these.

Can you elaborate on your interview and the type of questions which were asked?

There were three rounds of interviews for Uber, two technical and one HR. The technical rounds were about 45 minutes long and the HR interview was about an hour long. I was asked a DSA question in the first round. I first gave a brute-force solution and then made improvements to this. The interviewer asked me to walk him through the application of the algorithm on a sample input, which I did. Then I was finally asked to code the solution.
For the second round, I was asked a system design question. The problem was implementing a text editor in an object-oriented form with methods for appending, inserting text and implementing the undo and redo operations. The last round was a mix of technical and HR questions. The interviewer tried to affirm that I am sound with some basic CS concepts since I am pursuing Electrical. The rest of it was typical HR stuff.

Were there any significant roadblocks or challenges that you encountered during the internship application and selection process? If so, how did you navigate or overcome them?

A significant roadblock for dual degree students is that a lot of good companies don’t open their IAFs for us. It is important to note which companies open their IAFs for your programme and department. The IAF for Uber also clearly stated that their internship program was only for pre-final year students. So, I was expecting to get rejected during the interviews for this reason. I was already doing an internship during my second-year summers and also had tech team work. It was tough handling these two along with my internship preparation.

How did you handle any rejections that you faced (If any) during the internship application process?

Uber was the first company I was shortlisted for an interview. But I remember that I had almost skipped the coding test for some silly reason. Optiver and Uber had their coding tests on the same day for their SDE profiles. Giving Optiver’s test really brought my spirits down. I wasn’t even targeting software, except for the Day One companies. I felt that I wasn’t prepared enough for software and should only focus on ML. I asked one of my friends if there would be any penalty if I skip the coding test for Uber, but he discouraged me from doing so. Looking back, it doesn’t make sense to have skipped a test for one company if some other test didn’t go well.
TLDR: Have good friends who stop you from making stupid decisions.

During the internship:

What was your specific profile or project topic during the internship?

I am working in the platform team at Uber. My team works on maintaining one of the internal tools that Uber uses for testing. Not getting into the details, I really felt that my project was important and I was doing impactful work. This wasn’t something I went in expecting from the internship.

How would you describe your overall experience as an intern?

My experience as an intern has been really great. The work that I did was really fulfilling. I learnt a lot in my role as a software intern through my project. I also learned about how the company works, what everyone is doing, and why their work is important. The internship was laced with a lot of treats and outings with my team. You no longer need to take the cab fare into account while planning trips if you’re working at Uber. This was also a great exposure to what life could be like if I went down the corporate route.

Could you provide insights into the organizational culture of the company/university and what your peers were like?

The thing I like best about the internship is that Uber doesn’t treat interns any differently from the employees working here. During working hours we work, eat and have fun with our teams. I was able to build great relationships with everyone in my team. The working hours here are flexible. Employees can work from home but are supposed to be present in the office during anchor days (Tuesdays and Thursdays). But many people prefer to work from the office. The interns were asked to come in on all weekdays. Uber is a mid-sized company with a relatively flatter structure. I feel the work that an individual does here is more impactful than someone in the same position at a larger company. Uber has a very open culture and there are a lot of opportunities to grow as an engineer.

After the internship:

Based on your experience, would you recommend this internship to others interested in the same field? If so, what aspects make it worth recommending? If not, what factors influenced your perspective?

I would definitely recommend this internship to anyone interested in software. The reasons are already listed above but to summarize: great pay, great company, great people.