Software quality thrives not on excelling in one area but on maintaining competence across multiple layers of delivery. Each layer acts as a filter, removing around two thirds of defects. Focusing solely on one element, like exhaustive testing, leads to diminishing returns. Collaborative approaches across testing, CI/CD, and requirements prevent issues effectively.
Tag: Patterns
Turning requirements into product
I'm a software engineer at heart - I love writing code, deploying functionality, and seeing the impact it has. Even when I'm just shaving a few seconds off a repetitive task by removing an unnecessary button click - it's all about small improvements, often. So it might be surprising to hear, most problems which impact … Continue reading Turning requirements into product
Sagas and distributed transactions
Controversial opinion I haven't ever had any useful discussion about sagas with anyone at any company I've ever worked with. I've found the people who bring sagas up and make a song and dance about them, are generally the same people who tend to over-engineer solutions and have difficulty 'keeping it simple'. I'd like to … Continue reading Sagas and distributed transactions
CI/CD
I get so frustrated when I see perfectly talented DevOps engineers building pipelines which drive big bang thinking, and calling it CI/CD. Can you all please stop? Continuous integration and continuous deployment are two very special principals which drive high quality, prevent bugs reaching production, and generally help things get delivered quicker. Automation alone does … Continue reading CI/CD
Open vs Closed Distributed Processes
Distributed processes fall into two categories: open and closed. Open processes are started in one service and will finish in another after passing through any number of services in between. Closed processes are driven by one particular service from start to finish, and while other services may be involved, the originating service is in overall … Continue reading Open vs Closed Distributed Processes
Conway’s Shackles?
Does Conway's Law have a dark side?
Where Patterns go to Die
An essay on why software patterns become anti-patterns and how to avoid pattern rot.
Fitness function-driven development | ThoughtWorks
https://www.thoughtworks.com/insights/blog/fitness-function-driven-development?utm_source=linkedin&utm_medium=social&utm_campaign=tech A great post from someone who really understands the problem. Worth a read!
Scale or Fail
I've heard a lot of people say something like "but we don't need huge scalability" when pushed for reason why their architecture is straight out of the 90's. "We're not big enough for devops" is another regular excuse. But while it's certainly true that many enterprises don't need to worry so much about high loads … Continue reading Scale or Fail
Don’t Stream JSON Data (Part 2)
I've discussed the merits of JSON streaming in two prior posts:ย Large JSON Responsesย andย Donโt Stream JSON Data, ifย you haven't read these yet then take a quick look first, they're not long reads. I'm attracted to the highly scalable proposition of scaling out the consumer, so many requests can be made individually rather than returning a … Continue reading Don’t Stream JSON Data (Part 2)




