
Github software engineer interviews typically pair a recruiter screen, and often a hiring manager screen, with a coding assessment (HackerRank, Codility, or take-home) and a final day of coding, system design, and behavioral rounds. Timelines vary widely: one standard-engineer process took about four months, while the intern loop in this set was a single conversation.
$147K
Avg. Base Comp
$201K
Avg. Total Comp
4-6 rounds
Typical Rounds
Not reported
Process Length
Github's software engineer interviews vary noticeably by level and team, but a few patterns recur across candidate accounts. Most loops open with a recruiter screen and, for non-intern roles, often a hiring manager conversation before any coding stage. The assessment itself takes different shapes: a single recursive HackerRank problem, a take-home coding assignment, or a Codility test. According to one senior-level account, the hiring manager picks Codility questions relevant to the role rather than generic LeetCode. The final interview day typically blends practical coding, system design, and a behavioral or values-based round. Tasks candidates describe include building a game of battlefield, setting up HTTP calls, an API design challenge, a medium LeetCode-style problem, and reviewing a Ruby pull request for quality and efficiency improvements. One senior-level account adds that system design goes deep on something you've actually built. Behavioral rounds have covered disagreeing with a colleague's technical decision, seeking out perspectives different from your own, and what draws you to Github. Have concrete project or open source examples ready, since one candidate noted interviewers want to see them.
Timelines vary widely. One standard-engineer process took about four months, including roughly two months of silence after a take-home before the final day was scheduled, and another spanned several months. By contrast, the intern account involved a single 45-minute, project-focused conversation and a quick offer. A contract candidate described a fast-moving process where hearing back could take around a month. One candidate who received an offer also went through about three weeks of back-and-forth before the offer, then nearly four more weeks of background verification. Build patience into your planning, and use the gaps to rehearse your project walkthroughs and values stories.
Synthesized from 9 candidate reports by our editorial team.
Had an interview recently?
Share your experience. Unlock the full guide.
Real interview reports from people who went through the Github process.
I applied directly to GitHub and went through their standard interview loop for a Senior Software Engineer role. The process included a take-home technical assessment followed by an onsite with multiple rounds. During the onsite, I faced two live coding sessions and one system design round. One of the coding problems involved building a REST API HTTP service, which tested my ability to design and implement a functional service under time pressure. The other coding round covered more general algorithmic problem-solving. The system design session pushed me to think about architecture and scalability at a higher level. Throughout the interview, the questions felt fairly standard for a senior-level position — nothing wildly unexpected, but definitely requiring solid fundamentals and the ability to communicate my thinking clearly. What struck me most was the lack of feedback after rejection. I was simply told I didn't pass, with no explanation of what went wrong or where I fell short. That made it hard to understand whether it was a particular round, a specific technical gap, or something else entirely. In hindsight, I wish I'd had more context on what GitHub was specifically looking for in their senior engineers, since the bar felt somewhat opaque going in.
Prep tip from this candidate
Prepare for live coding around REST API design and implementation, and practice system design with a focus on scalability. GitHub's process does not provide feedback after rejection, so mock both rounds thoroughly beforehand to catch gaps early.
Share your own interview experience to unlock all reports, or subscribe for full access.
Sourced from candidate reports and verified by our team.
Topics based on recent interview experiences.
Featured question at Github
How would you answer when an Interviewer asks why you applied to their company?
| Question | |
|---|---|
| 2nd Highest Salary | |
| Empty Neighborhoods | |
| Top Three Salaries | |
| Merge Sorted Lists | |
| Closest SAT Scores | |
| Subscription Overlap | |
| Monthly Customer Report | |
| Random SQL Sample | |
| Minimum Change | |
| Raining in Seattle | |
| String Shift | |
| Rolling Bank Transactions | |
| Customer Orders | |
| Comments Histogram | |
| Top 3 Users | |
| Find the First Non-Repeating Character in a String | |
| Flight Records | |
| Daily Retention Summary | |
| Prime to N | |
| The Brackets Problem | |
| Upsell Transactions | |
| Find the Missing Number | |
| Scrambled Tickets | |
| Rectangle Overlap | |
| Download Facts | |
| P-value to a Layman | |
| First Touch Attribution | |
| Job Recommendation | |
| Bagging vs Boosting |
Synthesized from candidate reports. Individual experiences may vary.
Most candidates report the process opens with a recruiter screen covering basic background questions, such as how you've worked with previous managers and what interests you about Github. For some non-intern roles, a hiring manager conversation about your background and what you're looking for follows before or around the coding stage.
Depending on the role, candidates describe a single HackerRank problem (a recursive, LeetCode-style question), a take-home coding assignment, or a Codility test. One senior-level account says the hiring manager picks Codility questions relevant to the role rather than straight LeetCode problems.
The core loop typically includes two technical interviews. Examples include building a game of battlefield, setting up HTTP calls, a medium LeetCode-style problem, an API design challenge, and a data structures and algorithms round paired with a system design round. One candidate also completed a Ruby pull-request code review, evaluating someone else's code for quality and efficiency. One senior-level account says system design goes deep on something you've actually built.
A behavioral or values-focused interview typically rounds out the day. Topics include how you align with Github's values, how you've handled disagreements with colleagues over technical decisions, and times you sought out perspectives different from your own. One senior-level account suggests preparing STAR stories and notes this round is run by someone other than your hiring manager.
One candidate who received an offer described about three weeks of back-and-forth before the offer, then nearly four weeks of background verification. Another waited around a month to hear back after the final day, so build extra time into your planning.