![Ben Johns](/_next/image?url=%2Fimages%2Fheadshot2_512x512.jpg&w=640&q=75)
Ben Johns
Creator & Software Engineer
The essential design concepts I use when developing an evolvable, distributed system.
Read MoreContinuous Delivery with ATDD and Feature Flags
January 26, 2024
How can we continuously integrate small changes while practicing acceptance test-driven development?
Read MoreTDD and Testing Behavior
January 24, 2024
The importance of testing behavior when using test-driven development
Read MoreFoundant Technologies
January 3, 2024
Orchestrate or Choreograph?
January 16, 2021
When is it appropriate to use centralized orchestration versus event-driven choreography?
Read MoreDomain vs Application Logic
December 6, 2020
When defining a business problem and planning its solution, keep the two conversations separate...
Read MoreCommands and Queries with a Message Broker
November 15, 2020
Modern message brokers provide many important benefits to a distributed system...
Read MoreClean Architecture and SOLID Cheat Sheets
November 1, 2020
Printable cheat sheets to help remember some of Uncle Bob's valuable contributions to the industry
Read MoreWhy Terraform?
December 25, 2019