Matt Jacobs

Experience

Senior Software Engineer / Engineering Manager at Etsy

July 2019 - Present

I joined Etsy as a Senior Full-Stack Engineer and was promoted to Engineering Manager after 8 months. I’ve worked primarily on seller tools — shop stats and messaging — while also leading a rewrite of our Open API.

  • As an engineer, co-led an update to the shop stats page. We rewrote PHP-powered endpoints that read from a key-value store and modernized our React app. I shared technical planning, project management, and forecasting responsibilities.
  • As an EM, oversaw a rewrite of Etsy’s Open API. I managed a team of 6 engineers and a technical writer that delivered 75 new endpoints and a code-generated documentation site. Our implementation leaned heavily on OpenAPI Spec, Docusaurus, and a custom-built schema generator. The endpoints were built on top of Etsy’s in-house PHP REST framework and included thousands of test assertions.
  • Handled career development, project/stakeholder management, and technical/release planning for the team. We released endpoints iteratively, starting with a published API contract, to ensure our third-party developers could migrate smoothly. The new API now serves millions of requests daily.
  • After 2½ years as an EM, I switched back to an IC role in the Frontend Enablement group. My team has been modernizing Etsy’s seller tools by upgrading our frontend state management to use TypeScript and Redux Toolkit. I’m personally focused on building (and teaching) design patterns for product teams.

Senior Front-end Developer at Tinybop

November 2016 - July 2019

I was the sole engineer and architect of two React/Redux applications, collaborated on UX design, and managed much of our AWS infrastructure. Tinybop Schools is a subscription service for WebGL-powered education models. The client app includes user management, a purchasing flow, and localization. Funbrain is a 20 year-old site with millions of pageviews a month and content in a variety of formats (there are games written in C!).

  • Developed and managed two JavaScript/React codebases that were built with Webpack. We managed state with Redux and used Jest for automated testing. We used a lot of higher-order components, and sometimes I still prefer them over hooks.
  • Implemented BEM-style CSS in Sass, and configured compilation via PostCSS/Autoprefixer. The web apps relied heavily on Flexbox and grid layouts.
  • Wrote the payments API for Schools. It was a Node.js/Serverless application that used Stripe for payment processing and was deployed with AWS API Gateway and Lambda.
  • Collaborated on our Python/Flask API for Funbrain that used Airtable as a datastore.
  • Managed our operations, which heavily utilized AWS for edge-caching (Cloudfront), autoscaling, load-balancing (software and hardware), continuous deployment (Codepipeline), and static storage (S3).

Developer/Designer at 29th Street Publishing

September 2014 - October 2016

29th Street worked with publications of all sizes to rapidly produce custom iOS content apps based on a proprietary iOS framework and content API.

  • Led development and design of our React/Redux headless CMS for publishing to iOS/Android apps.
  • Built a modular component library in Python/Flask for client-projects that required a web presence.
  • Built several endpoints and schemas in our Python Subscriber API, which followed the JSON-API spec and used marshmallow for its ORM.

Developer/Designer at ThinkUp

July 2013 - December 2014

ThinkUp was a pioneering web app that provided insight into one’s own activity on social networks. I was the designer and front-end developer responsible for turning a powerful open-source project into an addictive web app.

  • Designed a component library in Sketch to handle dozens of insight templates.
  • Built component templates for our custom PHP app using CoffeeScript and LESS, compiled with GruntJS.
  • Designed and built a crowdfunding marketing site that drew thousands of backers.

Cofounder at Kidpost

July 2013 - April 2017

Kidpost was a paid web app for sharing photos of your kids with thousands of users. I co-founded the bootstrapped company, working on weekly after completing the MVP sprint.

  • Built every aspect of the front-end for the Python/Flask subscription service, including payment, user management, and authentication.
  • Contributed to UX designs in Sketch, converted all assets into Jinja templates, and managed our front-end build system.
  • I pitched in on the backend (building proficiency in Python), helped maintain our stack in AWS, and worked on marketing and business development.

Chief Product Officer at OkCupid Labs

November 2011 - July 2013

Labs was tasked with building new social products from the ground up. I was recruited to develop new concepts, write front-end code, and assist with interaction design.

  • Led front-end development on Combosaurus, a custom Node/Express application written in Iced CoffeeScript (the “Iced” was await/defer syntax). We wrote our styles in LESS.
  • After a year, I was promoted to Chief Product officer, managing a team of 10 people and overseeing our P&L.
  • Launched three products with 75k users, instituted a data-driven approach to development, and set a new course for R&D in the Match Inc. group of IAC.

Senior Product Manager at SAY Media

November 2010 - November 2011

  • As the first New York-based member of the product team, I led the development of 2 new ad products responsible for 15% of revenue in my first six months.
  • Developed guidelines for agile product development and iteration, led a team of 6 designers/engineers, and created training materials for our 100+ person salesforce.

UX Engineer, Product Manager at Six Apart

November 2006 - November 2010 (Acquired by SAY Media)

  • Oversaw template development for the Services division, with clients like Major League Baseball, Advance Local Media, Gothamist, and Serious Eats; devised the best methods for large-scale blog deployments; and created flexible, scalable, and easy-to-manage content management systems.
  • Moved into product management, overseeing several feature releases for Movable Type that increased stability and improved performance for large datasets. I joined the TypePad product team, improving onboarding for inexperienced bloggers.
  • Architected the template system for TypePad Motion, a Python/Tornado-powered CMS that let brands quickly create a membership site, pulling content from social media sources around the web.