Work Experience

SolarWinds Cloud // Remote

Senior Developer (Sep 2016 – present)

  • Spearheaded streamlined APM UI development
  • Headed up Docker-based development stack & supported ECR/ECS deploy
  • Built read-side APM data service in Python, then rebuilt in Go
  • Web application development (Python, Ruby, Javascript/React, Docker)
  • Chatbot development (Python, Javascript, Coffeescript)
  • Data pipeline development (Python, Go, Java, Docker, Clickhouse)

AppNeta, Inc. // Boston, MA

Senior Software Engineer (July 2016 – Sep 2016)

  • Re-integrated with a scrum team
  • Led effort to deploy user & org service

Development Manager (Aug 2014 – Jul 2016)

  • Managed two Scrum teams. (11 reports)
  • Built both teams from the ground up. (12 hires)
  • Implemented lightweight Scrum process and transitioned ownership of process to engineers.
  • Analyzed requirements and helped resource stories for performance monitoring tool.
  • Spearheaded cross-organization technical integration of network and application data.
  • Guided migration from homegrown JS framework to React and Flux.
  • Introduced lightweight QA process and hired QA personnel.

Senior Software Engineer (Mar 2013 – Aug 2014)

  • Designed and built features for TraceView. (Python/Pylons, Javascript, MySQL, AWS)
  • Built backend loader process to offload archival data into BigQuery. (Python, RabbitMQ, BigQuery)
  • Championed unit testing and code review. (Jenkins, GitHub)

FlipKey, Inc. // Boston, MA

Senior Software Engineer (Oct 2012 – Mar 2013)

  • Built internal marketing tools. (Python/Django, Javascript/Backbone, MySQL, MS Access)
  • Championed unit testing and code reviews. (Jenkins, ReviewBoard)

Compete, Inc. // Boston, MA

Senior Software Engineer (Dec 2010 – Oct 2012)

  • Software architecture for compete.com, currently serving about 1M page views/month.
  • Software design and development for data-rich marketing intelligence portal. (Python/Django, Javascript/Backbone, MySQL)
  • Managed technical debt backlog.
  • Championed unit testing efforts. (Jenkins)
  • Established Python coding standards. Reviewed code for design. (ReviewBoard)
  • Championed metrics-based approach to performance analysis. (JMeter, ApacheBench, AppNeta.)
  • Prepared and delivered many internal technical talks.
  • Employed many other software development tools and practices. (continuous integration, virtualization, Scrum, CoffeeScript, Node.js, PhantomJS.)

Psynchronous Communications // Woburn, MA

Consulting Systems Programmer (Dec 2010 – Oct 2017)

  • Ongoing support for web and mobile applications.

Engineering Lead (Mar 2007 – Dec 2010)

  • Developed and supported Python web analytics application. (Python, Javascript, MySQL)
  • Developed an iOS application, BrewLab, with over 2000 downloads. (Objective C)
  • Developed other web applications in support of clients and campaigns. (Javascript, PHP/Drupal, Python)
  • Designed and administered high-availability Linux cluster. (VMWare, DRBD, MySQL)
  • Managed several contractors and coordinated consultants' efforts.

TurnHere, Inc. // Emeryville, CA

Architectural Consultant (Aug 2007 – Oct 2007)

  • Data modeling to support a video production pipeline. (MySQL)
  • Prototyped workflow automation application. (PHP)
  • Selected a permanent architect candidate.

HomeGain.com // Emeryville, CA

Systems Software Manager (Jan 2006 – Mar 2007)

  • Developed a prototype DevOps group. (5 reports)
  • Managed systems architecture and tooling for 750k pageview/month website. (Python/Zope, Oracle, MySQL, CORBA)
  • Designed/developed home valuation application. (Python/CherryPy, C++, Postgres)
  • Managed integration of home listings product. (IIS, SQL Server)
  • Pioneered performance analysis. Gathered and studied performance metrics, developed remediation plans. Achieved 2000% improvement in one subsystem.
  • Managed transition from CVS to SVN, evolved backup strategy, scripted server buildouts, evolved configuration management.
  • Championed (pre-)Agile processes.

Application Development Manager (Feb 2005 – Jan 2006)

  • Player/coach role. (4 reports)
  • Reviewed business specifications.
  • Resourced new initiatives. Provided designs, broke out tasks, assigned workload.
  • Rebuilt SOA framework. Replaced ILU with CORBA. (Python)
  • Designed/implemented usage-based listings publishing service. (Python/Zope, Oracle)
  • Designed/implmented affiliate reporting system. (Python/CherryPy, MySQL)

Senior Software Engineer (Nov 2002 – Feb 2005)

Software Engineer (Nov 2000 – Nov 2002)

  • Designed/implemented subscription management/billing service. (Python, C, Oracle)
  • Restructured large portions of SOA-based web application. (Python/Zope, Oracle)
  • Designed/built features for consumer-to-agent matching. (Python/Zope, Oracle)

Round1, Inc. // San Francisco, CA

Software Developer (Mar 2000 – Nov 2000)

  • Developed WebObjects applications and tools software. (Objective C, Java, Perl.)
  • Coordinated external contractors' work on custom server software.
  • Designed and automated lightweight build/deploy process.
  • Prototyped automated testing measures.
  • Created developer training materials.

UConn Health Center // Farmington, CT

Technology Coordinator (Jul 1999 – Mar 2000)

  • Developed, maintained, and supported automated billing solution. (Perl, Access, VB, shell)
  • Developed websites. (PHP)
  • Administered Solaris and Linux workstations.
  • Trained and supported regional medical librarians on tech issues.

Gcom, Inc. // Savoy, IL

Technical Writer & Webmaster (Jan 1996 – Jul 1999)

  • Wrote API and administration documents for protocol software.
  • Developed CGI and sample programs in Perl, C.
  • Developed website.

Education

University of Illinois at Urbana-Champaign // Urbana, IL

Master of Science, Library and Information Science (Aug 1995 – Jun 1998)

Southern Illinois University at Carbondale // Carbondale, IL

Bachelor of Arts, English (Aug 1989 – Aug 1992)

Public Speaking

Diving into the Wreck // PyCon (Portland, Jun 2016)

  • Postmortem analysis of some common performance problems
  • Code repo at GitHub
  • Video at YouTube

Code Review, Revision, and Technical Debt // PyCaribbean (Santo Domingo, Feb 2016)

  • How we learn to write and its implications for code review and technical debt
  • Video at YouTube

Performance by the Numbers // PyCon (Montréal, Apr 2015)

  • Overview of performance measurement techniques
  • Video at YouTube

Show Some Spine // Boston Django Meetup (Nov 2011)

  • Tutorial on using Backbone.js with Django.
  • Slides at SlideShare.
  • Event page at Meetup