Late, Over Budget, & Happy: Our Service Extraction Story
summary
A project to extract a social-feeds GraphQL service from a decade-old Rails monolith promises months and becomes 3-month estimate → 9 months, with operability saved by an Elasticsearch-backed Newswire microservice that indexes StreamEvent rows and exposes a GraphQL query API. Decisions include zero-downtime migration, supporting an unmaintained iOS app, and scaling ES from underprovisioned three to five nodes; outcome: slower launch but measurable engagement and new features.
AI-written summary · about
chapters (12)
- 0:00Intro
- 0:50Hindsight boxes
- 5:52Problem: growth cap
- 11:12Why service extraction?
- 13:28Lead with realistic optimism
- 14:15Pretend boundaries are easy to violate
- 15:23Why skunkworks?
- 17:54Never start a project with a single engineer
- 25:39Tie your choices to actual business needs, not professional orthodoxy
- 29:27Success often feels like failure when you're going through it
- 32:31Every big technical project is a bet
- 34:03You don't have to know what you're doing
related talks
37mGraphQL and Microservices or How we learned to be big and small at the same time
32mThe Hasura Journey
27mScaling a Rails Monolith w/Event Driven Microservices
46mMoving to GraphQL
43mAPI Optimization Tale: Monitor, Fix and Deploy (on Friday)
23mAbstracting a Service - A Case Study in Forward Thinking with SOA
43mUsing Rails Engines to Supercharge Your Team
34mGoing Serverless with GraphQL
