Indeed Software Engineer Interview

Interview Guide Apr 20

Detailed, specific guidance on the Indeed Software Engineer interview process - with a breakdown of different stages and interview questions asked at each stage

The role of an Indeed Software Engineer Interview

At Indeed, the team's core mission is linking jobseekers with fitting jobs using top-notch recommendations. They believe in leveraging advanced data and Machine Learning (ML) techniques to push the AI boundaries in the job-search domain.

As a software engineer on Indeed's team, your daily grind would involve crafting scalable and efficient software solutions. This covers everything from data preprocessing to model training and deployment. You'd be the go-to person for integrating Machine Learning models into the production systems, all while keeping the communication lines open and effective with the data scientists.

The average total compensation for the Indeed Software Engineer gig is a solid $144,100, with a base salary of $113,334, a yearly stock grant of $20,868, and a bonus of $9,897.

Indeed Software Engineer Interview Interview Guide

Indeed's interview process for software engineers is rather comprehensive with specific areas of focus, including a resume deep-dive, several whiteboarding exercises, and a behavioral round. Broadly, the process comprises the following rounds:

  • Phone Screening
  • Technical Assessment
  • Onsite (4-6 rounds)
Relevant Guides

Indeed SWE - Phone Screening

Overview

After submitting your application, you'll likely get an invite for a phone screen to dive into the software engineer role at Indeed. This phase is your standard background check interview where the recruiter dives into your interest in the role, your professional qualifications, etc. They ask fundamental questions like, "Why this role?" or "Can you give me the rundown of your background?" Expect them to grill you a bit on those X-factor skills from your resume.

This interview is quite similar to the one which occurs for the Twitter SWE interview.

Post that, they spill the beans on what comes next in the interview pipeline. It's a chance for you to get back with any burning questions about the role, the company, or the whole interview shindig. 

It's essentially a two-way street – they're checking you out, and you get to find out if this role aligns with your vibes.

Indeed SWE - Technical Assessment — Karat Interview

Overview

When it comes to the Karat interview with Indeed, it's a bit different. Indeed partners up with a third-party company called Karat for conducting technical interviews. 

It's a one-hour deep dive into your tech prowess. In the initial 10 minutes, they grill you on the basics – think software engineering and computer science fundamentals. It's a warm-up round to get your brain juices flowing. So, be prepared for some theoretical curveballs like, "what are the differences between composition and inheritance," or "Explain dependency injection."

Now, the next part is where it gets real. The last 50 minutes include live coding exercises—three challenges, to be precise. They start easy and ramp up. LeetCode prep pays off here because questions often are directly taken from there.

Interview Questions

This could include questions like:

  • Reverse a string in-place.
  • Find the first non-repeated character in a string.
  • Implement a basic algorithm for sorting an array.
  • Write a function to determine if two strings are anagrams.
  • Implement a binary search algorithm.
  • Create a function to find the intersection of two arrays.
  • Design a system for an online bookshop, considering various components and interactions.
  • Implement a cache with expiration policies.
  • Solve a complex algorithmic problem, such as finding the shortest path in a graph or implementing a dynamic programming challenge.
Read these articles

Indeed SWE - Technical Assessment — Onsite Rounds

Overview

The onsite interview at Indeed spans a full day—here’s a breakdown of what you can expect:

  • 2 Whiteboarding Exercises
  • 1 Solo Coding Exercise
  • 1 Code Review
  • Up to 2 Background and Resume Deepdive

the onsite interview takes one day, from 9:00AM to 5:00PM

first round, design a job search system

second round, white board, BFS question

third round, white board, a recursive question

one hour lunch time.

fourth round, code review, you were given some code and review it.

fifth round, coding exercise with HackerRank, bucket sort question

Round 1: Whiteboarding and Background Questions

Round 1 kicks off with a 60-minute session, conducted by two senior engineers. Initially, they dedicate 5–10 minutes to dissect your background and resume, but then it's coding challenge time.

Be prepared for curveballs here, because the coding questions aren't always straightforward. For instance, you might be given a LinkedList where each node's value is an array of integers, all neatly in ascending order. You will be provided a class and method headers—and your task might be something like implementing an insert method to add an integer into the LinkedList at the right spot.

The coding challenge will be conducted on HackerRank.

Once you've implemented your solution, they dive deep—expect to touch topics like optimization, time complexity, etc.

Round 2: Whiteboarding Interview

Moving on to the second Whiteboarding Interview. This time as well it's a coding showdown, but the setup is a tad different. You kick things off with the usual self-introduction, but beyond that, there are no technical or behavioral questions; they cut straight to the chase – the coding challenge.

This is once again on HackerRank. They give you a description of a class and a few methods that you have to implement for that class—typically the kind of problems you'd stumble upon on LeetCode. For instance, a recursive question or a BFS/DFS algorithm.

Brush up on your data structures thoroughly; think— arrays, queues, maps, and stacks (actually, that's a good tip for any coding interview).

Round 3: Solo Coding Challenge

In the third round, Indeed throws you into what they call a Programming Exercise (ProgEx) – basically, a solo coding challenge. You get a solid 105 minutes to tackle this one.

You kick it off with a chat with two software engineers who lay out the challenge, giving you the lowdown on what you need to tackle. This is your chance to ask any questions about the problem and make sure you're crystal clear on the task at hand.

Once the brief is done, they hit the mute button, turn off the cameras, and let you do the same as you work on the challenge. But they'll still be hanging on the call in case you hit a roadblock and need some clarification.

The good news is — it's not your typical nerve-wracking whiteboarding experience. No one's watching your every keystroke. It's just you, the problem, and your code. It's a more chill vibe, and takes the edge off the nerves. 

The challenge itself is a practical exercise that mirrors a real-world scenario, like building an API for job searches. Or a design challenge like designing a job search system.

Post-solving, they throw a few more questions at you: What's the time complexity? What about space complexity? What improvements would you make down the road? You would be asked to jot these thoughts in a separate submission form.

To prepare for the coding challenges, it's best to brush up on your data structures (like LinkedLists, arrays) and common algorithms—be comfortable with sorting and searching algorithms, in particular. Given that Indeed interviews often lean heavily on coding challenges, it's best to practice these thoroughly under simulated conditions to get comfortable with the process. Pro tip: Reach out to Indeed's own Software engineers for insights, you can find them on Prepfully. Book a session with them directly here.

Round 4: Background and Resume Deep Dive

Round 4 involves an in-depth exploration of your background and resume. You'll have two 30-minute discussions, each covering a brief overview of your background, a deep dive into your resume, and standard behavioral questions.

The drill is quite consistent in both sessions. You kick off with a quick rundown of your background and experience, then delve into your resume. They're interested in the companies you've listed and the roles you played at each. So, stuff like “Tell me about a technical challenge in a project and how you cracked it.”

Projects take the spotlight too, with a focus on what you led or contributed to, any key takeaways/lessons—you get the gist.

In a nutshell, get comfy discussing every facet of your resume – projects, companies, roles, certifications, technical skills, and the works. It's about showcasing your experience and problem-solving chops in detail.

Code Review

In the final interview, which is typically a code review session, you connect with a senior engineer over a call. After introductions, they share a GitHub pull request link containing a small code snippet for you to evaluate and provide feedback on. The code often reflects real-world scenarios at Indeed.

It's mostly a solo exercise, but the engineer is available for any clarifications. Your job is to scrutinize the code for syntax, naming, bugs, and other potential improvements—you leave comments where you see fit. The last 10 minutes are reserved for discussing the code and addressing questions about those comments.

Towards the end of the session, expect behavioral questions such as how you communicate errors to colleagues, strategies to prevent recurrences, and ideas for streamlining the error-catching process.

Make sure you have a strong grasp of programming fundamentals, syntax, and common coding conventions. A good practice is to review open-source projects or sample code on platforms like GitHub. 

Indeed Software Engineer Roles and Responsibilities

Following are the roles and responsibilities of a Indeed Software Engineer:

  • Your key responsibilities revolve around creating systems that effectively connect jobseekers with suitable positions, ultimately facilitating successful hires. This involves defining, designing, and building technologies for optimal job matches. 
  • You play a pivotal role in architecting new solutions, either by extending existing frameworks or prototyping innovative products.
  • Maintaining high-quality standards is crucial, and you contribute to this by actively participating in code and design reviews within the team. Beyond your individual tasks, part of your role is mentoring fellow software engineers, data scientists, and ML engineers, fostering a collaborative and knowledge-sharing environment.
  • Efficiency is key, and you're tasked with assessing performance and optimizing existing code to make optimal use of hardware resources. 
  • Clear and persuasive communication is emphasized, as you engage with product managers, data scientists, and fellow engineers, ensuring effective collaboration across the team.

Indeed Software Engineer Skills and Qualifications

Here are the skills and qualifications that a Indeed Software Engineer must have:

  • Bachelor's degree in Computer Science, Mathematics, or a related field.
  • A 5+ years of experience as a Software Engineer, showcasing a track record of addressing complex scalability issues.
  • Demonstrated expertise in JavaScript and Java/Kotlin, reflecting a strong command of these programming languages.
  • A solid 3+ years of hands-on experience in building large web-based scale systems, highlighting your ability to handle projects at an extensive level.
  • A robust understanding of data structures, algorithms, and computer fundamentals, providing a strong technical foundation for problem-solving and system design.
  • A genuine love for coding and a keen interest in tackling challenging tasks. Enthusiasm for continuous learning and a desire to engage with various technologies to solve intriguing problems.

Frequently Asked Questions