Hi, I’m Tristan McDonald 🌞
I build user interfaces to help people understand the services they rely on, and I write codebases that I’ll be glad to revisit in a decade. In teams I communicate clearly and work respectfully.
I have 14 years of experience as a software engineer, across various stacks and every stage of a product’s lifecycle, and before that I spent 10 years in design, logistics, and management.
My core expertise is in dependable JavaScript, advanced CSS, component templating, design-in-code, and data modelling. I have many years of experience with Django (with HTMX) and custom Python applications, and I recently built a reactive application in plain JavaScript because of the security restrictions of working in the defence sector.
My clients include the United Nations, Oxford University, and various NHS trusts, alongside many other organisations in healthcare, government, defence, FinTech, the NGO sector, and the private sector. I’ve led design workshops at Oxford University, designed the beta NHS style guide, and organised Bristol NodeSchool.
My main contribution to open source is Tenet CSS, a framework for building large-scale frontends. It fluidly interpolates type scale, white space, and element sizes, and provides tools to keep a codebase maintainable as it grows.
I also build my own applications. On the SaaS side there’s Platekeeper, a Django application which lets restaurants manage their menus and provides an API for diners to find dishes near them, and Tripkeeper, a React PWA for planning and storing every detail of a holiday in one place. In open source I’ve built Billkeeper, a command-line app for contractors to produce PDF invoices; DVPeasy, a delivery-versus-payment application which uses the blockchain as its only persistence; and Projectkeeper, a spec and tools for managing projects efficiently with AI.
I’m currently carrying out contract work for a Bristol-based manufacturing firm, auditing and improving their security and PHP-based backend systems, and planning for the company’s future growth.