Skip to content
Related Articles

Related Articles

Amazon Interview Experience for Software Development Engineer II
  • Difficulty Level : Easy
  • Last Updated : 12 Apr, 2021

Round 1(Online Assessment–120 minutes): This assessment will take about 2 hours to complete and this assignment is designed to help you showcase your coding skills and work style. It contains three different sections, and each one has a different time to complete.

  1. Coding challenge (2 scenarios) and Coding approach (elaborate why you code the way you do) – 105 minutes
  2. Work style survey – 15 minutes
  3. Feedback survey – 5 minutes

Expectations

  • Excellent software engineering and coding skills
  • Understand and work through complex business problems
  • Strong troubleshooting and data analysis skills
  • Ability to work with ambiguity and drive clarity in discussions
  • Problem-solving and data-driven decision-making
  • Good oral and written communication skills
  • Excellent problem-solving skills
  • Be able to write Amazon quality code in an object-oriented language – preferably in Java/C++ in a Linux environment
  • Possess an extremely sound understanding of basic areas of Computer Science such as Algorithms, Data Structures, Object-Oriented Design, Databases.
  • Responsible for design, development, delivery, and support of large-scale, multi-tiered, distributed software applications and tools

   

Coding challenge (2 scenarios) and Coding approach (elaborate why you code the way you do – 105 minutes)

  1.  Shopping Options:  An Amazon Customer wants to buy a pair of jeans, a pair of shoes, a skirt, and a top but has a limited budget in dollars. Given different pricing options for each product, determine how many options our customer has to buy 1 of each product. You can not spend more money than the budgeted amount.

          Example



priceOfJean = [2,3]
priceOfShoes = [4]
priceOfSkirts = [2,3]
priceofTops = [1,2]

         The customer must buy shoes for 4 dollars since there is only one option. This leaves 6 dollars to spend on the other 3 items. Combination of prices paid for jeans, skirts, and tops respectively that add up to 6 dollars or fewer [2,2,2], [2,2,1], [3,2,1], [2,3,1].  There are 4 ways the customer can purchase all 4 items.

Functional Description 

Complete the getNumberOfOptions function in the editor below. The function must return an integer that represents the number of options present to buy the four items. getNumberOfOptions has 5 parameters:

  • List<Integer> priceOfJeans : An integer array list that contains the price of the pairs of jeans available.
  • List<Integer> priceOfShoes: An integer array list that contains the price of the pairs of shoes available.
  • List<Integer> priceOfSkirts: An integer array list that contains the price of the skirts available.
  • List<Integer> priceOfTops : An integer array list that contains the price of the tops available.

int dollars: The total number of dollars available to shop with.

   

Java




import java.io.*;
import java.util.*;
  
class Result {
  
    /**
  
       * Complete the 'getNumberOfOptions' function below.
  
       * The function is expected to return a LONG_INTEGER;
  
       * The function accepts following parameter:
  
       * 1.INTEGER_LIST  priceOfJeans
  
       * 2.INTEGER_LIST  priceOfShoes
  
       * 3.INTEGER_LIST  priceOfSkirts
  
       * 4.INTEGER_LIST  priceOfTops
  
       * 5.INTEGER       dollars
  
       */
  
    public static long getNumberOfOptions(List<Integer> priceOfJeans,
                    List<Integer> priceOfShoes,
                    List<Integer> priceOfSkirts,
                    List<Integer> priceOfTops,int dollars)
    {
  
        return ? ;
    }

1.1  Coding Approach – CQ 1

  • Briefly describe your approach for solving this cod question
  • What is the run time complexity of your solution for this code question? Enter below

 2. Storage Optimization: Amazon is experimenting with a flexible storage system for their warehouses. The storage unit consists of a shelving system that is one meter deep with removable vertical and horizontal separators. When all separators are installed each storage space is one cubic meter(1*1*1). Determine the volume of the largest space when a series of horizontal and vertical separators are removed. 

Example



n = 6
m = 6;
h = [4]
v = [2]

Consider the diagram below. The left image depicts the initial storage unit with n = 6 horizontal and m =6 vertical separators, where the volume of the largest storage space is 1*1*1. The right image depicts that unit after the fourth horizontal and second vertical separators are removed. The maximum storage volume for that unit is then 2*2*1 = 4 cubic meters.

Functional Description 

Functional Description  

Complete the function stored in the editor below.

Storage has the following parameters(s):

  • Int n: Integer, the number of horizontal separators initially.
  • Int m: Integer, the number of vertical separators initially.
  • List<Integer> h: An List of integers, the horizontal separators to remove
  • List<Integer> v: An List of integers, the vertical separators to remove

Returns:

int: A long integer denoting the volume of the largest item that can be stored in the unit.

Java




import java.io.*;
import java.util.*;
class Result {
     /**
      * Complete the 'getNumberOfOptions' function below. 
      * The function is expected to return a LONG_INTEGER;
      * The function accepts following parameter:
      * 1.INTEGER n
      * 2.INTEGER m
      * 3.INTEGER_LIST  h
      * 4.INTEGER_LIST  v
      
      */
    public static long storage(int n, int m ,
               List<Integer> h,List<Integer> v ) 
    {
  
        return ?
          
    }
}

2.1  Coding Approach – CQ 2

  • Briefly describe your approach for solving this cod question
  • What is the run time complexity of your solution for this code question? Enter below
  • Amazon Work Style Assessment (15 minutes):

Assessment Tips and Reminders:

  1. The Amazon work style assessment consists of several pairs of statements
  2. Read each statement carefully, but work quickly. Do not spend too much time on any item
  3. Answer honestly. You may be asked to provide experience to verify your response
  4. Answer all questions. You will be prompted to respond if you forget any items.

Feedback survey( 5 minutes): It contains basic questions which include if you face any difficulty during your test, or any faced any technical issue.

Attention reader! Don’t stop learning now. Get hold of all the important DSA concepts with the DSA Self Paced Course at a student-friendly price and become industry ready. To complete your preparation from learning a language to DS Algo and many more, please refer Complete Interview Preparation Course. In case you are prepared, test your skills using TCS, Wipro, Amazon and Microsoft Test Serieses.

My Personal Notes arrow_drop_up
Recommended Articles
Page :