Skip to content

Miguel Conde & Peter Compernolle: Inside Gusto’s Rails Biolith

November 3, 2025 · 1 h 33 min

Show notes

In this episode of On Rails, Robby is joined by Miguel Conde and Peter Compernolle from Gusto, where they work on a "biolith"—two distinct Rails monoliths serving 600+ engineers. Peter leads the HIPAA-compliant benefits domain, while Miguel is extracting the time product from the main monolith. They explore how Gusto identifies boundaries, manages temporal data, handles eventual consistency, and navigates the trade-offs of GraphQL federation.


🧰 Tools & Libraries Mentioned

ActiveAdmin: Admin UI for Rails.

after_commit_everywhere: Run code after commits.

Datadog: App and CI/CD observability.

FactoryBot: Build test data.

GraphQL: API layer for SPAs.

Kafka: Event streaming backbone.

Packwerk: Enforce boundaries in monoliths.

PaperTrail: Model change auditing.

React: Front-end framework.

Sidekiq: Background job processing.

Sorbet: Gradual Ruby types.

TypeScript: Typed JavaScript.

explicit_activerecord: Guard writes to models.

Ruby Koans: Learn Ruby by practice.

Cracking the Coding Interview: Interview prep book.

Gusto Engineering Blog: Posts from Gusto engineers.

Send us Fan Mail

On Rails is a podcast focused on real-world technical decision-making, exploring how teams are scaling, architecting, and solving complex challenges with Rails.

On Rails is brought to you by The Rails Foundation, and hosted by Robby Russell of Planet Argon, a consultancy that helps teams modernize their Ruby on Rails applications.

All episodes of On Rails

Settings

Display

Language

Decides which stations you see first on the home page.

History

Recently played stations and episodes and your latest searches are only stored in this browser.

Notifications

A short notice when a podcast you follow has a new episode. Turn off single podcasts with the bell on their page.

Account

Save favorites – in the app and on the website.

Keyboard shortcuts

/
Open search
Space
Play or pause
← →
In the player: back 15 s, forward 30 s (episodes) · in a row: next tile
↑ ↓
In a row: target within the tile
Home / End
In a row: first or last tile
Esc
Close window or menu
?
This overview
Now playing

Go to station page

Play next

    Add episodes with “Play next” – they play after the current episode.