Ruby on Rails
A full-stack web framework that prioritizes developer productivity — the framework that launched GitHub, Shopify, and Airbnb.
Ruby on Rails remains widely used at companies that built their products on it over the past 15 years — including Shopify, GitHub (partially), and many well-funded startups. While less common in new greenfield projects, Rails expertise is well-compensated at companies with existing Rails codebases, which represent a large share of the market.
Typical time to job-readiness: ~3 months.
Learning Ruby on Rails
Beginner
Learn Ruby fundamentals first, then Rails conventions: MVC structure, ActiveRecord ORM, generators, and migrations. Embrace the 'Rails way' early — fighting conventions costs time.
Intermediate
Full CRUD applications, background jobs with Sidekiq, RSpec tests, and basic deployment. Learn to detect and fix N+1 queries — they're the most common Rails performance problem.
Advanced
Service objects and design patterns for large codebases, performance optimization (caching, query optimization), and managing legacy Rails upgrades across major versions.
Key concepts
- Convention over configuration — Rails makes decisions so you don't have to
- MVC architecture: Models (ActiveRecord), Views (ERB), Controllers
- ActiveRecord ORM — database tables map to Ruby objects
- Migrations for versioning database schema changes
- RESTful routing: resources generate 7 standard routes automatically
- Gems and Bundler for dependency management
Common interview topics
- Explain 'convention over configuration' in Rails with an example
- How does ActiveRecord work and what is the N+1 query problem
- Walk me through how Rails routing maps URLs to controller actions
- How do you write and run a Rails migration safely in production
- What is the Asset Pipeline and what does it do