A journey of past 2 months after Being Laid off By Amazon

Anonymous User
9968
Mar 08, 2023
Mar 09, 2023

Hey Everyone,
It's time to now give back to the Leetcode family. In this post, I would cover the past 2 months' journey, my preparations etc. If it helps any of you I would be delighted. Feel free to share this with whoever requires it. I know still a lot of folks out there waiting for their next venture and believe me you are very close to it. It’s only about time. Just keep going on and stay motivated. You might have a look over my journey to get further motivation.

The past two months have been very unique for me. It was Jan 11 when I got to know that our team has been impacted and I am one of the members to receive the pink slip. Honestly, at that moment I did not break down as I thought I am receiving good severance pay and it's now a good opportunity for me to get an SDE-2 role outside of amazon as I already had 2.5 YOE. I thought I would have 2 months and with the amazon tag I would receive a lot of calls and surely I would get a job.

The job hunting started the next day and I started with Instahyre applying to all the relevant jobs shown to me. I applied to at least 100 companies and thought I would start getting calls and started preparing. 1 week got past, I received 0 calls. I started understanding the reality of the market. It was worst.

Then I started applying for 100-200 jobs daily on LinkedIn, Instahyre, both relevant and irrelevant. The biggest concern was all the jobs were asking for 3+ YOE. I was not getting calls from them. After 2 weeks started receiving a few calls but they did not go ahead due to salary mismatch or tech stack mismatch. I insisted they at least schedule an interview but nothing worked out. Mostly third-party firms were reaching out to me. I received 5 different third-party recruiter calls for Tekion itself, but never got the interview started.

It was 2 weeks gone, I started feeling the heat. Still, kept applying for 100-200 jobs daily to expect a call. Meanwhile, I received my first interview call for British Petroleum via a third-party recruiter. That got started but was too slow. After OA did not receive any response, which finally came after weeks. Luckily, at that time got calls from 3-4 companies, all are start-ups but were very relevant to my profile/ expectation. I was kind of prepared but not fully prepared but then stopped job hunting and spent more time preparing.

After that, I have been ghosted by multiple companies. I got rejected by multiple companies few I don't know why few I believe I could have done better and a few I believe was not aligned with my expertise/domain. I have been offered verbally but my phone calls were never picked up by formal offers by one company. Then finally started getting offers. And finally joined a company which aligns with my expectations.

That was a kind of journey. Honestly, I learnt a lot. Will love to share that and how I prepared for interviews

Applying for Jobs

When you are applying for jobs, try to apply for relevant jobs only else you would never receive calls.
e.g.:

  • If you have 1 YOE and applied to a job asking for 3+, you can't expect to receive a call
  • You don't need to have all the technical requirements, but a few might be required. For example, a lot of companies asking for Java conduct interviews on java or restrict the language to java only
  • Please add a cover letter if asking to state why they should consider you for the role and why you want to be part of the organization. Few jobs I got calls specified to me that they read my cover letter and believe I would be a good fit for the team though I don't have 3+ YOE

Interview preparation

  • Online Assessment: Most online assessments are coding only. But few companies ask MCQ for relevant knowledge. You can expect Java/OOPS/ Spring boot /DBMS MCQs if that's relevant. e.g.: Intuit has MCQs on Java, DBMS, and OOPS and carries a good weightage. For this, I don't think there can be any specific preparation. It's more on the knowledge you have built throughout the years. And of course, if you can google, you can!!! Coding part I would cover in the next section.

  • Coding Round:
    I interviewed for SDE-2 positions only and coding is equally important here also. As far as my coding profile is concerned I have solved ~940 LC problems mostly medium. My coding is also of medium standard. I lost touch in the past 2 years after I joined Amazon. So before I started coding again I think I have around 750 problems solved mostly I did during college time. One thing I can tell you about coding is that it's all about to practise. The more you practise the more you become an expert. Also, I think it's very important to build a coding habit. The leetcode daily challenge is an excellent initiative and so are leetcode contests. If you make a habit of solving 3 problems in any contest you should be good to crack DSA interviews. Also, I would highly recommend making a list of problems which you think might need a look-up at the last moment. For example, problems like finding critical edge require last-minute lookup as you can't memorize. I know there are a lot of influencers having their sheets spread out, but I think all you need is a coding habit. It can't be like you need to solve 250 problems rather it should be you do coding daily. Honestly, I struggled a lot after I lost touch and I had to kind of restart, but yeah it did not take a lot of time. But I wish I did not leave coding. So, my suggestion would be your practise as much as you can and make a coding habit and try to identify patterns(binary search/ two pointers). Also, I would like to mention that I took Leetcode premium to solve company-specific problems. Though that was not so useful, I found a few Leetcode solutions highly recommendable. I often see editorial as well after solving to see how to optimize/ improve the solution.

Machine coding round/LLD Round:

Machine coding was something very new to me, but not so new. I actually designed and implemented 5-6 LLDs at Amazon over my tenure and I had read the book "Head First Design Patterns" beforehand. So, for me, LLDs were not very difficult but what was difficult was coding down within a given time. You barely get to think and design. So, I practised a list of questions from here and solved my own (Sometimes did design only, sometimes wrote codes as well).

Pro tip1: If you have not read the book "Head First Design Patterns", please go through it. If you don't have time to read and want to save time go through the playlist of C.Okhravi. This is probably the best way to quickly understand the design patterns.
Pro tips2: Setup IntelliJ with Lombok. It's going to save your life

HLD

HLD is something that I started doing at Amazon and I recently started reading books like DDIA. But the classic system designs I was not aware of. However, I used to read HLD documents of Amazon-wide systems to improve my knowledge base. But this is something that I mostly spend time preparing over the past two months. So, I first started reading the book called "Distributed Systems for Practitioners".It covers all the fundamentals of any distributed system. This book is awesome and at some point in time you might find it difficult to read as it has all topics covered from basic to advance. For HLD interviews probably everything is not required but at least you should read the fundamental concepts like sharding, quorums etc. Then I started reading The books from Alex XU and I think it's best for interviews. You get the idea behind all the classic systems like Uber, Whatsapp etc. I found volume 2 more relevant given the standards of HLDs have gone up nowadays. But I would iterate the fact that your hands-on experience in designing systems matters a lot and it helps a lot to build a robust understanding. You should expect a lot of cross-questions even if you present state-of-art design by any book. However, in most of the interviews I have appeared in, I was given an ad-hoc system to be designed with my own set of requirements.

Pro Tips: Database choice is something often being looked at in any HLD interviews. Also, choices over specific Databases (Why Hbase Not Cassandra) might be asked for in-depth discussions. The interviewer plays a big role in any system design interview because, at the end of the day, it's all about whether he is aligned with you or not.

HM Round
I have received different HM round experiences at different organizations. Few were interested more in cultural fit, few were interested more to check my relevant experiences, and few were interested to conduct another System Design round. This round I felt very random as you don't know where the discussion would lead, very much depends on how the HM is and how he believes it should be. You can be even asked java based questions, multi-threading, basic coding, system design and kinds of stuff you never expect to be asked in an interview!!

Leadership Round
Since I have been interviewed by a lot of new age start-ups as well, most of them conduct leadership rounds where you have to talk to cofounders. This is often something that starts with a technical discussion and then leads to a discussion over the company itself. This is a good scope for candidates also to ask questions about the company or culture

That's all I had to say. To add few companies have their rounds like a dedicated round on multithreading, and a dedicated round on testing and I don't think you can have much preparation previously. But overall I have found that if you have written integration tests or if you know what and how full CD looks like probably you would be good enough to clear. On, multi-threading there are few books you can read through. It's something that's being asked at the SDE-2 level. So, you can also practise/think of problems in terms of concurrency.

Comments (22)