Experience

Copilot.com LLC, President Denver, CO

2014 – Present

  • Successfully spun the product out of Fog Creek into its own company.
  • Lead development of new, updated versions of the client applications.
  • Building a team of highly competent customer service, QA, and developers.

Freelance Software Developer Denver, CO

2012 – Present

  • Designed and implemented an online fitness challenge using Django and Python.
  • Added features and fixed bugs on a web-based control panel written in CoffeeScript and Backbone.
  • Created, customized, and maintained a Wordpress website and blog to promote a local professional.
  • Other projects.

Snaposit, Founder & Software Developer Denver, CO

2012 – 2013

  • Started a new company to help photographers back up their photos.
  • Developed an online photo backup system using Django, Python, WxWidgets, and AWS.

Fog Creek Software, Software Developer New York, NY

2005 – 2012

  • Trello. Used CoffeeScript, MongoDB, Backbone.js, and Node.js to implement new features and fix bugs.
  • WebPutty. Led an R&D team to develop WebPutty, an online CSS editor and hosting tool. Used Python and Flask on Google App Engine.
  • Kiln. Created the original prototype of Kiln with a colleague for a programming contest. Used ASP.Net MVC, Python, and Mercurial to create a source control and code review system.
  • Copilot. Was part of a 4-person intern team that created the Copilot product from scratch in 10 weeks using Visual C++, C# and ASP.Net. Continued to do be responsible for Copilot's server development for two years. Also developed a subscription billing system that is still in use at Fog Creek.
  • Reviewed and interviewed almost 500 software development candidates.

Guidant Corporation, Software Development Intern St. Paul, MN

2004, Advanced Tools Development Group

  • Gathered requirements and wrote design specification for distributed test station utility.
  • Implemented user interface and utility controls in Visual C++ on Windows 2000.
  • Developed action recording utility on Linux in Java with Swing.
  • Wrote translators in Python to convert between several different scripting and testing languages.
  • Presented work to senior management, August 17, 2004.

Sandia National Laboratories, Software Research Intern Albuquerque, NM

2003, Data Analysis and Visualization Group

  • Implemented a volume rendering algorithm with C++ and VTK to find and display three dimensional boundaries in volume datasets.
  • Created a user interface in Tcl/Tk, allowing the user to interact with the 3-D model to isolate and enhance interesting features in the dataset.
  • Submitted code for acceptance into open source VTK.
  • Presented work at Sandia's Eighth Annual Student Symposium, August 5, 2003.

RioScan Software, Software Verification Intern Albuquerque, NM

2001, New Product Development

  • Assessed stability and usability of new Palm based barcode scanning software products using a variety of verification and testing methods.
  • Discovered, reported, and corrected software bugs in C++, Visual Basic, and Palm C.
  • Wrote and edited user manuals and product documentation.
  • Collaborated with developers to diagnose and correct software errors, expediting delivery by several months.

Education

Master of Science, Computer Science

Stanford University, Stanford, CA, January, 2006 to June, 2007

  • Artificial Intelligence Specialty.
  • Earned a research assistantship with the Stanford Logic Group.

Bachelor of Science, Computer Science and Economics Double Major

Rose-Hulman Institute of Technology, Terre Haute, IN, August, 2002 to May, 2005

  • Graduated Magna Cum Laude.
  • Dean's list 9 of 9 terms.
  • Completed a double major in three years.

Programming

Python, Django, Flask, C#, ASP.NET, Backbone.js, CoffeeScript, JavaScript, HTML5, CSS, SQL, Xamarin, Objective-C, iOS, Java, Android, C++, OpenGL, C, PHP, Flash