Breaking into the world of Data Engineering

Welcome to the Spotlight Series blog post. In this series, we interview professionals excelling in their current field to help learn about their journey.

Kushagra Agarwal

Today we received the opportunity to interview Kushagra Agarwal who is currently working as a Data Engineer II at Amazon. Data Engineering can involve honing a lot of skillsets and if you are interested in breaking into this industry, hop on the train.

1. What major did you pursue or specific courses did you take that made you choose this role?
[Kushagra]: I completed my bachelor’s in Computer Science and during my first job out of college, I worked for a company where I got hands-on experience in deploying data ETLs, managing data pipelines, and latency, and developing data-intensive applications. Little did I know at that time that I was working as a “Data Engineer” as this term was not very popular by then. Having worked for 2.5 years, I became more interested in Databases and Systems and Operating Systems. However, in my case, it was the professional experience that shaped me into who I am today. I continued my education with a Master’s in Computer Science from NYU and ventured out to find more exciting Data Engineering job roles in the US.

2. What was your interview preparation like? What questions do the interviewers ask and how many rounds of interviews does a Data Engineering job role have?
[Kushagra]: The interview rounds usually vary from company to company. For Data Engineering interviews, some companies focus on Data Structures and Algorithms while others focus on Data Modelling and Data Warehousing. Since I was preparing for Amazon, my preparation was more focused on the latter.
Amazon’s Data Engineer interviews are very standard. They usually have 3 rounds:

a) Phone screen by a recruiter – This 45 mins interview is mostly behavioral. The conversation includes reviewing your resume, asking you project-relevant questions, enquiring about your previous experience, and making sure you are going to be a culturally fit for the team and the organization. Make sure to know questions like the following:

  • Why are you looking to work for Amazon?
  • What about this role interests you?
  • Give an example of a time when you overcame a challenging project. What were the challenges and what did you learn from them?
  • Give an example of a time when you showcased your leadership skills to navigate and project to completion.

If the recruiter is satisfied with your responses, they forward your resume to the next step so that the Technical interviews can begin. Always remember to leverage your recruiters as your biggest resources in an interview. They are here to guide you through the other steps and make sure you don’t schedule an interview being underprepared.

b) Technical phone screen: This 45-60 mins round is usually a video interview over Chime. It is conducted by a Data Engineer or a Software Development Engineer/Manager (Don’t you worry, you’ll be asked questions that should be asked for a Data Engineer role).

You are tested on different SQL queries, data warehousing questions, and coding problems. The level of coding problems is not as high as that of a Software Engineer interview. Amazon has a strong emphasis on leadership principles and they include related questions in every single round of the technical screenings as well. You’ll typically be coding using a simple text editor like LiveCode, CoderPad, etc where you’re unable to run the code or see any static analysis. Be sure to talk through your thought process even if you get stuck. The interviewer is not expecting some magic, where you think in your head and write the correct solution. If you can communicate your problem-solving skills, it is a huge win.

c) Virtual (or not) Onsite – This is the final leg of the interview process. It typically has 4 or 5 rounds based on the level you are being interviewed for. Different members of the team who you may be working with in the future interview you. They include data engineers, software engineers, hiring managers, and a senior executive. An interview with a senior director is mostly called the Bar Raiser. Bar Raiser questions are very varied, as they can focus on technical problems or the overall candidate quality rather than specific team needs.

At this stage, you should expect a higher emphasis on behavioral questions based on the 16 leadership principles.

3. How did you prepare for the interviews? What tips can you give to anyone wanting to break into this career?
[Kushagra]: There are not a whole lot of structured resources available online for the preparation. When I was interviewing with several companies, I collated a word document for myself. I am sharing this resource with the readers to should help them. I have linked document for you to access. Please do not edit the document without prior permission. There is another great website that has tutorials about Data Engineering preparation: https://awesomedataengineering.com/. In addition to this, I solved all the SQL questions in LeetCode, I practiced mock interviews by timing myself and I started interviewing early. The more interviews I gave, the more confident I became. System Design has started being an important component of some interviews. I did not face system design problems, but I recommend looking at this website or reading this book for preparation. There are a lot of questions on Data Warehousing and Data Modeling that are usually embedded into the interview process, so be prepared for those.

4. What are the best parts of your job?
[Kushagra]: For me, it has always been the people who I work with. That is followed by the work that I am doing and finally the money I am making haha! I will be honest, there have been times when I have felt the Monday Blues. There have been times when I have absolutely slouched but I have come out of it and it’s always become a rewarding one in the long run.
As a Data Engineer at Amazon, you can expect to be a custodian for the data sources that your team owns. This means building, maintaining, and supporting the data pipelines that your team has built. You can also expect to build dashboards (Tableau, QuickSight) so that your customers can use the data you are managing. In terms of technology, it varies, a lot from team to team. I have worked on building data pipelines in Scala Spark and Spark SQL while using internal tooling. At the same time, my colleagues have worked on using AWS natively.

5. What are the different companies that have roles in the domain you are working on? How do we approach those companies and make our profile visible?
[Kushagra]: Data Engineering is a forever booming field. With the amount of data we are generating, there is a need for Data Engineers to manage, optimize and query this data efficiently. In order to strengthen your profile, I would say work on real-world projects (if you are a student). If you can get hands-on experience developing the backend systems, and working a little on data analytics then it is a plus. Explore non-tech companies especially Healthcare, Fashion, Banks, and FinTech as well since they also need talented Data Engineers.

6. What’re the different resources you used for your job search (career fairs, conferences, networking events, etc.)?
[Kushagra]: I exhausted all of them, to be honest. However, I applied on companies’ websites, and in my case, that has worked every time.

7. Any follow-up tips before we leave?
[Kushagra]: Just one thing. Work hard, have fun, and make history 😉 (If you know you know)

We hope you found this interview helpful. If you want to include more questions we ask our engineers or interviews of specific majors, please feel free to reach out to us. To read other blogs on our website you can go here.

Disclaimer: We are in no way promoting any brand or organization. The content is solely created based on personal experience and research.

Featured Image Credits: Unsplash