SOLID in the Wild: Life When Your Software is Actually Soft
summary
Ships a real Spring codebase for a high‑traffic online marketplace and claims the team turns an eight‑day request to integrate a gnarly Canadian legacy shipping system into a working demo. Uses vertical modules (feature slices), dependency inversion with generic validators and shippers, Git --name-only to check change boundaries, abstract contract tests to prove behavior, and Java intersection types to compose narrow interfaces; 27,000 hours of pair programming and 458 people inform the process.
AI-written summary · about
chapters (19)
- 0:00Intro
- 1:23Reasonable question
- 3:29Single Responsibility Principle
- 4:02Technical layers
- 7:15Dependency Inversion Principle
- 8:08CUSTOMS VIOLATIONS
- 9:19Injection Inversion
- 12:03interface Packager
- 13:57LISKOV SUBSTITUTION PRINCIPLE
- 15:12What can't the compiler check?
- 16:38Teams implementing the details know the expectations
- 18:01Interface Segregation Principle
- 19:25Abstract logic Concrete models
- 20:28How do you specify behavior?
- 21:18Data model with more than one interface
- 22:03Intersection types
- 22:35Mix and match interfaces
- 23:00Find the shipper that takes the interfaces
- 23:53Contract test was the spec
related talks
46mHexagonal Architecture in Practice That Will Make Your Applications More Sustainable
33mFrom Enterprise Architecture to Software Design - Critical Thinking
46mFrom Chaos to Cohesion: Building Modular Monoliths in the Real World
23mOn the road from Monolith to Micro
33mSOLID Golden Hammer
16mShip Production Software in Minutes, Not Months
47mHexagonal Architecture in Practice, Live Coding That Will Make Your Applications More Sustainable
15mBol.com and the Accelerated Legacy Challenge
