author profile image

Matt Reid

Lead Software Architect. Java, Node.js and TypeScript enthusiast.

Does this scenario sound familiar? You recently implemented a feature. Everything works perfectly, you ironed out a couple of little bugs and had great test coverage and were very happy with the code architecture. Now another developer comes along with a monster PR that rewrites it all. You check out...

I’ve been using Value objects a lot recently. Especially as I’ve been working with DDD. Lombok provides a convenient annotation to avoid writing lots of boilerplate code for Value object classes. The annotation will make the class final, add a constructor that takes all the arguments and make each field...

The old switch-a-roo There’s nothing more frustrating than finishing work on your feature only for Product to move the goal posts right? “The feature needs to do these 3 extra things now” or “we just realised that part won’t work” are dreaded words to developers. We just spent hours coding...

getaddrinfo EAI_AGAIN registry.npmjs.org I use a two step process for deploying changes to one of my apps, first docker-compose build app to build the latest image and then docker-compose up --no-deps -d app to replace the current version. Recently the first step in this process started hanging at the line...

We all love reading about the latest software developments trends and buzzwords but they can often turn out to be just that, buzzwords. For us at Small Improvements, Domain Driven Design (DDD) has really lived up to it’s own hype though and helped us build better software, faster and fewer bugs...