When it comes to the web, there are several different job titles and roles, some of which can be confusing. My research has found that many people have trouble understanding the roles of a web developer, web designer, programmer and software engineer. I’ve recently gained a Masters in Computing (Software Engineering), and I thought I’d make some attempt to describe my understanding of the different roles and job titles based on over 20 years of […]

I’ve been working on a web service that I’ve been building in Spring Boot, however one issue I’ve come across is that when Spring Boot comes across a problem, the structure of the JSON response it generates doesn’t match the structure of errors I’m generating in endpoints. The problem with this is that the clients of the service are required to interpret multiple error response structures, which really is unnecessary. The structure of a default […]

In this article, we will briefly look at the strategy pattern, its benefits and how to apply it to system design. The strategy pattern is classed as a behaviour pattern; it allows the behaviours of a class to be changed at run time. To illustrate how to apply the strategy pattern, we’ll start with a simple class diagram which describes relationships between objects in a make-believe system. Vehicle – an abstract class which details the […]

“What is a design pattern?”. A design pattern is a kind of template that describes how to solve a problem, it can be used in many different situations and is used to solve common problems that occur in software design. I will attempt to put that definition into some context. Imagine you are a kitchen designer and you design kitchens for restaurants. Years of experience may have taught you that in a professional kitchen, certain […]

Signup to the Newsletter

Get useful tips on web application development and software engineering.