BBuilding and Deploying Software
A PagerDuty notification has just woken you up, there is a problem with your production site. You check the site and logs and everything seems OK at the moment, so you close the alert and try and get…
A PagerDuty notification has just woken you up, there is a problem with your production site. You check the site and logs and everything seems OK at the moment, so you close the alert and try and get…
I am learning Scala at the moment. One of the things that seemed strange is the ability to invoke methods in a number of different ways. For example all the following are valid and equivalent: Why…
You have adopted a microservices architecture and now have a number of services in different repositories. Perhaps you have created a template repository for these services and used this for all the…
Pulumi is an Infrastructure as Code tool, similar Terraform, except that instead of using a specialised language like hcl or yaml, you use general purpose programming languages including Javascript…
Getting your head around using Jest to mock dependencies, particularly with Typescript can be difficult. The documentation focusses on features, making it challenging to work out how to make use of…
The Twelve-Factor App describes a 12 principles for building Software-as-a-Service (SaaS) apps. The Third Factor "Config" states that there must be strict separation of config from code. It suggests…
In a service oriented architecture, different parts of the system domain are managed by different services. A Order Service may manage orders and order items, whilst a Customer Service manages…
It is common in software projects to encounter delays when you are trying to deploy the software or to get the system into production. Developers who have been working on the system struggle to…
Creating software involves doing something that hasn’t been done before - it is inherently an activity with uncertainty and risk. It is not surprising that software projects are late, use more…