Zum Inhalt springen

Florent Beaurain: Optimizing Rails Tests at Doctolib Scale

07.10.2025 · 1 Std. 18 Min.

Shownotes

In this episode of On Rails, Robby is joined by Florent Beaurain, a longtime Rails engineer at Doctolib, home to one of the largest Rails monoliths in Europe with over 3 million lines of code and 400+ engineers. They explore how Doctolib’s team tackled massive test suite performance issues, including cutting one engine’s test time from seven minutes to under one minute. Florent shares insights from managing 84,000 tests, scaling across 10 PostgreSQL databases, and maintaining Rails upgrades across a fast-moving organization using systematic approaches like dual-boot deployments and careful backporting strategies.

Tools & Libraries Mentioned

  • AWS Aurora (PostgreSQL) – Production database platform, scaled to 10+ writers and 15+ readers.
  • Capybara – End-to-end testing of UI flows in the monolith.
  • Capybara Lockstep –JavaScript sync layer reducing flakiness in React-driven feature specs.
  • Datadog – Application performance monitoring for production systems.
  • Docker – Local PostgreSQL and other data stores.
  • FactoryBot – Identified as a major performance bottleneck in large test suites.
  • factory_fixtures – Shopify gem extending fixtures with inline factory-style overrides.
  • GitHub Copilot – Workflow automation and onboarding support.
  • Heroku CI – Previously used for parallelized CI builds before moving to custom infrastructure.
  • Jenkins – Original CI platform before scaling up to more powerful infrastructure.
  • Minitest – Primary test framework, used throughout the monolith with some extensions.
  • Packwerk – Used to modularize their monolith into engines with explicit boundaries and dependency declarations.
  • PostgreSQL – Core relational database behind their production and local environments.
  • React – Primary frontend framework, integrated into the Rails monolith via a single-page app architecture.
  • Ruby on Rails – The framework behind Doctolib’s 3-million-line monolith and most of their core product infrastructure.
  • safe-pg-migrations – Tool to reduce downtime risks during large-scale schema changes.
  • Sentry – Error tracking and visibility tool integrated into their release workflow.
  • Webpack Dev Server – Used locally to support React development alongside the Rails app.

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.

Alle Folgen von On Rails

Einstellungen

Darstellung

Sprache

Bestimmt, welche Sender dir auf der Startseite zuerst gezeigt werden.

Verlauf

Zuletzt gehörte Sender und Folgen und deine letzten Suchen liegen nur in diesem Browser.

Hinweise

Ein kurzer Hinweis, wenn ein Podcast, dem du folgst, eine neue Folge hat. Einzelne Podcasts stellst du über die Glocke auf ihrer Seite ab.

Konto

Favoriten speichern – in der App und auf der Website.

Tastenkürzel

/
Suche öffnen
Leertaste
Abspielen oder anhalten
← →
Im Player: 15 s zurück, 30 s vor (Folgen) · im Regal: nächste Kachel
↑ ↓
Im Regal: Ziel innerhalb der Kachel
Pos1 / Ende
Im Regal: erste bzw. letzte Kachel
Esc
Fenster oder Menü schließen
?
Diese Übersicht
Läuft gerade

Zur Senderseite

Als Nächstes

    Folgen mit „Als Nächstes“ vormerken – sie laufen nach der aktuellen Folge.