Familiarize yourself with the application. Your task will be to parse a new dataset that you'll receive on the spot.
- Create as many files/classes as you need
- Use anything you need from Ruby standard library
- Don't change files under
spec/fixtures
- Don't change the existing functional test at
spec/functional/app_spec.rb
- Don't worry about invalid input data (if your solution works for the sample data, that's what we need)
- Adherence to Ruby's conventions and idioms
- Cleanliness/Clarity: Is the intent of the code obvious? Are things named appropriately? Please void overly clever solutions.
- Consistent style: We don't expect you to follow a specific Ruby code style, but you should be consistent with your choice.
- Elegant Object-oriented Design - please avoid imperative or functional coding style. Typically the good solutions will have at least two classes other than
PeopleController
- Maintainability: How flexible is the code?
- Testability: Is it easy to test the code? Please demonstrate with unit tests.
- Use DRY, KISS and SOLID responsibly to find the sweet spot between an under-engineering and over-engineering.
- Clone the repository, open this directory, and run
bundle install
. - Run
bundle exec rspec
. All tests should pass. - Create a branch to work on the solution.
- Add the received files in the project (a functional spec and a new fixture).
- Write code until the new functional test passes.
- Push your branch and create a pull request on GitHub.