Goldman Sachs | Associate | Bangalore, India | July, 2021 [Offer]
Anonymous User
2736

Experience: 4.5 yrs.
Position: Senior Software Developer at Oracle India.
Location: Bangalore, India

  1. Online Assessment (~90mins)
    HackerRank round
    I don't remember the questions but they were LC Easy (String based) and LC Medium (Stack based)

  2. Coderpad round(~60mins)

    • Similar to question https://leetcode.com/problems/pascals-triangle-ii/ , only thing is instead of only rowIndex, colIndex was also provided. You need to return the value at particular (rowIndex, colIndex). Did the recursive solution.
    • Given a 2-D String array of student-marks find the student with the highest average and output his average score. If the average is in decimals, floor it down to the nearest integer.
      E.g.

Input: [{"Bob","87"}, {"Mike", "35"},
{"Bob", "52"}, {"Jason","35"},
{"Mike", "55"}, {"Jessica", "99"}]
Output: 99

Also I was asked to test different possible edge cases.

After one week they scheduled round 3-6 on a single day

  1. Round - 3 (LLD, DSA)

    • Low Level Design for Phone Directory/Contacts of your mobile phone.
    • Implement the search functionality in Contacts. I was supposed to consider Contact name based search as well as Phone Number based search. Maintain both [Contact Name -> Phone Number] mappings and [Phone Number -> Contact Name] mappings. Implementing Trie data structure in this case is one of the solution.
    • Check if a given Linked List is a palindrome or not. Resursive solution is required.
  2. Round - 4 (LLD, Project Discussion)

    • Low Level design of Cache Policy.
    • Implementing different algorithms LRU, LFU.
    • Discussion about existing project and how I can restructure/redesign my current project to make it better. Flaws and limitations in current design.
  3. Round - 5 (HLD, DSA)

    • High level design for one of their own existing transaction related service. They explained me their project and asked me to come up with high level design of it.
      Scenario : They have thousands of transaction running on a dashboard in a span of 15 minutes. After each transaction execution they have a list of consumers taking up each transaction and have to execute set of mandatory new post processing tasks. Taks could be anything, either a DB update, a rest third party call, an update call or anything.
      Discussion about message queues implementation for task processing.
    • Scenario based question on DS. Auto Generating sequence number plates for vehicles. How I can generate special numbers for vehicle and manage collision with the auto generating sequence for normal number plates. Two methods to implement :-
      public int getANumberPlate();
      public boolean isSpecialNumberAvailable(int Number);
    • https://leetcode.com/problems/median-of-two-sorted-arrays/
  4. Round - 6 (Managerial)

    • Discussion about projects.
    • Innovative ideas in the current project.
    • Innovation I have done in my old company's project.
Comments (4)