James Langridge
I'm a software engineer with an unorthodox, self-taught background. As a humanities graduate (French) and former in-house commercial lawyer for a multinational publisher, I'm a creative problem solver. With deep experience in TypeScript (React, Next.js), and some exposure to Rust and Angular, I've also written a good amount of C# recently. Enjoying experimenting with AI-Assisted software engineering.

Selected Projects
I like to build products that solve real problems for users, even in my personal projects. I also like to dogfood the software I build to really understand and develop the product. For all my personal projects, see my GitHub. For professional projects, see my CV.
A client management and scheduling system for personal trainers built with Next.js 15, PostgreSQL, and TypeScript.
Strava app for enriching activities with customisable weather data.
Comprehensive TypeScript/JavaScript library for parsing Garmin Connect export files.
A full-stack Raspberry Pi camera application featuring motion/audio detection with push notifications, photo capture, and a PWA app.
A real-time multiplayer Progressive Web Application for creating and playing custom bingo games.
Building
A C#/.NET APIthat aggregates Mars rover photos from multiple NASA endpoints and stores complete telemetry data in PostgreSQL, with REST/GraphQL API, panorama detection, and location-based search.
Reading
- Designing Data-Intensive Applications by Martin Kleppmann
- The Design of Web APIs by Arnaud Lauret
- A Philosophy of Software Design by John Ousterhout