My work

I am a startup guy and software engineer. Currently I am taking some time off to work on personal and open source projects. Previously, I was founding engineer at HubSpot. I joined as the first full-time software engineer and spent seven and a half years building out a powerful suite of marketing tools. By the time I left, we had 10,000+ paying customers and were filing our S1 to go public as a billion dollar company.


Stallion - Blazing fast, rock solid, CMS for techies (Current)

Stallion is a new open-source content management system designed from the ground up for performance, stability, and customization. Use it to run anything from a simple blog to a corporate web site to a custom web application. Check out the web site or view the code on GitHub.

 

Grokky - Tools for managers (2014)

With a partner, I built a product to improve relations between managers and employees. Grokky helped managers run better 1:1’s by keeping track of notes and tasks, prompting people for agendas, and sending pre-meeting emails to remind people of meeting context.

The backend was written in Python/Flask, and the front-end was in Angular.

Here is a video demonstration of the product:

 

HubSpot Content Optimization System (2011-2014)

I was the tech lead for the team building the next generation of the HubSpot content tools. We have built tools for creating blog posts, landing pages, emails, and full web sites. Features include visual template building, a powerful templating language, WYSIWYG editing, A/B testing, and integration with the contacts system and analytics.

My personal responsibilities included: designing and/or reviewing overall architectual decisions, mentoring and doing code reviews for a team of 12 people, writing tens of thousands lines of code, working with the product manager to find the proper technical solution to business problems, attending usability sessions and proposing UI design changes, performing devops tasks to ensure we could have less than an hour of total downtime on our public facing pages over the course of a year.

The system was built in python running on django. The backend was implemented mostly as REST-ful API's, while the frontend used backbone and custom javascript.

   

 

HubSpot Analytics and Sources Application

I co-lead a team that built an analytics system that would allow our customers to discover where visitors so their site originated from and how they converted into customers and leads, in a set of easy to use charts and tables.

The project used python and java for the programming, and the log processing jobs ran on Hadoop.

Various Projects at HubSpot

In addition to the major projects listed here, during my seven years at HubSpot I have engaged in numerous smaller projects:

  • a sales tool to crawl web sites and discover what marketing products the prospect was using
  • an embedable javascript widget allowing visitors to follow the page creator
  • a desktop executable for Windows and Mac OX that watches a directory for changes and updates files, blog posts, templates, CSS files and other resources to the COS API
  • a prospects report that would display information about all web site visitors based on GeoIP lookups

 

HubSpot Content Management System - Version 1 ( 2006-2008)

When I joined HubSpot I took over the early prototype of the HubSpot content tools, which was a custom DotNetNuke installation running in VB on the ASP.NET stack. I converted it to C# and rebuilt the UI to make it something easy for marketers to use with a drop drop controls. I also built out features such as analytics dashboards, a drag and drop form builder, an inline content editor, and a browser based template editor.

   

 

GroupSharp 2005

My senior year at a college I founded a company to build a way for non-technical users to build and host an online database. I took the project from initial idea to the point where I was making money advertising via Google Adwords and selling subscriptions to the product. The company was "acquihired" by HubSpot.

 

Lanovision and Coffeeshop

During college I developed an application to share music and videos with other people in the dormitory.

 

Areas of Experience

  • Web applications in Python and Java
  • Building my own frameworks and tools in Python, including Sprocket for building aspect oriented API's, and Mockery for easy mocking in unittests.
  • Single page web apps using JavaScript, Angular, CoffeeScript, HTML5, Backbone.
  • Web applications and services in Java, using Hibernate, Jersey, and  (and in the older days, Struts)