Please log in to watch this conference skillscast.
Early this year Russell and the team decided it was time to invest some serious effort into refactoring and rewriting these systems to make changes easier, safer, and faster. They also had to find a way to do this without compromising their ability to deliver new features. During this talk, you will discover the practices and architectural choices they found helpful, and the lessons learned along the way.
Things the talk will explore:
Moving from a "distributed monolith" to a small set of well-factored, cohesive monoliths
Isolating DB access to a single (multi-app) repository
Defining interfaces between services using shared schema code
Moving from horizontal to vertical slices
What are the purpose of tests when you have a REPL?
Finding a middle-ground between example-based and property-based testing
Using docker-compose to spin up instant, complete dev and test environments
YOU MAY ALSO LIKE:
- Pathogens & Parentheses: How we use Clojure in the molecular surveillance of infectious disease (SkillsCast recorded in December 2014)
- Domain-Driven Design in Practice with Michael Plöd (Online Workshop on 13th - 15th December 2022)
- London Java Community Unconference (in London on 5th December 2022)
- LJC Live with Andrey Breslav - Shoulders of Giants: Languages Kotlin learned from (in London on 12th December 2022)
- Carving Microservices Out of the Monolith With Domain Storytelling (SkillsCast recorded in November 2022)
- Rethink Microservices (SkillsCast recorded in November 2022)
Taming a Huge, Sprawling System with Clojure
Russell is HealthUnlocked's Head of Engineering. After language-hopping quite a bit in his early career, he found Clojure a little over four years ago and since then he is happy to report that the grass has stopped looking greener on the other side. (Except, idk, Erlang/Elixir is pretty cool. And Elm is interesting...)