James
Andrews

I’ve been building web applications since 1996, playing music since the eighties, and taking photographs since the mid-2000s.

Self-taught at all three. It’s been the same habit every time — get curious, build the thing badly, keep at it until it isn’t bad.

Work

Two platform generations at Openbridge.

I joined pre-product in 2013 and built the first version of the SaaS application on my own — a Symfony API behind an Angular front end, nothing to production. Architecture, implementation, the third-party integrations, and the Linux and AWS underneath it.

In 2020 we replaced it. Different stack, same domain: I was the primary front-end engineer on the new application and carried the business logic across, walking the developer writing the Python API through the rules and the reasoning already baked into the old system. Two builds, two stacks, one product.

The front end I stood up on Angular 8 runs on Angular 21 today, upgraded the whole way rather than left to rot. Currently building the CLI that lets customers point their AI agents at the API.

openbridge.com →

Before this: Perl CGI on a regional ISP’s shared servers, agency work for L.L. Bean, Neiman Marcus, FedEx and General Motors, e-commerce for a consumer audio retailer, and a charitable giving platform I co-founded. Long enough to have watched several approaches arrive, win, and quietly stop being mentioned.

The long version — full CV →
Built v1
Symfony API, Angular front end, solo
Rebuild
Python on Lambda, Angular 8 → 21
Also shipped
Stripe billing, OAuth connection management, the move to Auth0

Get in touch

If you want something built, or you use one of the tools and something about it is wrong, I want to hear it.

me@jamesmandrews.com