Profile
Senior front-end engineer and UX practitioner with over a decade of commercial software development
experience, specialising in Angular, TypeScript, accessibility and complex enterprise applications.
I currently help design and deliver a large-scale asset-management platform supporting Scotland’s transport
infrastructure. My work spans front-end architecture, accessible interaction design, automated testing, CI/CD,
stakeholder collaboration and developer mentoring.
Before moving into software engineering, I worked in enterprise infrastructure and systems administration.
That background gives me a broad understanding of the environments in which web applications are built,
deployed and supported.
Selected Work
Transport Asset-Management Platform
Professional project
An enterprise application used by approximately 600 people to support the management of critical transport
infrastructure across Scotland.
Lead front-end engineering and UX work across complex operational workflows, translating specialist
requirements into accessible and maintainable Angular interfaces.
Technologies and practices:
Angular, TypeScript, UX design, accessibility, automated testing, code review and developer mentoring.
Reusable Angular Components and Testing Strategy
Professional engineering initiative
Identified repeated implementation patterns across complex application workflows and developed reusable
Angular components and shared conventions to address them.
The approach reduced duplicated code, improved consistency and made common behaviour easier to test and
maintain. Supporting test utilities and expanded automated coverage increased confidence in subsequent
application changes.
The shared patterns are now used across multiple application areas and form the default approach for new
workflow development.
Technologies and practices:
Angular, TypeScript, component architecture, automated testing, accessibility and technical leadership.
Personal open-source project
A self-contained, CI-friendly npm command-line tool for identifying packages associated with known
supply-chain compromises.
Built and maintain the project independently, including its Node.js implementation, dependency-security logic,
documentation, release automation and automated threat-data updates.
Technologies and practices:
Node.js, npm tooling, CI integration, security-advisory data, documentation and release automation.