
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
Candidate interview experiences
First-hand accounts from people who interviewed at GitHub.
Software Engineer
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.
- Build a game of battlefield.
- Set up some HTTP calls.
Software Engineer
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.
- Can you describe your approach to collaborating with other teams?
Software Engineer
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.
- 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.