Taro Logo

Senior Software Engineer Interview Experience - San Francisco, California

March 1, 2017
Negative ExperienceNo Offer

Process

I applied for a role online and heard back from a recruiter one week later regarding the position. I was then followed by an explanation about an online coding quiz. The coding quiz, as of March 2017, consists of implementing a Battleship game in a pre-made Rails application. The effort is timed, with a maximum of two hours.

While the job application stated GitHub was open to hiring software engineers unfamiliar with Rails, the requirement of using Rails in the coding quiz proved otherwise.

Questions

For this coding challenge, you'll build a simplified version of Battleship. You'll have 3 ships to place on a 10x10 grid, which is the battleground. Each cell in the battleground is identified by its position on an x,y axis, with [0,0] being the cell in the bottom-left corner.

Each ship is 1 cell wide and 3 cells long. On initial placement, each ship is oriented vertically.

To initialize the playing field, you'll receive a 2-dimensional array where each element contains the x,y coordinates of each ship's topmost cell.

Your game interface will be a basic HTTP API. You should assume that you are implementing a spec that has already been published to clients, and they will use the spec to learn how to interact with the game.

We want you to flesh out the provided BattleshipsController so that the create action accepts a 2-dimensional array (represented as a string) that contains the topmost cell coordinates of ships to initialize the playing board.

Follow these guidelines:

  • Fix basic spelling and grammar mistakes.
  • Add newlines and spacing as appropriate.
  • Format lists with bullet points when they are present in plain text.
  • Add newlines in appropriate places to make the text less dense.
  • For numbered or bulleted lists, keep list items close together without extra newlines between points.
  • Do not format into a bulleted list if there are fewer than 2 items to display.

While doing this, MAKE SURE TO RESPECT THE ORIGINAL TEXT AS MUCH AS POSSIBLE. Don't add entire phrases or sentences – at most, we should add a verb here and there if it's missing. The final word count of the cleaned text should be within 10% of the original text.

Interview Statistics

The following metrics were computed from 4 interview experiences for the GitHub Senior Software Engineer role in San Francisco, California.

Success Rate

25%
Pass Rate

GitHub's interview process for their Senior Software Engineer roles in San Francisco, California is very selective, failing most engineers who go through it.

Experience Rating

Positive50%
Neutral0%
Negative50%

Candidates reported having mixed feelings for GitHub's Senior Software Engineer interview process in San Francisco, California.