Open in app
Home
Notifications
Lists
Stories

Write
James Collerton
James Collerton

Home

About

Pinned

How I Would Design… An API Rate Limiter!

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. …

Software Development

9 min read

How I Would Design… An API Rate Limiter!
How I Would Design… An API Rate Limiter!

Published in The Startup

·Pinned

A Trip Through Spring Security

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 round two core concepts: Authentication: Verifying you are who you…

Spring Security

8 min read

A Trip Through Spring Security
A Trip Through Spring Security

Published in Nerd For Tech

·Pinned

A Crash Course in Caching

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 stores previously used or computed…

Cache

11 min read

Getting That Cache Money
Getting That Cache Money

Pinned

AWS Kinesis with Java

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…

AWS

8 min read

AWS Kinesis with Java
AWS Kinesis with Java

Published in BBC Product & Technology

·Pinned

Rebuilding the BBC moderation platform

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. Whether it’s a child uploading a picture for their favourite CBBC show…

Software Engineering

5 min read

Rebuilding the BBC moderation platform
Rebuilding the BBC moderation platform

Jul 31

How to Write Requests for Comments (RFCs) and Architecture Decision Reviews (ADRs)

It’s three letter acronym (TLA) time! Audience This article is aimed at Software Engineers looking to document the decisions they make day-to-day. It will focus first on how to write up an idea so that others can offer opinions (requests for comments). …

Software Development

6 min read

How to Write Requests for Comments (RFCs) and Architecture Decision Reviews (ADRs)
How to Write Requests for Comments (RFCs) and Architecture Decision Reviews (ADRs)

Jul 22

Actionable Leadership Techniques for Software Engineers

Concrete steps you can put into practice today! — Audience This article is aimed at Software Engineers looking to expand their arsenal of tools for leadership. It is not general advice on being a leader, but more a set of techniques you might employ day-to-day. Each of the areas is worth their own, independent investigation on top of this article…

Leadership

7 min read

Actionable Leadership Techniques for Software Engineers
Actionable Leadership Techniques for Software Engineers

Mar 11

How I Would Design… A Search Engine!

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. …

Software Engineering

7 min read

How I Would Design… A Search Engine!
How I Would Design… A Search Engine!

Feb 25

Knapsack Problems

🎶 I love to go a-wandering, a knapsack on my back 🎶 — Audience This article is aimed at engineers with a reasonable understanding of algorithms but who are looking to learn about the knapsack problem. The examples will be written in Java, so a superficial understanding will be useful, but even without it you should be able to muddle through. We will also…

Coding

3 min read

Knapsack Problems
Knapsack Problems

Feb 11

A Crash Course in Greedy Algorithms

Gimme, Gimme, Gimme — Audience This article is aimed at engineers with a reasonably good understanding of programming, data structures and algorithms. It is mainly based in Java, so an understanding of the language is very useful. However, as long as you appreciate its core concepts you should be fine. Argument Greedy algorithms are used in…

Coding

7 min read

A Crash Course in Greedy Algorithms
A Crash Course in Greedy Algorithms
James Collerton

James Collerton

Principal Software Engineer at the BBC

Following
  • Netflix Technology Blog

    Netflix Technology Blog

  • Pinterest Engineering

    Pinterest Engineering

  • Design at Meta

    Design at Meta

  • AirbnbEng

    AirbnbEng

  • Skyscanner Engineering

    Skyscanner Engineering

Help

Status

Writers

Blog

Careers

Privacy

Terms

About

Knowable