Andrew Patton
Current Employment
Time Sites — Principal Front-End Engineer June 2022 – Present
Time Sites is a collaborative web publishing platform that enables teams to design, build, publish, and maintain their web properties
Selected Projects
Time Sites June 2016 – Present
Build and architect experiences across the Time Sites (née “Brandcast”) platform, from the design studio to the web publishing server. Collaborate closely with our lead product designer to design and build new features and UXs in a scalable and maintainable way.
React.js Oct. 2016 – August 2018
Modified the react-dom
library to make it possible to render React components into an iframe
and worked with the core React team to land those changes in facebook/react.
UIKit (and other modules) March 2015 – Present
Maintain UIKit, a high-quality UI toolkit, audile, a mobile-friendly web audio player, and react-higher-event, a declarative API for listening to events outside of a React component.
Cinémathèque Québecoise Oct. 2014 – June 2015
Lead developer and architect of a multilingual Solr-powered search application built with FuelPHP and a sibling WordPress-powered publication site for Québec’s official film archives.
Trica Furniture March 2014 - Aug. 2014
Built a WordPress-based multilingual product catalogue with a custom responsive theme, custom interactive sliders and image galleries, and a custom-built authoring experience.
Jewish General Hospital Library Search Dec. 2013 – March 2014
Built a fast and maintainable multilingual Solr-powered search front end, based on my initial design, for a hospital library using Handlebars and vanilla JS.
Open Source Contributions
React, immutable.js, jsdom, wp-cli, AMP, flow, vimeo/player.js, browserslist, react-dnd, CSSOM, jest, fbjs, react-draggable, timeago.js, draft.js, react-higher-event, uikit, audile, selection.js, bezier-easing-editor, gogs, PrestaShop-webservice-lib, affixing-header, onscrolling, socket.io, diffDOM, AtomLinter/linter-jscs, react-number-editor, basecamp/trix, react-color, redux-form, react-numeric-input, hood.ie, react-async-script-loader, underscores.me, nvalt-prime, jquery-requestAnimationFrame, jquery-smooth-scroll, wp-plugin-in-github, WordPress-Wiki
Programming Languages and Technologies
- Git and the GitHub flow, including interactive rebasing, managing remotes, git hygiene
- The command-line interface (bash)
Front-End
- JavaScript
- Functional programming
- React with Redux or Jotai for state
- Remix, the full stack web framework
- Static typing via typescript or flow
- BDD/TDD (jest and vitest)
- End-to-end testing with cypress
- CSS and HTML
- Flexbox and CSS Grid
- Web performance and web vitals
- Mobile web development
Back-End
- AWS: DynamoDB, AppSync, Lambdas, S3, Cognito, Amplify
- Cloudflare Workers and Pages
- Node.js
- GraphQL and REST
- iOS with Swift
Other Interests
Music production and composition I love music and play piano. I’ve played a couple of shows in Montreal with a previous iteration of the Sontag Shogun project and was coach of the band Slowest Runner. Also, I like making music, and, when feeling inspired, sharing the results.
Education
McGill University, 2003 – 2007 BA in Cultural Studies, with a Minor in Music Technology
Languages
I speak and understand Spanish and French fluently.