Full-Stack TypeScript engineer with 10+ years of experience building user-facing applications using technologies such as React, Next.js, Node.js and GraphQL. My key areas of focus are Developer Experience, Design Systems and Accessibility. I strive to architect elegant and scalable solutions based on the latest technologies and practices.
Skills
TypeScript
Next.js
React
Redux
Apollo
GraphQL
PostgreSQL
tRPC
Node.js
Styled-Components
Jest
Webpack
Rollup
Storybook
Figma
Experience
Design Engineering Consultant
Provided individualized training to designers and engineers in the use of Figma, implementation of design systems, and strategies for streamlining handoff processes.
Created UI mockups, code examples, supporting documentation and infographics tailored to illustrate concepts such as the relationships between designs built in Figma and their implementation in React/HTML/CSS.
Senior Software Engineer I
Shipped a multi-phase design system foundations project in under four months for our Web, iOS and Android platforms as part of a cross-functional team of designers and engineers.
Developed a scalable design token theming solution with code examples and documentation to support the migration of our legacy web application.
Collaborated with design team to migrate over 450 icons and illustrations to SVG, reducing our component library's bundle size from 36mb down to 3.2mb, a savings of 1125%.
Directed discussions on accessibility, design tokens, and design documentation as leading member of a weekly cross-functional design system committee.
Mentored peers in WAI-ARIA accessible user interface patterns such as keyboard interactions, tab focus management, and ARIA attributes.
Built internal tools including interactive code-snippet sticker sheets in Storybook, a modern GraphQL IDE with custom authentication support, and image asset optimization scripts.
Software Engineer II
Responsible for the development of a Next.js based micro-frontend application platform as a member of a platform team, which enabled dozens of product teams to build and ship features independently.
Migrated several internal libraries to TypeScript, including a design system consisting of over 200 components, and mentored teammates in the usage of TypeScript.
Established and applied new code quality standards using ESLint and TypeScript through the creation of a shared configuration package.
Created a CLI tool which unified the developer tooling interface in order to standardize the build, linting, and unit testing of applications and libraries while reducing dependency churn.
Full Stack Engineer
Developed user interface for Template Sandboxes, a core product feature which enables users to easily build and share their own customizable and reusable starter projects.
Established internal dogfooding process for using the product to prototype and build new features, such as a crash handler page which streamlined user's ability to file bug reports.
Documented coding style guidelines and refactored legacy components to adhere to industry standard best practices.
TypeScript SDK for Discord's public REST API. Features a functional architecture optimized for tiny bundle sizes and schema definitions providing out-of-the-box validation. Built as a monorepo with automated publishing and includes 500+ integration tests.
Schema-based data mocking library for Valibot using Faker.js. I built this library alongside a PR that added a reflection API to Valibot which enabled third-party authors to create their own tools and integrations.
Daily word puzzle mini-game built with the latest features of Next.js and Vercel, such as Edge Functions, Edge Config, Cron Jobs, and the Next.js 13 App router.