GitHub logo

GitHub Software Engineer Interview Questions
& Process

Real candidates share what happened, how many rounds they had,
and how the experience turned out.

Based on 116 interview experiences · FREE TO READ

3.1 Rounds average
Average Typical difficulty
44% Positive experience

Candidate interview experiences

First-hand accounts from people who interviewed at GitHub.

Showing 3 of 116
GitHub logo
GitHub

Software Engineer

Engineering · half a year ago

Mid Easy Positive experience Accept offer 3 rounds
Interview process
Recruiter call Technical screen Onsite
Interview formats
Behavioral Technical Technical

Interviewed for SWII. It was pretty straightforward. First, I had a chat with a recruiter who asked me some basic behavior questions. Then, on the same call, they told me I was being moved to the interview day. They gave me a heads-up on what the questions might be. The interview day itself consisted of two technical interviews and one cultural interview. For the technical questions, one was to build a game of battlefield, and the other was to set up some HTTP calls.

Confirmed questions2 questions
  • Build a game of battlefield.
  • Set up some HTTP calls.
GitHub logo
GitHub

Software Engineer

Engineering · nearly a year ago

Senior Easy Negative experience No offer 5 rounds
Interview process
Recruiter call Technical screen Take home Onsite Background check Offer
Interview formats
Behavioral Technical

The entire interview process spanned over two months, marked by significant delays and poor communication from the recruiter, which made the experience quite frustrating. Despite my interest in the role and the seemingly strong team, the logistical issues were discouraging. I frequently had to chase the recruiter for updates, and there was a lack of explanation for the long gaps between interview stages, as well as no clear feedback on what to expect next. There were periods of several weeks where I heard nothing after completing a stage. For a company like GitHub, I anticipated a more professional and transparent process. While the people I interacted with were competent and pleasant, the overall recruitment coordination seemed disorganized and not a priority.

Confirmed questions1 question
  • Can you describe your approach to collaborating with other teams?
GitHub logo
GitHub

Software Engineer

Engineering · more than a year ago

Entry Easy Negative experience Decline offer 3 rounds
Interview process
Recruiter call Technical screen Phone screen
Interview formats
Behavioral Technical

The interview itself was pretty chill and a good experience overall. They really leaned into behavioral questions, making it feel more like a chat. The rough part was the recruiters, seriously the worst I've met. The recruiter was super condescending about my questions regarding compensation and even my potential team. I asked to chat with the team lead before accepting, and they got mad, saying I didn't trust them to pick the right team for me. When I brought up benefits and pay, they kept saying I was ungrateful and that people here don't focus on money, which is kind of a weird thing to say. Then I asked about work-life balance and a typical day, and they dismissed it, saying it's too early in my career to worry about that and I should just work hard. I wasn't trying to slack off, just genuinely curious since Github is remote. Bringing up other offers I had to get a timeline was apparently a mistake, because the recruiter just went off about how those companies would lay me off and wouldn't support me, which is just plain rude. I put up with it because I thought highly of Github, and I figured I wouldn't have to deal with that recruiter again if I got the job. But yeah, the whole recruiting experience left a bad taste in my mouth, even though the actual interviewers were cool. Maybe it was a test of resilience, who knows. I ended up taking another offer anyway.

Confirmed questions8 questions
  • Can you share some of your hobbies?
  • How do you think you fit with our company culture?
  • Tell me about the projects you've worked on.

GitHub Software Engineer Interview Questions

Quoted word for word from GitHub interview reports.

Given a string of operations, implement a function that processes it using a stack. Numbers should be pushed onto the stack. "DUP" duplicates the top element. "POP" removes the top element. "+" pops the top two elements, adds them, and pushes the result. "-" pops the top two elements, subtracts the first from the second, and pushes the result. If any operation leads to an error (e.g., insufficient elements), return -1. Examples: Input: "3 DUP 5 - -" Output: -1, Input: "13 DUP 4 POP 5 DUP + DUP + -" Output: 7, Input: "5 6 + -" Output: -1

Read reports

If there's a bridge with two lanes that has a weight limit, how many cars from a given list can actually cross it?

Read reports

Could you find all pairs in an array of numbers that sum up to a given value K?

Read reports

Can you explain what a database is in a way a 10-year-old would understand?

Read reports

Could you create a data storage API capable of storing unique objects using GET, PUT, and DELETE HTTP requests?

Read report

Could you write an API that can fetch and store data in a map?

Read report

Could you develop a NodeJS Addon that successfully completes all the given unit tests?

Read report

If you could change or add one feature to GitHub, what would it be?

Read report

Could you implement a .NET data storage API featuring 3 RESTful endpoints and some unit tests?

Read report

Formats, difficulty and experience

Across all 116 GitHub interview reports.

Interview formats

Technical 33.5%
Behavioral 30.1%
Coding 27.5%
System Design 5.2%
Other 1.9%

Interview difficulty

Easy 19.8%
Average 70.7%
Difficult 9.5%

Candidate experience

Neutral 17.2%
Positive 44%
Negative 38.8%