Skip to content

Instantly share code, notes, and snippets.

Embed
What would you like to do?
A technical challenge we give to our Ruby on Rails applicants in order to evaluate their coding proficiency.Job description: http://www.alphasights.com/positions/ruby-developer-london or http://www.alphasights.com/positions/ruby-developer-new-york

Update: I no longer work for the company and this challenge is no longer used, but I'll leave the gist here in case people want to practice.

Alphasights Technical Challenge

Using Ruby on Rails we would like you to create a simple expert search tool. The application should fulfill the requirements below. The source code must be placed in a public repo on GitHub. The application should be deployable on Heroku.

  • I enter a name and a personal website address and a member is created.

  • When a member is created, all the heading (h1-h3) values are pulled in from the website to that members profile.

  • The website url is shortened (e.g. using http://goo.gl)

  • After the member has been added, I can define their friendships with other existing members. Friendships are bi-directional i.e. If Sasha is a friend of Ash, Ash is always a friend of Sasha as well.

  • The interface should list all members with their name, short url and the number of friends e.g. Taylor http://goo.gl/3io1P (3)

  • Viewing an actual member should display the name, website URL, shortening, website headings, and links to their friends' pages.

  • Now, looking at Taylor's profile, I want to find experts in the application who write about a certain topic and are not already friends of Taylor.

  • Results should show the path of introduction from Taylor to the expert e.g. Taylor wants to get introduced to someone who writes about 'Dog breeding'. Claudia's website has a heading tag "Dog breeding in Ukraine". Bart knows Taylor and Claudia. An example search result would be Taylor -> Bart -> Claudia ("Dog breeding in Ukraine")

  • Optional: prefering h1 over h2 and shorter introduction paths when ordering results.

  • Bonus points for not using Twitter Bootstrap or any other CSS framework (We want to see how you structure your CSS).

We encourage you to use gems and libraries for everything except the search, where we want to see your algorithm. We are looking for a simple, clean, elegant design, tests and all round understanding of the full stack e.g. Ruby, Rails, CSS (or SASS), HTML (or HAML), JavaScript (or CoffeeScript).

@icorson3

This comment has been minimized.

Copy link

@icorson3 icorson3 commented May 1, 2018

Hi! FYI, I stumbled across this challenge when googling "Rails Technical Challenges". I hope that you take my suggestion as something of value rather than criticism:

As an Instructor at a code school, the language in your challenge is quite gendered. This may discourage diverse people (especially women) from applying to your company.

I would suggest changing the names in your challenge to gender neutral names or using multiple types of names to emphasis users. If you would like to talk more about this, I am happy to at ilana@turing.io. Thanks!

@GavinRay97

This comment has been minimized.

Copy link

@GavinRay97 GavinRay97 commented Aug 10, 2019

@icorson3

Imagine having nothing better to do than complain on the internet about how free materials published on someone’s personal time for the benefit of others does not conform to your personal ideology.

@icorson3

This comment has been minimized.

Copy link

@icorson3 icorson3 commented Aug 10, 2019

@tadast

This comment has been minimized.

Copy link
Owner Author

@tadast tadast commented Aug 12, 2019

Hi @icorson3, sorry I did not see your earlier comment as I had my notifications turned off. The gist is very old and no longer in use, I no longer work for the company (they are doing really well BTW) i.e. I had forgotten this gist even exists.

I've updated the text based on your suggestions and will leave it online in case someone wants to practice. Let me know if you have ideas for further improvements. Thanks.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
You can’t perform that action at this time.