What can Spring do to help me secure my application?

Audience

This article is aimed at developers with a solid understanding of the basics of Spring and web security. It marries up the two concepts, concluding with a worked example of using Spring Security with Spring Boot.

Argument

Spring Security is centred…


An introduction to caching principles

Audience

This article is aimed at developers with a reasonable understanding of how the internet functions, contemporary application architectures and AWS.

It will cover what caching is in a more general sense, the motivation behind using it, and then deep dive into specific implementations.

Argument

A cache…


An introduction to Kinesis using Apache Camel and Spring Cloud Stream

Audience

This article is aimed at developers with a reasonable understanding of Java and Spring, but no experience whatsoever with AWS Kinesis, Apache Camel or Spring Cloud Stream. It will explain the role of message brokers, introduce Kinesis and conclude with a worked example based on Twitter data.

Argument

Message Brokers

Message brokers act…


Automated container deployment, scaling, and management

Audience

This article is aimed at developers with a basic knowledge of Java and Docker looking to understand how Kubernetes fits into contemporary software development.

We will aim to cover containerisation, container management and the basics of Kubernetes, finishing off with a worked example using…


Creating an amazing space for audience participation!

At the BBC, we put audiences at the heart of everything we do, so it’s important they feel they have a safe space to interact with all of our online products. …


A system design demonstration

Audience

This article is the next in my series of how I would design popular applications. It is recommended (although not entirely necessary) to read the previous posts I’ve helpfully compiled in a list here. …


Optimisation for the Nation!

Audience

This article is aimed at engineers with a rudimentary experience of algorithms, looking to take their first steps into dynamic programming. A solid knowledge of recursion is required, as well as some awareness of bit operators.

We will be implementing the techniques in Java, so a…


A system design demonstration

Audience

This article is the next in my series of how I would design popular applications. It is recommended (although not entirely necessary) to read the previous posts here, here and here. …


API Gateways in Spring

Audience

This article is aimed at developers wanting to learn more about Spring Cloud Gateway. Specifically we will be using it to extract and transform data from API request headers, but the overall techniques are recyclable for a number of purposes.

It will assume a small amount…


Deploying to ECS with the AWS Cloud Development Kit, CodeBuild and CodePipeline

Audience

This article is aimed at engineers looking to understand a little bit more about the DevOps offerings from AWS. It assumes a small amount of familiarity with CI/CD, AWS, Docker, containerisation frameworks, Infrastructure as Code (IaC), and React…

James Collerton

Principal Software Engineer at the BBC

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store