My name is Andrew and I like making products. I'm a developer from Toronto and have been using many languages, frameworks, and technologies to make products for consumers and businesses since 2008.

If you like these things too, get in touch.

work history

  • 1Password (AgileBits, Inc.)   2016-
    • Staff Developer, Product Engineering
      • Lead many cross-functional squads and teams shipping dozens of features to millions of individual, family, and business customers across macOS, Windows, Linux, iOS, Android, Browser Extensions, and Web
    • Staff Developer, 1Password Core Features Lead
      • Team of 5
      • Lead the development of user-facing features in a cross-platform Rust codebase
      • Developed a collection of platform-agnostic view models in Rust to empower the native front-end apps to render 1Password data without requiring any business logic.
    • Mac/iOS Software Developer, 1Password for Mac and iOS
      • Team of 8
      • Development of new features and improvements for the award winning 1Password for Mac and iOS
      • Customer Support via Email and Discussion Forums
  • Autodesk   2011-2016
    • Team Lead, Principal Developer, Digital Manufacturing Group
      • Team of 6
      • Partnered with Mattel to develop products to showcase uses for 3D Printing in making toys both at home and at scale in factories
        • Developed a Unity application to let kids mix-and-match body parts to make unique figures, ready for printing
        • Developed iOS/Android/Web apps for setup and one-touch-printing of toys using the Mattel ThingMaker 3D Printer
        • Integration and testing with prototype 3D Printer hardware via RESTful APIs
    • Senior Developer, Autodesk Consumer Group
  • Logitech   2008-2011
    • Tech Lead, Mobile App Developer, Embedded App Developer, Harmony Remote Controls Division
      • Team of 4 to 8
      • Logitech Revue with Google TV:   Embedded Android software & iOS app
      • Logitech Harmony Link:   Embedded Java software & iOS app
      • Logitech Harmony 900:   Embedded Lua & C software
      • Logitech Harmony 1100:   Embedded Lua & C software