Hello
I’m Jonathan, although most people call me Jono. I’m a software developer based near Glasgow, Scotland, where I live
with my wife, our two sons and a growing collection of unfinished projects.
I spend most of my working life building web applications, solving problems and trying to make complicated things
feel simpler. Outside work, I write stories, play guitar, build things, go fishing and regularly become absorbed in
a new interest.
This site is a home for the professional and less professional parts of my life: the things I build, the subjects
I’m interested in and the projects that have escaped from my head into the real world.
What I do
I’m a senior front-end engineer specialising in Angular, TypeScript, user experience and accessibility. I enjoy
working on complex applications where thoughtful design and good engineering can make a genuine difference to the
people using them.
A lot of my work involves taking specialist or complicated requirements and turning them into interfaces that are
easier to understand. I’m particularly interested in reusable components, automated testing, accessible interaction
patterns and the small technical decisions that make software easier to maintain over time.
I also line manage and mentor other developers. I enjoy helping people work through technical problems, build
confidence and find solutions that fit the problem rather than simply reaching for the most fashionable technology.
You can read more about my professional experience in my résumé.
Things I make
A command-line tool for checking JavaScript projects for packages associated with known software supply-chain
compromises.
It began as a practical response to a real security problem and developed into a maintained npm package with
automated data updates, release tooling and support for continuous integration.
An offline-first journalling application for recording intentions, reflections and personal progress.
It also gives me somewhere to experiment with TypeScript, Web Components, service workers, IndexedDB and
progressive web application techniques.
Charlie Tough
I’m writing a middle-grade science-fiction story about Charlie Tough, a boy whose tendency to become travel sick
develops an unexpected connection to time travel.
The project combines several things I enjoy: science fiction, humour, strange ideas, illustration and the
challenge of writing something that children might genuinely want to keep reading.
Smaller experiments
My GitHub account contains a mixture of useful tools, experiments and projects created to solve very specific
problems. These include countdown timers, music tools, accessible websites and applications that seemed like a
good idea when I started them.
Some are polished, some are works in progress and some are useful mainly as a record of what I was learning at the
time.
Away from the keyboard
When I’m not writing code, I’m usually spending time with my family, cooking, writing, cycling or walking the dog.
I enjoy creative projects with a practical outcome, whether that’s designing something for a story or building a
small application. Much of the rest of my time is spent taking the boys to clubs, building LEGO and baking.
How I approach things
I tend to be curious, detail-focused and persistent. When something doesn’t work, I want to understand why rather
than simply make the error disappear.
I care about accessibility because software shouldn’t require people to adapt themselves to avoidable barriers. Good
accessibility often produces clearer interfaces, better structure and more resilient software for everyone.
I also value practical solutions. The technically cleverest answer isn’t always the best one, particularly if it’s
difficult for someone else to understand, maintain or use.
Elsewhere
You can find my public coding projects on GitHub and my professional
profile on LinkedIn.
For a formal summary of my experience, skills and professional development, see my résumé.