Ruby on Rails development
Our home framework. New builds, rescues, upgrades, and the long-term care in between.
Overview
Rails, done properly, stays cheap to change
Rails is fast to start with and easy to make a mess of. The difference a few years in comes down to the boring things: a clear domain model, real test coverage, and dependencies that were never allowed to drift.
We build that way from the start, and when we inherit an application that did not, we make it true again in steps rather than by rewriting.
- Upgrades to the current Rails and Ruby release
- Test suites that run fast enough to be used
- N+1 queries and slow endpoints found and fixed
- Background jobs that fail loudly, not silently
- Deployment you can run without us
What’s included
Where we spend our time
New applications
Greenfield products built on the current Rails release and a small, deliberate stack.
Version upgrades
Move from an old Rails and Ruby version to current, one safe step at a time.
Rescue projects
Take over a codebase nobody wants to touch and get delivery moving again.
Performance tuning
Profile the real bottlenecks — database, cache, and job queue — then fix them.
Test coverage
Add tests where risk actually lives, so releases stop being an event.
Maintenance
Security patches, dependency updates, and monitoring on an agreed cadence.
Process
How the engagement runs
-
01
Audit
- Codebase and dependency review
- Performance baseline
- Prioritised findings
-
02
Stabilise
- Critical fixes
- Test coverage
- CI and deployment
-
03
Move forward
- Feature delivery
- Regular upgrades
- Shared roadmap
Stack
Tools we reach for
- Ruby on Rails
- Hotwire
- PostgreSQL
- Redis
- Sidekiq
- Solid Queue
- RSpec
- Kamal
- Docker
Let's talk about what you are building
Tell us where you are — an idea, a half-built product, or a system that needs a steadier hand. We will reply with a practical next step.