Grab Software Engineer Interview Questions + Guide in 2024

Grab Software Engineer Interview Questions + Guide in 2024

Overview

Grab is a leading technology company in Southeast Asia, offering a wide range of services, such as ride-hailing, food delivery, and digital payments. Its mission is to drive economic empowerment through innovative solutions and services.

The Software Engineer position at Grab is a highly competitive role that focuses on tackling large-scale challenges. The interviews test your coding skills, problem-solving abilities, and system design knowledge.

In this guide, we will provide an in-depth look at the interview process, common Grab software engineer interview questions, and preparation tips to help you secure this position at Grab. Let’s get started!

What Is the Interview Process Like for a Software Engineer Role at Grab?

Recruiter/Hiring Manager Call Screening

If your resume makes the cut, a recruiter from Grab’s Talent Acquisition Team will contact you to verify essential details about your experience and skill level. Behavioral questions may also be part of the screening process.

Occasionally, the hiring manager might participate in the screening round to answer any questions you have about the role and the company. They may also engage in surface-level technical and behavioral discussions.

Online Coding Assessment

Depending on the feedback from the recruiter screening, you might be invited to take an online coding assessment. This assessment often involves solving algorithmic problems on platforms like InterviewQuery,

Example: - Solve 2-3 algorithm-based problems within a set time (usually 70-120 minutes). - Questions typically include tasks like string manipulation, data structures, and dynamic programming.

Technical Virtual Interview

Successfully passing the coding assessment leads to the technical virtual interview phase. This stage generally involves multiple rounds of coding interviews followed by a system design round.

Example Rounds: 1. First Coding Round: Medium-level questions focusing on data structures and algorithms (e.g., linked lists, arrays). 2. Second Coding Round: More complex algorithmic problems or live coding. 3. System Design Round: Discussing system architecture, APIs, and infrastructure design. 4. Behavioral and Technical Discussion with Hiring Manager: In-depth discussion on your past projects, career aspirations, and technical profundity.

Onsite Interview Rounds (If applicable)

Some roles might require an onsite interview, where candidates undergo a series of technical and behavioral interviews at the Grab office. These rounds assess your overall fit, including your technical skills, problem-solving abilities, and cultural alignment with the company.

What Questions Are Asked in an Grab Software Engineer Interview?

Typically, interviews at Grab vary by role and team, but commonly software engineer interviews follow a fairly standardized process across these question topics.

1. Create a function find_bigrams to return a list of all bigrams in a sentence.

Write a function called find_bigrams that takes a sentence or paragraph of strings and returns a list of all its bigrams in order. A bigram is a pair of consecutive words.

2. Write a query to get the last transaction for each day from a table of bank transactions.

Given a table of bank transactions with columns id, transaction_value, and created_at, write a query to get the last transaction for each day. The output should include the id, datetime, and transaction amount, ordered by datetime.

3. Create a function find_change to find the minimum number of coins for a given amount.

Write a function find_change to find the minimum number of coins that make up the given amount of change cents. Assume we only have coins of value 1, 5, 10, and 25 cents.

4. Write a function to simulate drawing balls from a jar based on their counts.

Write a function to simulate drawing balls from a jar. The colors of the balls are stored in a list named jar, with corresponding counts of the balls stored in the same index in a list called n_balls.

5. Create a function calculate_rmse to compute the root mean squared error of a regression model.

Write a function calculate_rmse to calculate the root mean squared error of a regression model. The function should take in two lists, one that represents the predictions y_pred and another with the target values y_true.

6. What’s the difference between Lasso and Ridge Regression?

Explain the key differences between Lasso and Ridge Regression, focusing on their regularization techniques and how they handle coefficients.

7. What kind of model did the co-worker develop for loan approval?

Identify the type of model used for determining loan approval based on customer inputs.

8. How would you compare two credit risk models for predicting loan defaults?

Since personal loans are monthly installments, describe how you would measure the difference between two credit risk models over a specific timeframe.

9. What metrics would you track to measure the success of a new credit risk model?

List and explain the metrics you would use to evaluate the performance and success of a new credit risk model.

10. How would you evaluate the suitability of a decision tree for predicting loan repayment?

Describe the criteria and methods you would use to determine if a decision tree algorithm is appropriate for predicting loan repayment.

11. How would you evaluate the performance of a decision tree model before and after deployment?

Explain the steps and metrics you would use to assess the performance of a decision tree model both before deployment and after it is in use.

12. How does random forest generate the forest and why use it over logistic regression?

Describe the process by which a random forest algorithm generates its forest and explain its advantages over logistic regression.

13. How would you interpret coefficients of logistic regression for categorical and boolean variables?

Explain the interpretation of logistic regression coefficients when dealing with categorical and boolean variables.

14. How would you measure the success of Uber Eats for Uber?

To determine if Uber Eats has a net positive value for Uber, identify key performance indicators (KPIs) such as revenue growth, customer acquisition and retention rates, market share, profitability, and customer satisfaction. Analyze these metrics to assess the overall impact of Uber Eats on Uber’s business.

15. What is the expected number of good ads rated by different types of raters?

  1. Suppose we have 100 raters each rating one ad independently. What’s the expected number of good ads?
  2. Now suppose we have 1 rater rating 100 ads. What’s the expected number of good ads?
  3. Suppose we have 1 ad, rated as bad. What’s the probability the rater was lazy?

16. Write a function to simulate coin tosses with a given probability of heads.

Create a function that takes the number of tosses and the probability of heads as input and returns a list of randomly generated results (‘H’ for heads, ’T’ for tails).

Example 1:

tosses = 5
probability_of_heads = 0.6

Output:

coin_toss(tosses, probability_of_heads) -> ['H', 'T', 'H', 'H', 'T']

Example 2:

tosses = 3
probability_of_heads = 0.2

Output:

coin_toss(tosses, probability_of_heads) -> ['T', 'T', 'T']

17. Write a function to calculate the sample variance of a list of integers.

Create a function that takes a list of integers and returns the sample variance, rounded to 2 decimal places.

Example:

test_list = [6, 7, 3, 9, 10, 15]

Output:

get_variance(test_list) -> 13.89

18. What is the probability of rolling at least one 3 with dice?

  1. What’s the probability of rolling at least one 3 with 2 dice?
  2. What’s the probability of rolling at least one 3 given (N) dice?

19. What is the probability of finding an item on Amazon’s website given its availability in warehouses?

Given that the probability of item X being available at warehouse A is 0.6 and at warehouse B is 0.8, calculate the probability that item X would be found on Amazon’s website.

How to Prepare for a Software Engineer Interview at Grab

Here are some quick tips for your upcoming Grab software engineer interview:

  • Practice with Interview Query: Most coding challenges are medium to hard in difficulty. Focus on algorithms and data structures, and practice coding on a shared editor.
  • Prepare for System Design: Ensure you’re well-versed in designing scalable and maintainable systems. Be ready to discuss architectural trade-offs, caching strategies, concurrency, and database schema designs.
  • Communicate Clearly: Throughout the interview, maintain clear communication. Explain your thought process and approach to solving problems, and don’t hesitate to ask clarifying questions. If you’d like to improve your communication skills, be sure to

FAQs

What is the average salary for a Software Engineer at Grab?

$92,366

Average Base Salary

$113,942

Average Total Compensation

Min: $50K
Max: $175K
Base Salary
Median: $83K
Mean (Average): $92K
Data points: 69
Min: $10K
Max: $249K
Total Compensation
Median: $105K
Mean (Average): $114K
Data points: 69

View the full Software Engineer at Grab salary guide

What’s the overall candidate experience during the interview process?

Experiences vary; some candidates have reported highly positive interactions with supportive interviewers who guide them through the problems. However, others have cited issues such as scheduling mishaps and inadequate communication from the recruitment team. Be prepared for both possibilities.

What is the company culture like at Grab?

At Grab, the company culture is driven by the 4Hs: Heart, Hunger, Honour, and Humility. Employees are encouraged to adhere to these principles as they work towards Grab’s mission of economic empowerment in Southeast Asia. Collaboration and innovation are highly emphasized within the organization.

Conclusion

While the interview process can be rigorous and occasionally flawed, with some reports of scheduling issues and unprofessionalism, others have found the experience to be supportive and enriching. Prepare by polishing your skills and understanding core computer science concepts.

For more support and insights into navigating the interview landscape at Grab, check out our comprehensive guides at Interview Query, where we provide you with the tools and confidence to excel. Dive into our expert-crafted resources, and don’t hesitate to reach out with any questions.

Good luck with your interview!