Skip to content


Subversion checkout URL

You can clone with
Download ZIP
Fetching latest commit...
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.

Web Developer Applicant Exercise

To be considered for a developer position at Hedgeye, you must successfully complete these steps **

Please note: your code will be tested on Ruby 1.9.3 and the latest version of Chrome.

  1. Fork this repository
  2. In the why_hire_me directory
    • Add a file cover_letter.txt with cover letter type verbiage.
    • Fill out the questionnaire.txt and commit it
    • Anything else we should know. For example, one of your preferred development tools (editor, desktop app, etc.) and why you use it.
  3. In the simple_refactoring_exercise directory you will find some Ruby code that needs to be refactored.
    • An rspec spec is provided
    • Please refactor the implementation. Clarity and duplication are a given, flawed implementation is also likely.
    • Please note: feel free to change the specs, but they should all be passing when you turn in your code.
    • Leave a note about what you refactored and why. Calling specific named smells and specific named refactorings should be the norm.
  4. In the simple_public_timeline directory, please create a simple web app (use the Ruby framework of your choice. Suggestion: Sinatra is good for a tiny app like this) that looks close to the middle column in logged out state of the now defunct shown below Twitter public timeline
    • A headline with "Recent Public Tweets"
    • A smaller headline "What everyone on Twitter is talking about"
    • Displays 20 entries from twitter's public timeline. Use the data/API of your choice
      • For each entry, show the profile image, a link to the users profile, the tweet text, the time of the tweet, and source (i.e. "via Twitter for Android")
      • Barebones style is adequate. No need for nice CSS or text wrapping. But if you can do it, extra credit
    • Provide the previously described view in 2 ways
      1. Have the route / retrieve the Twitter data on the server side and then render
      2. Have the route /via_js retrieve the Twitter data with JavaScript and render it after the document loads
    • Required
      • .ruby-version, .ruby-gemset and Gemfile
      • at least 1 spec. More means extra credit
    • Tips
      • Do use gems, and JavaScript libraries.
      • If you are Ruby, JavaScript, and web development savvy, it shouldn't take you that long. A sample implementation, sans specs, is less than 100 lines of text total.
      • Don't get caught up on styling, that's what designers are for. But extra credit for improved styling, and/or looking like the original
      • Be careful with Twitter's rate limiting while testing.
      • Since Twitter retired the public_timeline, getting the last 20 entries is harder than it used to be. I suggest something like for ruby for access to sample ( There are other clever ways to get around that and a stream that looks like the old status
      • Write good code that you want people to see.
  5. Commit and Push your code to your fork
  6. Send a pull request, we will review your code and get back to you. If your GitHub profile does not include your name, please include your name in the pull request.

** The awesome idea of github pull request as job application task was previously done by Integrum here

Something went wrong with that request. Please try again.