GitHub Interview Questions | Glassdoor

GitHub Interview Questions

Interviews at GitHub

146 Interview Reviews

Experience

Experience
46%
19%
35%

Getting an Interview

Getting an Interview
80%
8%
7%
2
2
1

Difficulty

2.8
Average

Difficulty

Hard
Average
Easy
  1. Helpful (2)  

    Community Manager Interview

    Anonymous Interview Candidate in Remote, OR
    No Offer
    Positive Experience
    Average Interview

    Application

    I applied online. The process took 6+ weeks. I interviewed at GitHub (Remote, OR) in December 2016.

    Interview

    Great response times from the recruiters, who set me up with an interview with the person who would have been my boss. Overall, very smooth experience, although it took a while for them to get back to me after my initial application, though that likely had to do with the American Thanksgiving holiday.

    Interview Questions

    • Throughout the process, the interviewer asked me my opinions on how I would do X or Y and would ask me why. I got the impression that the interviewer was very open-minded as to how the forthcoming community would be used and managed.   3 Answers

  2. Helpful (25)  

    Software Engineer Interview

    Anonymous Employee
    Accepted Offer
    Positive Experience
    Average Interview

    Application

    I applied online. The process took 4+ weeks. I interviewed at GitHub.

    Interview

    Took an 20 min introductory phone call, did an online coding test, and then a skype code test. The interview process was really great. The recruiter and all the employees I spoke to were kind and did not make the interview process that intimidating. It was a good way to get an introduction the company, get a feel for the employees, understand what kind of things I was expected to know.

    Interview Questions

    • The major diffrences between python and java   3 Answers
  3. Helpful (11)  

    Software Engineer Interview

    Anonymous Interview Candidate in Oakland, CA
    No Offer
    Negative Experience
    Average Interview

    Application

    I applied through a recruiter. The process took 2 weeks. I interviewed at GitHub (Oakland, CA) in August 2017.

    Interview

    After a video chat with the hiring manager, I scheduled a time to do an online test for GitHub. In a separate email, I was informed that the test would involve writing a simple NodeJS AddOn, and that the particular task didn't require specialized domain knowledge, beyond knowing C++. The email informed me that the code for the test was developed against a specific version of NodeJS, which was older than the available current version, and that I would be sent a link to GitHub repo, which would be accessible for a limited time. Finally, the email said there were would be a README file that contained specific instructions for setting up the development environment.

    On the day of the test, I received an automated email that contained a link to the GitHub repository, as promised. I cloned the repository onto my laptop. There was a README file that contained a description of the problem I was supposed to solve and the file contained information about how to run the unit tests to exercise the project that I was supposed to modify, but there were no instructions on setting up the environment to run the project. I spent a significant amount of time and effort just setting up the development environment, as I had to scour the GitHub forums to resolve my issues. I only have a passing familiarity with NodeJS and had never written a NodeJS AddOn, which I admitted readily to the hiring manager, but it was really unfair to have to struggle with development environment set-up issues in addition to having to work with a new technology on a time limited test. That stress over the development environment was completely unnecessary. On top of that, one of the unit test scripts contained an output formatting error. This bug in the test script resulted in the failure of the unit tests because the output lines it produced did not contain carriage returns, even though the output lines produced by the test from the solution logically matched the output lines of the file containing expected output. Given that the expectation that the unit tests were supposed to be a black box, it was unclear whether the bug in the test script was an intentional bug I was expected to fix. Dealing with these set up problems and debugging the unit test script issues ate up a good chunk of the time I was given to access the test repository, and although I solved the problem itself, I was not able to make a clean submission for my test.

    In conclusion, this test had one of the shoddiest set-ups I have ever experienced. Coding tests should be fun, and while I learned a new technology (NodeJS AddOns are cool!), the stress from the set-up problems with which I had to deal - problems that could have been solved with better instructions - did not make this test fun.

    Interview Questions

    • Write a NodeJS Addon, and make sure it passes all the provided unit tests.   2 Answers

    GitHub Response

    Aug 29, 2017 – People Operations Team

    We really appreciate you leaving this detailed feedback and after reading it, we have made some changes to the technical exercise based on your experience with us. We are revamping the preparation email to include more detailed instructions and hope to continue to improve the quality of this exercise moving forward. Thank you again for sharing this.


  4. Helpful (17)  

    Software Engineer Interview

    Anonymous Interview Candidate in San Francisco, CA
    No Offer
    Negative Experience
    Average Interview

    Application

    I applied through an employee referral. I interviewed at GitHub (San Francisco, CA) in August 2017.

    Interview

    I've noticed Github responding to their Glassdoor reviews concerning the time the interview process takes, and it appears they are trying to do something about it. However, it seems to have come at the expense of not spending any time talking to candidates.

    I spoke with a talent acquisition person, which started off the process positively. They were very thorough in describing the company, culture, and listing the steps in the interview process.

    The first step was a four question form which asked high-level questions to gauge the candidates thought process. I excitedly dug into it and wrote out what I thought was a pretty in-depth description of a process I had recently gone through while building a new project from scratch.

    However, I quickly received a rejection because there were not certain keywords that they were looking for in the response, though there was no way to know that they were looking for those particular things. I replied to the talent acquisition person asking if there was an opportunity to respond to the feedback, because I certainly could have, but they simply copied and pasted their previous response back to me.

    Despite the fact that the rejection email stated "the team has carefully reviewed your responses", I am under the impression it was barely reviewed, if at all. It's also disappointing that, although the questions seemed very conversational rather than having definitive answers, there's no opportunity to have a conversation about them.


  5. Helpful (13)  

    Software Engineer Interview

    Anonymous Interview Candidate
    No Offer
    Negative Experience
    Average Interview

    Application

    I applied through a recruiter. I interviewed at GitHub.

    Interview

    Holy cow this was a complete joke.

    I was initially contacted through a recruited on LinkedIn. We scheduled a quick phone screening and she passed me along to the next recruiter, who scheduled me for a phone chat with the hiring manager. The call went great and I was moved along to the coding challenge (battleship). Completed that and had to send repeated email follow-ups because my recruiter just fell off the face of the earth. Their email stated they would get back to you within the week and mine took over two weeks for them to get back to me. Setting expectations is important, in my opinion. After the two weeks, the recruiter told me they changed their mind on the coding challenge and wanted to do a different one. What? Who does that? I had to wait another week for someone to come up with the coding challenge and then it was scheduled for me by yet another recruiter. By this point, it was over 3 months and I had been passed around to four recruiters.

    I finished the new coding challenge, waited another few weeks, and got my decline note, which I expected because that coding challenge literally made no sense. I chatted with other engineers who have been doing this stuff for decades and none of them could understand what in the world they were asking or wanting. It was as if the hiring manager just made something up and then gave it to people in haste.

    The entire process was confusing after getting randomly passed around from person to person and I find absurd for a company like Github. I've never heard of a company issue a coding challenge only to say, "just kidding. We change our minds".

    Interview Questions

    • Battleship coding challenge and secondary coding challenge after they changed their minds.   1 Answer

  6. Helpful (10)  

    Software Engineer Interview

    Anonymous Interview Candidate in San Francisco, CA
    No Offer
    Negative Experience
    Average Interview

    Application

    I applied online. The process took 2 weeks. I interviewed at GitHub (San Francisco, CA) in February 2017.

    Interview

    - I applied online,
    - I had a quick email from a recruiter asking me to do a 2-3 hours technical exercise (coding challenge)
    - A few days later I had an email from the recruiter asking to schedule an interview with no description of what type of interview (I assumed it would be a typical technical interview)
    - The interview was an awkward, non technical video conference interview, only one of the interviewers couldn't get his camera on, so he could see me but i couldn't see him. It was going over communication and interpersonal skills (e.g. how do you help someone that is struggling, how do you explain a database to a 10 years old).
    - The interview was over 2 weeks ago and I never heard back from anyone.

    Overall my experience is that the process is very unprofessional.
    I did not have an intro phone screen with a recruiter, explaining what the position is, verifying a potential fit, and making sure we are aligned in terms of comps, so basically I spend hours solving a coding challenge for a job I didn't even know I wanted - That's not very respectful of my time - the reason I did it is due to the high reputation and hype around github in the industry.
    During the interview it was clear to me that this is not a good fit and that the position doesn't appeal to me. We could have done that way earlier.
    Never getting back to me is also disrespectful. The least a professional hiring manage/recruiter could do is send a quick email saying there's no fit.

    Overall I would not consider applying for a position at github in the future nor recommend anyone else would do so.

    Interview Questions

    • How would you explain a database to a 10 years old?   2 Answers
    • Coding challenge: build a simplified version of battleship   1 Answer

    GitHub Response

    Mar 25, 2017 – Director

    Thank you for taking the time to provide your input about your personal experience at GitHub. As the Head of Global Talent Acquisition, I wanted to respond to your review personally. Although tough to read, we appreciate your feedback. We’re constantly refining our process to improve our approach to hiring and will incorporate your suggestions. That said, it is our standard practice to notify candidates directly if we’re not proceeding in the interview process. Per your comments, it sounds like we didn’t meet our internal standards for communication. Please accept my sincerest apologies for a breakdown in our process.

    If you are open to a continued discussion, I would like to connect with you and collect any additional feedback you might have for improvement. You can reach me at Kemjo@GitHub.com.

    Again, thank you for your input.

    Sincerely,
    Kem Boggs
    Head of Global Talent Acquisition


  7. Helpful (5)  

    Software Engineer Interview

    Anonymous Interview Candidate in San Francisco, CA
    No Offer
    Positive Experience
    Average Interview

    Application

    I applied online. The process took 3+ months. I interviewed at GitHub (San Francisco, CA) in September 2016.

    Interview

    Process took 3 months overall. First was screener questions from HR. Second was hangouts interview with 2 team leads, one of whom was to be my manager. Third round was a coding test where you were given access to a private repo that described a problem and had sample code to get you started. You developed a solution in your own time and sent a PR to signify your completion. Fourth round was a code review comprised of members from the team applying for. Fifth round was somewhere between a half to full day of google hangout interviews with employees from various departments.

    Interview Questions

    • What is one feature on github that you would change or add.   1 Answer
  8. Helpful (4)  

    Software Engineer Interview

    Anonymous Interview Candidate
    No Offer
    Positive Experience
    Average Interview

    Application

    I applied online. The process took 2+ weeks. I interviewed at GitHub in February 2017.

    Interview

    The first stage was to answer a couple of essay questions via email. After a couple of weeks, the next stage was a timed coding test. The coding test was automated, scheduled ahead of time, using my own equipment. There was plenty of information available to set up the proper environment in advance of the coding test.

    Interview Questions

    • One of the essay questions was, essentially, how do you approach software development?   1 Answer

    GitHub Response

    Mar 25, 2017 – Director

    Thank you for providing feedback on your recent interview with GitHub. We appreciate your input.


  9. Helpful (4)  

    Software Engineer Interview

    Anonymous Interview Candidate
    No Offer
    Neutral Experience
    Average Interview

    Application

    I applied online. The process took 3 weeks. I interviewed at GitHub in October 2017.

    Interview

    Take home test then phone interview. Test focuses on technical knowledge and isn't that difficult. The phone interview was longer (about 45 minutes) and focuses more on technical questions. Just prepare by practicing and you will do well.

    Interview Questions

    • Describe MVC and explain how to use it with an example.   3 Answers

  10. Helpful (11)  

    Software Engineer Interview

    Anonymous Interview Candidate in San Francisco, CA
    No Offer
    Positive Experience
    Difficult Interview

    Application

    I applied online. The process took 6+ weeks. I interviewed at GitHub (San Francisco, CA) in August 2018.

    Interview

    The entire process took about 6 weeks from receiving the first e-mail from the recruiter through the final rejection.

    Yes, the process takes a long time, but GitHub has a lot of applicants and a lot of people to weed through. I wish it would have moved faster, but I’ve come to find that the companies with the best jobs tend to have longer processes.

    I originally applied for a position from the greenhouse website.

    I received an invitation to give a recruiter my availability as well as sign an NDA. The conversation with the recruiter was great. They gave me the information about the position, the team, GitHub’s priorities when bringing in a candidate. She explained the process to me and what to expect.

    I was given a technical challenge with just an overarching idea to build a well-tested utility in Ruby with documentation for the app as well as my process, challenges, and future plans. It had some asks that seemed intentionally vague to see how I would approach and / or explain them. I have a full time job and was also interviewing with other companies, so I took deliberate time to work on it. I spend about 2 hours planning it out and about 12 - 15 hours building it over 6 days. I submitted.

    A week later, I received an invitation to submit my availability to chat with the team about my technical challenge. It was an interview with 4 people that the position would work closely with. I went through my code and explained my process and some of the decisions I made and why. It was a pretty open conversation where they also posed questions such as, “If you had a person working with you and an extra few days, how would you use that time to enhance this application?” and “What are some of the drawbacks or downsides of certain choices you made?”

    One week after that I received an invitation to fly out to GitHub HQ in San Francisco for about 5 hours of interviews with various members of peripheral teams and managers. GitHub flew me out on a Monday afternoon, sent a car for me at the airport, dropped me off at a hotel (that they also paid for) and I interviewed the next day.

    The final round was intense. It was 45 minute block interviews almost back to back with various people on different teams that work with the team this position was on. Each interview had a different theme: 1 for each of GitHub’s values as well as a diversity and inclusion interview.

    I was taken back to the airport after the interview, then had a wrap phone call with the recruiter. They went into detail about compensation and benefits as well as the every-other-week on-boarding on-site process. My only complaint about this process is that the recruiter tentatively attempts to schedule you for one based on how long you would need to give your current job. I tried to remain neutral about whether I got the position or not, but that one detail made it especially hard to think that since all of my other interviews went well, that I didn’t get the position.

    A week after the final round, I received a phone call from the recruiter where they said they were going with another candidate. It was heartbreaking, but they offered to help with anything they could and said to e-mail them freely. I asked to be referred to another team and am starting the process over again.

    The no-feedback policy is true and it makes sense. There’s not always a specific thing you did wrong, it truly could have been that another candidate was better. Would you want to receive a phone call where the recruiter said, “just have more experience” or “be less bad”? I did reach out to a few of the people I interviewed with and received advice that no being chosen shouldn’t dissuade me from interviewing for another (or the same) team sometime in the future and that this person didn’t get the job on the first try.

    Overall, despite a heartbreaking loss in the final round and the length of time it took. I think it was a great process and will definitely be shooting for a job at GitHub in the future.

    Interview Questions

    • What does diversity and inclusion mean to you?   1 Answer

Don't Miss Out On a Job You Love
Upload a resume to easily apply to jobs from anywhere. It's simple to set up.