Interning at Amazon Science | Yerram Varun

Cepstrum
InPlace
Published in
7 min readDec 26, 2022

Opportunity

It was the Intern season of 2021. After having almost no success in ML companies in the first 2 slots, I was waiting for more companies to come. It was around this time that Amazon ML Challenge was announced, the prizes of which included interviews for ML Internships. Amazon is one of the best places to work in the ML/AI field. Hence I decided to participate with a few friends from the IITG.ai club.

Round 1 was a 3-day hackathon on a big-data classification problem. It was immensely competitive and compute-intensive, and after a sleepless struggle, we placed 3rd on the final leaderboard. Round 2 was a presentation round to the judges, which went well, helping us achieve 2nd place on the final leaderboard.

If you are interested to read more about the problem statement and solution → Github

Interview

The Interview for Applied Science Internship consisted of 2 rounds: One Coding and one ML round. I was confident about my ML preparation and did not know what to expect in the coding part. Both of my Interviews were on the same day with a 2 hr gap in between.

Coding Round

My Experience in the coding round was very similar to my friends who gave the interview.

I was asked two coding questions: an array-based DP and another basic tree traversal (diagonal). In both questions, I had to explain my approach first, then live code it in front of the interviewer. The Interviewer was friendly and helped me with hints along the way. Overall the Interview went well.

ML Round

This Interview was divided into two parts: ML Depth and ML Breadth. During the first half of the interview, I was asked to choose a project from my CV and explain it to the Interviewer. This is a common question in any Interview, and I was well prepared. I chose my summer Internship project because I was most confident about it.

During the internship, I trained a segmentation model to extract roads from high-resolution satellite Images. I explained the problem statement and data preparation using U-net++ instead of U-net. The Interviewer questioned me on the architecture of U-net and ResNeXt, the main models used. We also discussed Dice loss, Cross Entropy loss, and classification metrics for segmentation like Jaccard and Dice Metrics. Then we moved on to the second part of the Interview.

It started with the basics of Machine learning, linear regression, logistic regression, and loss functions. He asked me an interesting question about why we don’t use RMSE loss for logistic regression; it had theoretical proof, which I didn’t know then. We then moved on to PCA; I had to explain the process, and I answered a few cross-questions. I had 10 mins remaining, and he started with a stats question.

If you have a coin and you toss it 1000 times, it comes up heads 650 times. How can you tell whether it is a biased or an unbiased coin?

I answered it correctly and designed a Z-test for the coin toss.

The Interview ended with him asking me to explain the Central limit theorem.

Overall, I felt I could have done a little better.

After around a week of grueling wait, I got the mail!

I selected my dates of Internship from 16th May — 29th July.

Internship

I joined the India Machine learning team at the Amazon office, World Trade Center, Malleshwaram(west), Bangalore. Fortunately, the internship was in hybrid mode, allowing me to have an awesome experience there!

WTC at night!

I reached Bangalore on May 15th, finishing the endsems on May 11th. I stayed in PG, around 2–3 km from the office. Despite a nearby location, it took around 40 minutes to reach the office because of the famous Bangalore traffic.

Day 1

My Day 1 was online. I had a call with my manager and set up my Mac with the credentials and necessary software. Later in the day, he briefly introduced the project I’ll be working on and the people I’ll be working with. It was an interesting problem, and there were a lot of previous experiments and papers to study.

Week 1

I had a 1:1 with my mentor, who gave me more details about the project, and we set up a few goals to work towards in the next few weeks. It was hard and exciting!

I had hundreds of TBs of data to analyze on an ecosystem I was working on for the first time. My first few weeks were spent going deep through Amazon’s internal tools and guides to understand how things work together. I learned pyspark and had to revisit some SQL to make it work finally.

Week 2

This was the first time I went to the office.

A view from my office!

My team was following a bi-weekly schedule in coming to the office, and I decided to pop up on one of the days. Everyone was super helpful in getting around. I got a photo for my ID Badge as well.

Cafeteria 😋

Week 3–5

The Work was going in full fledge. I finally solved my problems with Data and was training Deep learning models and gathering results. Working on huge AWS instances is what I miss the most from my Internship :p

I met with my manager once a week to give updates and get feedback on my work. With my mentor, I met every alternate day to grind out the finer details. Both were helpful and supportive.

To take a break, you can do many fun things around Bangalore. For example, try an overnight trek at one of the many hills!

Or hang out at multiple malls!

Just a Mall from my Gallery 😆

Or do sightseeing, like the Vidhan Sabha →

Ahem, Coming back to the Internship.

Week 6–7

My work was nearing its end with presentable results. You have a lot on your plate near the end of the internship. First, and most importantly, you must prepare for the PPO Interviews. You must submit complete documentation and code so the employees can continue the work. You also give a presentation to the full team about the work you have done during your time. Handling all of it while finishing up your work is a hassle. But with a helpful mentor and encouraging teammates, it was achievable!

I started running my final experiments around this time (and was running them till the last day, sigh!)

Week 8–10

I had a total of 3 Interviews for PPO.

Coding Round: This coding round was simpler than the previous coding round. I was asked to find the median in a stream of numbers. The Interviewer wanted to discuss many diverse approaches to the problem and test my grasp of different data structures. Overall, It went well.

Machine Learning Round: This is an unpredictable round as everyone who gave interview had a different experience. I was asked to explain the full work I did during my Internship, and the interviewer kept cross-questioning me on every aspect. Thankfully, this was the question I was most prepared with. After all, It’s what I did for three months! The Interview went awesome.

Final Round: This was a mix of ML and Coding interviews. It started with a basic probability question, then an ML case study, and finally, a hard coding problem. I solved around 75% of the last one and then needed a few hints to correct it. Overall, I could have done better.

We returned to campus to start our 4th year, and after almost three weeks of waiting, I got the offer!

Amazon Office, WTC, Bangalore

So, I’ll be joining the same office in July 2023, and looking forward to it!

--

--