انتقل إلى وضع عدم الاتصال باستخدام تطبيق Player FM !
Alexander Stathis: Scaling a Modular Rails Monolith at AngelList
Manage episode 514917841 series 3674688
In this episode of On Rails, Robby is joined by Alexander Stathis, a Principal Software Engineer at AngelList, where Rails powers complex investment, accounting, and banking business logic across a modular monolith structure. They explore how AngelList maintains conceptual boundaries in their codebase, uses gradual typing to influence their Ruby style away from Rails “magic,” and why they’ve adopted multiple async job solutions for different types of work rather than seeking a one-size-fits-all approach. Alex shares insights on consolidating microservices back into their monolith, creating the Boba gem to extend type generation capabilities, using production data subsetting tools for local development, and successfully onboarding engineers without Rails experience in under a month while staying current on Ruby 3.4 and Rails 7.2.
Tools & Libraries Mentioned
Active Job – Framework-agnostic job API built into Rails.
ASDF – Tool version manager.
Boba – AngelList’s Sorbet compiler extension.
Delayed Job – Database-backed job processor.
FactoryBot – Test data builder.
GoodJob – Postgres-backed Active Job processor.
GraphQL Batch Loader – Batching utility for GraphQL.
GraphQL Ruby – Ruby GraphQL implementation.
Linear – Issue tracking tool.
Money – currency handling library.
Packwerk – Shopify’s modular boundary enforcement tool.
Paperclip – Legacy file attachment gem for Rails (deprecated).
RSpec – Ruby testing framework.
Sidekiq – Redis-backed job framework.
Solid Queue – Rails 8 Active Job adapter.
Sorbet – Gradual static type checker for Ruby.
State Machines – Finite state machine support.
Tapioca – Sorbet RBI file generator.
Temporal – Workflow orchestration system.
Tonic – De-identified datasets platform.
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.
فصول
1. Intro and Welcome to Alexander from AngelList (00:00:00)
2. What keeps Alex “On Rails” and Active Record’s appeal (00:00:53)
3. AngelList’s architechure: monolith, engines, and microservives (00:02:28)
4. Consolidating a microservice back into the monolith (00:05:03)
5. Using Packwerk to maintain conceptual boundaries (00:09:15)
6. Avoiding Rails “magic” and Callback Hell (00:12:10)
7. Service layer approach and thin controllers (00:14:30)
8. Why AngelList needs multiple async job solutions (00:23:22)
9. How Sorbet influences Ruby coding style (00:35:58)
10. Creating the Boba gem for better type generation (00:45:28)
11. GraphQL vs REST and preventing N+1 queries (00:53:46)
12. Setting up local dev with production data subsetting (01:06:14)
13. Hiring engineers without Rails experience (01:23:26)
14. Book recommendations and where to find Alex online (01:27:03)
7 حلقات
Manage episode 514917841 series 3674688
In this episode of On Rails, Robby is joined by Alexander Stathis, a Principal Software Engineer at AngelList, where Rails powers complex investment, accounting, and banking business logic across a modular monolith structure. They explore how AngelList maintains conceptual boundaries in their codebase, uses gradual typing to influence their Ruby style away from Rails “magic,” and why they’ve adopted multiple async job solutions for different types of work rather than seeking a one-size-fits-all approach. Alex shares insights on consolidating microservices back into their monolith, creating the Boba gem to extend type generation capabilities, using production data subsetting tools for local development, and successfully onboarding engineers without Rails experience in under a month while staying current on Ruby 3.4 and Rails 7.2.
Tools & Libraries Mentioned
Active Job – Framework-agnostic job API built into Rails.
ASDF – Tool version manager.
Boba – AngelList’s Sorbet compiler extension.
Delayed Job – Database-backed job processor.
FactoryBot – Test data builder.
GoodJob – Postgres-backed Active Job processor.
GraphQL Batch Loader – Batching utility for GraphQL.
GraphQL Ruby – Ruby GraphQL implementation.
Linear – Issue tracking tool.
Money – currency handling library.
Packwerk – Shopify’s modular boundary enforcement tool.
Paperclip – Legacy file attachment gem for Rails (deprecated).
RSpec – Ruby testing framework.
Sidekiq – Redis-backed job framework.
Solid Queue – Rails 8 Active Job adapter.
Sorbet – Gradual static type checker for Ruby.
State Machines – Finite state machine support.
Tapioca – Sorbet RBI file generator.
Temporal – Workflow orchestration system.
Tonic – De-identified datasets platform.
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.
فصول
1. Intro and Welcome to Alexander from AngelList (00:00:00)
2. What keeps Alex “On Rails” and Active Record’s appeal (00:00:53)
3. AngelList’s architechure: monolith, engines, and microservives (00:02:28)
4. Consolidating a microservice back into the monolith (00:05:03)
5. Using Packwerk to maintain conceptual boundaries (00:09:15)
6. Avoiding Rails “magic” and Callback Hell (00:12:10)
7. Service layer approach and thin controllers (00:14:30)
8. Why AngelList needs multiple async job solutions (00:23:22)
9. How Sorbet influences Ruby coding style (00:35:58)
10. Creating the Boba gem for better type generation (00:45:28)
11. GraphQL vs REST and preventing N+1 queries (00:53:46)
12. Setting up local dev with production data subsetting (01:06:14)
13. Hiring engineers without Rails experience (01:23:26)
14. Book recommendations and where to find Alex online (01:27:03)
7 حلقات
كل الحلقات
×مرحبًا بك في مشغل أف ام!
يقوم برنامج مشغل أف أم بمسح الويب للحصول على بودكاست عالية الجودة لتستمتع بها الآن. إنه أفضل تطبيق بودكاست ويعمل على أجهزة اندرويد والأيفون والويب. قم بالتسجيل لمزامنة الاشتراكات عبر الأجهزة.