Message on Whatsapp 8879355057 for DSA(OA + Interview) + Fullstack Dev Training + 1-1 Personalized Mentoring to get 10+LPA Job
0 like 0 dislike
1,542 views

All interview experiences of Amazon can be found using the tag "amazon_interview_experiences" in the search bar.

Here is the link : https://www.desiqna.in/tag/amazon_interview_experiences

in Interview-Experiences by Expert (35,210 points)
edited by | 1,542 views

1 Answer

0 like 0 dislike

Onsite Interview

 

  •  

    Waited 2 weeks after completing OA

     

  •  

    Signed an NDA prior to the onsite

     

  •  

    Resources given: Amazon In-person InterviewDiversity and InclusionLife at AWSAWS benefits

     

  •  

    Had to sign up and download their chime app to do the whiteboard coding environment tests

     

  •  

    3 coding interviews, 1 OOP system design, and behavioral questions in each interview

     

    • 1 hr each
    • All interviews on the same day
    • Basic text editor with no suggestions/compilation
  •  

    Assessment

     

    •  

      Coding Interview

       

      • Interviewer (4 years at AWS) brought someone to shadow (8 years at AWS)
      • Coding Question: Max promotions at same time - given list of promotion intervals (start and end), get the max promotions happening at the same time
        • Exclude end times, so end time and start time if they are the same isn't considered overlapping
        • Reminds me of the interval partitioning / Classroom greedy problem
          • Sorted using special comparator then similar pattern to the linked problem but perhaps that was incorrect but ran the algorithm and got the results they were looking for...
        • Couldn't figure out time/space complexity exactly which made him think I didn't know what the code was doing....
          • Mentioned O(n log n + ....) and space was O(n) since I was creating a copy of the list which I told the interviewer I was not going to mutate and agreed upon this assumption
        • I forgot the behavioral questions the interviewer asked me
        • What did I learn from the interviewers?
          • AWS marketplace has 12-13 teams?
          • Both interviewers like their job because they get "ownership" and "leadership" principles that has helped develop their personality, personal life, and how to approach problems.
          • The environment is fast pace, intersting and challenging, you drive the project and not much "hierarchy", and there are lots of things lined up to do
          • Some managers are result driven can result in high pressure environments (meaning you need to work overtime and deliver otherwise say hello to PIP)
    •  

      Coding Interview

       

      • Interviewer (5 years at AWS)
      • Behavioral Questions:
        • Tell me a time you took time in an area out of your responsibility? What resulted of it?
        • Tell me a time when you had to dela with a tough or critical feedback and what you did in response?
      • Coding Question: Group Anagrams but the given words could be of any length from 0 - N length, not all the same length
        • Counted character frequency in map, stored that frequency map into an object to preserve having to check if it's an anagram then used map equals to compare and place into correct group of anagrams
        • Wasn't able to speed up the algorithm, appearently he wanted me to "hash" the strings
          • He was not happy that I couldn't think of this and could see his dissapointment in his face
          • I did not think of this solution as I thought what if hashing leads to collisions and wrong results?
        • Had difficulties coming up with time complexity so he was not happy about that
      • What did I learn?
        • Typical day: stand up, pick tasks to work on that they planned, measure ticket time, meetings, code reviews
        • What help you get at Amazon? You get assigned a buddy but are strongly encouraged to figure out things on your own if you are stuck or blocked
    •  

      OOP System Design

       

      • Interviewer (11 years at AWS) brought someone to shadow (5 months at AWS)
      • Behavioral Questions:
        • Tell me a time that you were able to deliver on a tight deadline and what sacrifices did you make to do?
        • Tell me a time that you solved a complex problem with a simple solution?
      • Coding Question: Design a game of tic tac toe assuming it's not using the internet or multi-threaded
        • Told him I was thinking about support multiple players, different board sizes, different ways of winning, inputs, outputs, etc for system design clarifications
        • Introduced a very common game design pattern interface to represent games and had the tic tac toe game implement it
          • I told him this allows us to check the status of the game (started, ended, paused, broke, etc) and start or end the game whenever we called those methods
          • Interviewer didn't seem to understand why and probably assumed I over-engineered it or didn't know what I was doing
        • Created classes for tic tac toe game (had an underlying 2d matrix, list of players, list of moves, and etc), created a player class
          • Used oop pattern to support undoing/redoing moves
          • Used functional pattern to support dynamic/static checks if a player won / can make a move / etc
            • This allows the tic tac toe game to support different sized boards, different rules to win or place a piece, easy reusable rules, and dynamically allow users to select rules they want to use
            • The interviewer said this was too complex and told me I should just extend the class if I wanted to support different sized boards or to support different rules...
              • However you can see how this is not a good approach and I was quite dissappointed given the fact he was insinuating that inheritance over composition was better design
          • He asked me why I didn't ask for player input in the constructor instead of the the start method
            • I did not like this idea because not all games start when initiated, may need to support pausing games, and etc
      • What did I learn?
        • 11 years of experience at Amazon and still can't design tic tac toe game and even suggesting poor coding/design practices because the solutions I gave were too complex?
          • Working at Amazon doesn't mean you are a good engineer, that is what I learned from this exchange
        • If you have a deadline, you may end up spending extra hours to get that project delivered (overtime basically)
        • You are pushed to learn more
        • There are engineering excellence courses and mentoring for learning
        • There are lots of work, lots of opportunity but must take ownership of time and boundaries, "nothing out of the ordinary"
    •  

      Coding Interview

       

      • Interviewer (4.5 years at AWS) brought someone to shadow (1 year at AWS)
      • Behavioral Questions:
        • Tell me the hardest bug you had to deal with and how you solved it and what impact it had?
        • Tell me a time you got really stuck and had a remove a serious block and what result it had?
      • Coding Question: Generate all well-formed parentheses
        • I had to ask him what well-formed means and went through some problems as I didn't quite understand what to do
        • Implemented the recursive solution, kind of a mix of solution 1 and 2
          • Interviewer seemed happy with my thought process
      • Follow Up Coding Question: How can we extend your current implementation of the code to support list of pairs of other symbols: [], {}, etc
        • I said I would iterate over the list and map the open and closing symbols with each other then I would use a for loop to iterate through all the symbols to generate well-formed symbols recursively still
      • What did I learn?
        • Some parts of AWS is using the traditional internal stack but they are migrating their code to use fully native AWS stack
        • You must drive your career growth, various opportunities, lots of learning resources and training sessions
        • The reason why people have to work late / long hours / are overworked is due to these reasons
          • High bar for customers, developers poorly design their system and it has faults, since it's your work then you are responibilty to to fix them regardless if it's in middle of the night
            • They are customer centric, you have ownership of your work so prevent it in the future from the same event from happening
            • You do get some days off after dealing with big fires and going through a retrospective
        • Some managers are pushy, so it's manager dependent
        • Did not set a proper timeline for the project, you lose trust with managers resulting potential PIP
by Expert (35,210 points)