Skip to content

Instantly share code, notes, and snippets.

@gadimbaylisahil
Last active September 26, 2022 11:18
Show Gist options
  • Save gadimbaylisahil/09ef47d5749afaeb225b78a00c062719 to your computer and use it in GitHub Desktop.
Save gadimbaylisahil/09ef47d5749afaeb225b78a00c062719 to your computer and use it in GitHub Desktop.
Ruby on Rails - basic take home assestment project

Aim of the task

To assess the ability of the candidate to setup and deploy a simple Rails application with different services to cloud.

Task Description

  • Build a form that takes the following information from the user:
    • First name
    • Last name
    • Date of Birth
    • A URL to post this information to
  1. Save this information in a database table once the form is submitted and schedule a background job to be processed in 10 seconds (in any background processing framework of choice. It can be sidekiq, delayed_jobs, good_jobs...)

  2. Background Job should be responsible for posting the information of the user to mock API endpoint. You can create mock API endpoints by using a free service such as https://beeceptor.com/

  3. Write a single integration test or several unit tests in the framework of your choice(rspec, test-unit) that test the developed functionality.

  4. Deploy the application to any cloud of your choice (Digital Ocean, Heroku, AWS, etc...). Cloud Provider of choice is not important, you can choose the one that has easiest integration.

Requirements

  • Application has to be developed in Ruby programming language. Framework does not matter, but Ruby on Rails has the easiest setup.
  • Repository should be available in Github
  • Application has to be deployed

Bonus points

  • Deployment is automated in any CI tool(Github Actions, Cirlce CI etc...)

You can skip background job configuration, but we prefer if you have it configured, as it will asses your ability to setup and configure unfamiliar tools.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment