_Biography
Senior full stack developer with over 17 years of experience. My arts background and love of frontend means I am passionate about good design, modern web standards, improving user experience (UX) and increasing accessibility (a11y).
_Skills
-
Frontend
HTML, CSS, TypeScript, Vue, React, Astro, TailwindCSS, Vite, ViTest, Jest, Puppeteer, Cypress, Storybook, Postman, BrowserStack, Docusaurus, iOS, Android, Git
-
Backend
Docker, Node, Express, Hono, Postgres, DrizzleORM, REST, GraphQL, OpenAPI/Swagger, Auth0, Python, Django, Flask, Ruby on Rails, Elixir, Ngrok
-
Platforms
AWS, GCP, Azure, CloudFlare, Netlify, Vercel, Firebase, Supabase, Neon, Heroku, Storyblok CMS, GitHub, GitLab, BitBucket
-
AI Models
GitHub Copilot, ChatGPT (structured output), Claude, Llama, Whisper, ElevenLabs
-
Audio Visual
Figma, Adobe Photoshop, Adobe Illustrator, Autodesk Maya, Blender, Adobe After Effects, Adobe Premiere, Reason
-
Productivity
Notion, Google Docs, Linear, JIRA, Office
-
Soft Skills
Excellent written and verbal communication skills, Excellent planning and coordination abilities, Applied team leadership skills, An eye for design, Passionate about user experience (UX) and accessibility (a11y), Compassionate, Staunch believer in solving problems instead of placing blame
_Experience
Senior Software Engineer @ Synervoz
-
Worked with our designer to redevelop several company websites using Astro and Tailwind. Storyblok was integrated as a headless CMS to allow content to be easily updated while still maintaining design standards.
Prototyped a documentation pipeline for the Switchboard SDK. Being a C++ project, Doxygen was used to generate the initial documentation data. I then wrote a set of scripts to transform the data to Markdown so that it could be used in Docusaurus.
Developed several metaverse prototype projects to demonstrate spatial audio techniques that can be enhanced by the SDK. These were developed in either Unity or BabylonJS and took advantage of WebGL for fast rendering, even on mobile.
Developed a “10-foot experience” to bring a customer’s music streaming to televisions. The application was built using React and Tailwind CSS and integrated with the devices using the television vendor libraries. We worked closely with our customer to integrate their new SDK for content delivery and media streaming.
Senior Lead Software Engineer @ Arternal
-
Lead a team of full-stack developers to develop several new products. We used these projects as an opportunity to update the technology stack to Vue 3, Vite, TailwindCSS and Hasura as our backend. This dramatically improved our ability to iterate while still being able to operate in parallel to the legacy stack.
Lead a payments project that allowed users to sell from their art collections. They could create invoices, calculate commissions and collect payments through various payment providers such as Stripe and Affirm.
Introduced workflows and initiatives that fostered a culture of communication. Pair programming sessions, weekly retrospectives, FullStory reviews, and a monthly 10% day all improved the communication between teams and departments.
Improved visibility into infrastructure to better detect incidents and implemented an incident management protocol to smoothly handle incidents. A status page was introduced to record these incidents and better inform customers.
Senior Software Engineer @ Metrist
-
Helped establish and implement much of the initial branding, including the landing pages as well as the application UI and UX. Used Vue 3, Nuxt and Tailwind to rapidly iterate on these designs as requirements changed.
Developed and maintained several service monitors that were used to ensure business-critical 3rd party services were still running correctly. These were part of the reporting system and would alert our customers if an availability threshold was crossed, letting them know if a service they relied on had degraded. These monitors were written in C# and deployed as AWS Lambda functions.
Marketing Software Engineer @ NPM
-
Worked remotely with the NPM marketing team as a dedicated marketing engineer. I would liaise with the engineering team on behalf of the marketing team, implementing features and adding content management capabilities to core products.
Some of the challenges I faced were dealing with a content system that was embedded within a mission-critical site. The engineering team had very little capacity for marketing maintenance so a long term strategy was devised to migrate marketing portions out of the app. I conducted investigations into the viability of this goal; researching existing CMS tool chains as well as 3rd party products that could be easily adopted. It was important that the marketing team had as much autonomy as possible while not interfering with the existing application infrastructure.
I was also responsible for implementing a bold new design for the NPM landing and marketing pages as part of their campaign to launch tiered Pro and Teams services. Special attention was necessary to integrate seamlessly with existing pages as the design employed a new colour scheme, high DPI graphics and a vastly more mobile-friendly experience.
_Education
Multimedia Design @ Durham College
-
Web development, graphic design, 3D animation, video production.
3D Animation @ Durham College
-
3D modeling, animation, rendering, and visual effects.
_Links
- GitHub
My open source projects and contributions.
- LinkedIn
My professional profile and network.
- StackOverflow
My contributions to the developer community.
- CreatorGuard
A client-side watermarking tool I built to protect artists.