A good way to onboard a new developer:
app/models) and walk them through the important models.
Bonus points if you have an UML diagram of your schema. If you don’t then at least draw the most important tables and relationships.
config/routes.rb file and list the important entry point of the application.
Gemfile and walkthrough important gems. There are the standard ones (
redis), and some other more confidential but important for the project.
Have a look at the
rake tasks for everyday development.
For instance, we have a list of commands to run to dump a production DB to be able to easily mount it locally on the dev machine and debug an issue. This kind of information should be somewhere in the
Talk about the production infrastructure.
Is it Heroku? AWS? Something else? How secrets are handled?
.env? figaro? New fancy Rails 5+ credentials?
What are the hard dependencies of the Rails app I need to develop?
What are the external APIs/Services on which the rails app depend?
Stripe? S3? Cloudinary? The
Gemfile might help detect those
How assets are handled?
There is a new way since Rails 5:
webpacker. Is it used? Does it completely replace the asset pipeline? Are there both? Is the Rails app just an API with a full JS front-end (React/Ember/Angular/etc.)?
Then consider signing up for my newsletter. It's a collection of fascinating finds, usually about psychology, technology, finances, philosophy, and whatever else catches my interest. I also include new articles, and book notes.