The Importance of Layered Software Testing

Effective software testing requires a layered approach rather than relying on a single best practice. Different categories of tests—unit, service-scoped integration, component integration, and end-to-end—each offer unique benefits. This strategy ensures robust coverage, addressing various types of problems and enhancing overall confidence in software quality.

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

Legislature and Off the Shelf Thinking

I'm always pleasantly surprised when I find an aspect of software delivery which I hadn't previously considered, or seen as fully as I might have. Today I was chatting with a colleague who it turns out has a long history in the business of superannuation (pensions, for those in the UK). I was expressing my … Continue reading Legislature and Off the Shelf Thinking

What’s Slowing Your Business?

There are lots of problems that prevent businesses from responding to market trends as quickly as they'd like. Many are not IT related, some are. I'd like to discuss a few problems that I see over and over again, and maybe present some useful solutions. As you read this, please remember that there are always … Continue reading What’s Slowing Your Business?

Integration Testing Behaviour with Mountebank

Developer's machine > dev shared environment > staging environment > UAT > production. Probably not exactly how everyone structures their delivery pipelines but probably not that far off. It allows instant feedback on whether what a developer is writing actually works with the code other developers are writing. And that's a really good thing. Unfortunately, it misses something... Each environment … Continue reading Integration Testing Behaviour with Mountebank

Going Deep Enough with Microservices

Moving from a monolith architecture to microservices is a widely debated process, with many recommendations and nuggets of advice available on the web in blogs like this. There are so many different opinions out there mainly because where an enterprise finds their main complexities lay depends on the skillsets of their technologists, the domain knowledge … Continue reading Going Deep Enough with Microservices