Goldman Sachs is a leading global financial institution that delivers a broad range of financial services across investment banking, securities, investment management and consumer banking to a large and diversified client base that includes corporations, financial institutions, governments and individuals. Founded in 1869, the firm is headquartered in New York and maintains offices in all major financial centers around the world.
Software engineering is at the critical center of Goldman Sachs' businesses. The firm's dynamic environment requires strategic thinking that is innovative and produces smart solutions. Software engineers at Goldman Sachs work to build massively scalable software and systems, architect low latency infrastructure solutions, proactively guard against cyber threats, and leverage machine learning alongside financial engineering to continuously turn data into action.
Role and responsibility
- Collaborate with trading, sales, asset management, banking, finance and others, to build and automate solutions to keep Goldman Sachs' position on the cutting edge.
- Elevate Goldman Sachs businesses by providing reliable, scalable platforms for data engineering, machine learning, networking, developer tooling, collaboration and more.
- Innovate with UI/UX designers, full-stack engineers, data scientists, cloud engineers, and more in a collaborative, agile environment where your enthusiasm to take on new problems and learn will have an immediate impact.
- Provide technical and design guidance and create standards.
- Improve, optimize and identify opportunities for improved software development processes.
- Collaborate with product owners and architects on making design decisions.
- Develop end user applications with high scalability and high throughput.
- Intuitively coalesce towards problems with an open mind, within the context of a team
- Apply knowledge and experience in decision-making to arrive at creative and commercial solutions
- Manage multiple tasks and use sound judgment when prioritizing
- Provide digitally-advanced financial products to retail consumers
- Collaborate with globally-located cross functional team in building customer-centric products
- Analyze existing software implementations to identify areas of improvement and provide estimates for implementing new features
- Update and maintain documentation for team processes, best practices, and software runbooks
- Bachelor’s or Master’s degree in Computer science or equivalent
- Strong fundamentals in distributed systems, databases
- Design and analysis of algorithms
- Implementation of programming languages and run-time systems
- Knowledge of finance, stochastic calculus and financial models
- In-depth knowledge of Core Java, multi-threading, Spring and ORM frameworks
- Expertise in designing enterprise applications
- Exposure to Agile methodologies and Tools
- Experience with microservice architecture
Goldman Sachs Software Engineer Salary
- Entry-level salary :USD 105,000.
- Senior positions. :USD 257,000.
- Median salary :USD 165,000 with the base component being USD 120,000, stock component being USD 30,000 and bonus being USD 15,000.
Interview Process Overview
Usually, the interview process for the Software Engineer role at Goldman Sachs consists of 4 rounds as under:
- HackerRank Online Test
- Initial Screen
- Coderpad Phone Screen
- Onsite Round
Candidates have to initially appear for an online coding test on the hacker rank platform. The test consists of 3 questions, and candidates are allowed 120 minutes to complete the test.
On clearing the HackerRank online test, you will be set up for a 30-minute telephonic interview with the recruiter/hiring manager. Here, the interviewer is going to assess whether your experience and skill sets are a good match for the job you’ve applied for. In other words, your cultural and experiential fit for the role & company will be tested. Most of the questions are going to be based on your previous experience/resume. So, it will be useful to be thorough with every word on your resume. Make it a point to keep answers short, crisp & structured. Some questions regarding your motivation for the role and company might also be asked. So, prepare some good points for these questions beforehand, especially the expected "Why Goldman Sachs?" or "Why do you think you are a good fit for the job?"
Once you have cleared the Initial Screen, you will proceed to the CoderPad Phone Screen. This is the technical round of the interview process. The Coderpad phone screen is a live coding round with a Goldman Sachs Software engineer interview. telephonic interview round with a Goldman Sachs Software Engineer. It is a 1-hour interview, and you will get to answer multiple questions.
Most of the questions test your OOP concepts, algorithms understanding, and coding skills.
Most asked questions in the CoderPad Phone Screen
- Write a function to merge two sorted arrays.
- Write a Java program to count the number of occurrences of each number in a series of numbers.
- Write a function to find all the permutations of a string
- Write a function to find the missing number in a given integer array of 1 to 100?
Practice more such questions with a Goldman Sachs Software Engineer→ Book now!
On clearing the phone screen, you will get a call for the onsite round. The onsite round for the Software Engineer role at Goldman Sachs consists of 4 interviews, each being an hour long.
The first three interviews are technical while the 3rd and last one is a behavioural interview. Each of the technical interviews is 45 minutes long, while the behaviour interview lasts for 1 hour.
The technical interviews last for about 2 hours, done in two sittings. These are conducted by Goldman Sachs' Senior Software Engineers. Here are the 3 rounds of the technical interview:
- System Design
Let’s know more about each of these rounds in a little more detail:
SDLC stands for Softwareevelopment Life Cycle. Software developers have to be conversant in the different stages of development of a software product in order to build a robust and glitch-free software.
Most asked questions in the SDLC interview round
- Can you tell me the difference between Regression testing and Retesting?
- Differentiate between unit, integration and system testing
- What do you understand by the Defect Life Cycle?
- Explain the difference between SDLC and STLC.
System Design round
The system design round is conducted by a software engineer at Goldman Sachs. Here, your front end and back end design skills will be tested. Interviewers will also look to assess your knowledge in scalability and distributed systems.
Most asked questions in the System Design round:
- Design a project of candidate/recruiter management system in which one candidate will be assigned to only one recruiter but one recruiter can have multiple candidates.
- How would you explain the concept of lower latency interaction?
- Design a ride sharing service such as Ola.
- What do you understand by High Availability Design?
- Can you tell us the differences between continuous integration, continuous delivery, and continuous deployment?
- What do you understand by Shared Nothing Architecture? How does it scale?
- Design a real time chat application end to end including all the architecture, code design pattern, communication system and database.
- How will you design a database system for a supermarket?
This round is conducted by a software engineer from Goldman Sachs. The coding round will test your general programming skills in C/C++, Java etc. Primarily, the interviewer lays emphasis on logic, and is flexible with the choice of programming language. Questions may involve writing a piece of code for a problem, or debugging a given piece of code.
Most asked questions in the Coding Round
- Write a function to find the nth element from the end in a linked list in one pass?
- Write a program to add numbers present in a String, example : Gl123a45ssd908oo6r, so the program should give 123 + 45 + 908 + 6 = 1082 as the result.
- You have been given a character array. Write a function to calculate the minimum number of jumps from the 1st alphabet to reach the last alphabet; keeping these restraints: From a given character, you can either: 1. Jump to the adjacent character 2. Jump to the same character positioned in a different place.
- Write a programme to calculate the angle between hour hand and minute hand.
The behavioural interview is 1-hour long, and is conducted by senior managers from Goldman Sachs. This interview is designed to test a candidate's motivation for the role, leadership skills, and how good a fit they will be in the company. Questions are mostly situation-based. At the end of the interview, the candidate may ask questions or doubts regarding the role/job responsibilities or company.
Most asked questions in the Behavioural round
- What drives you to work for Goldman Sachs?
- Why do you want to pursue software engineering as a career?
- What challenges have you faced in your career so far, and how did you overcome them?
- Focus on scenario-based system design questions as these are asked often.
- Revise SDLC concepts as one round is exclusively dedicated to it.
- Revise the theory portion of static parts of concepts in sufficient depth as interviewers love to deep dive in the onsite round. Special focus should be on OOPS concepts.
- Follow the think-out-loud approach.
Ace the Goldman Sachs Software Engineer onsite interview→ Book now!
How many rounds are there in the Goldman Sachs software engineer interview?
There are 4 rounds in all, including a HackerRank online test.
How do Inprepare for the onsite round?
Have a solid grasp over the fundamentals, and practice through mock interview sessions.