- Head of Platform2016 - PRESENTEnvoy, Inc.
Technologies: Ruby, Ruby on Rails, Ember, Node.js, GoLang
- Designed a developer portal for viewing and debugging plugins.
- Engineered an event-driven, stateless microservices platform powered by AWS Lambda for building and deploying third party plugins.
- Created a developer CLI tool for bootstrapping, deploying, rolling back, and monitoring plugins.
- Created a platform independent Node.js SDK that allows plugins to be deployed to AWS Lambda, run locally, or hosted on a custom server.
- Created a hybrid async/synchronous event driver that enables plugins to break event handling into priority groups, allowing for in-flow actions contributed by third party services without adding unnecessary latency.
- Created a file-driven admin UI driver that allows plugins to specify configuration flow and UI as well as hook into relevant admin experience flows via a JSON document.
- Technical Advisor2017 - 2017Hubspot, Inc.
Technologies: Node, Hubspot API, Java
- Helped architect and develop a robust set of internal tools on both public and internal APIs for managing demo content and safely restoring and deleting data input by sales teams during demos.
- Full-stack Developer2015 - 2016Timely
- Built an AngularJS application that integrated with dozens of external services in order to pull activity and easily construct a time log based on externally tracked activity.
- Created a reporting tool with advanced live filtering options and analysis on personal, project, and employee time.
- Implemented an I18N currency system to correctly display currency data regardless of units, signs, or format.
- Created a time tracking engine with AngularJS that shows tracked time and live updates for values, while linking the user's tracking status and actions to external iOS and Watch apps.
- Created a library to track a model's state across multiple external sources, transform data into a single-source-of-truth format, determine any data changes after normalization, and generate conflict resolution events if relevant.
- Product Engineer2014 - 2016Ulyngo Inc.
Technologies: AngularJS, Laravel, CoffeeScript, AWS ElasticBeanstalk
- Created a peer-to-peer payment platform powered by Stripe.
- Integrated Stripe Marketplace to allow students to directly pay each other for items purchased on the platform.
- Created a messaging API and UX that allows users to communicate with each other through the web or mobile.
- Engineered a deal-making API that allows sellers to receive, counter, decline, or accept an offer on a listing.
- Created an API to provision multiple iOS devices per account and send relevant push notifications to each device.
- CTO2010 - 2015Rainmaker
Technologies: AngularJS, PHP, MySQL, Postgres, Node.js
- Created a lexing engine to parse text into syntax logic.
- Created a theming language similar to AngularJS for back-end compiling with a scope hierarchy, data isolation, and API data access.
- Created a MongoDB query syntax parser to drive advanced API querying and translate the syntax into SQL queries.
- Created a CMS driven by developer provided configuration, allowing for the creation of custom page types with different field combinations and types.
- Created a CRM that enables the management of donor profiles and analysis of past activity.
- Created an automated, multi-channel, event-based communication engine to schedule communication, and logic branching.
- Created a multi-channel, two-way communication inbox for support, allowing managers to SMS and email donors directly from the CRM.
- Created a crowdfunding application that tracks progress and allows crowdfunders to communicate with their supporters.
- Created a drop-in donation widget.
- Created an accounting tool to manage transactions, designate funds, refund transactions, send statements and receipts, and report on transaction activity.
- Integrated the CRM with direct mail and handwritten letter APIs to allow for automated non-digital communication.
- Created a Twilio-driven, text-to-donate application.
- Created an event system with multiple ticket types, PDF ticket generation, and attendee lists.
- Created a polling tool to manage polls and track results against donor profiles for the purpose of data collection.
- Created pledge tool to collect cause-driven signatures for a pledge.