Principal Applications Architect (Web Platform Team)
Oracle2017 - Present
Turned an Innovation Day project that I created into a critical business tool that exposed
a visual workflow to collect, compare, publish, and deploy application configurations
from across multiple product lines in a central and consistent interface. This reduced
implementation and setup costs by 50%
(NodeJS, React, OpenAPI)
Developed the architecture to expose our 50+ customer energy insight widgets natively
within our utility customer websites as custom elements instead of iframes.
This drastically improved the load time and integration experience for our customers.
(Webpack, NodeJS, SASS)
Successfully led the ingress routing datacenter migration into the Oracle Cloud using
an F5 Load Balancer. I turned 20,000+ lines of nginx/HAProxy routing configuration,
which was handcrafted over the previous 10 years, into tested and consistent configuration
driven ingress rules. (F5 iRule, TCL, Chef)
Software Architect
Opower (acquired by Oracle)2015 - 2017
Responsible for hiring, mentoring, and leading backend and frontend web-focused platform engineers.
Developed a suite of test automation tooling to standardize our browser test ecosystem. (Selenium, NodeJS)
Leveraged our widget build platform to develop sales tools to configure client demos of our real products on demand and inject them directly into the customer site, fully configured to match their branding and user flows (React)
Led the automation of our Merger and Acquisition licensing compliance audit and remediation across
a massive and diverse set of applications and repositories. (NodeJS)
Developed a Slack bot that became central to the workflows of our entire organization,
injecting contextual information about JIRA, GitHub, Jenkins, Nomad, PagerDuty, etc.
into conversations.
Senior Software Developer
Opower (acquired by Oracle)October 2013 - 2015
Turned an Innovation Day project into the foundational SDK and production content server
that still powers our internal widget development teams today and powers all of our production
client facing websites and embedded SDK. This platform serves over one million requests per
day (NodeJS, Koa, Webpack)
Established a docker based autoscaling Jenkins infrastructure in AWS CloudFormation which I handed
off to our Release Engineering team to run after it was established. I also created a
standardized Groovy Jenkins Pipeline DSL framework for defining and running our microservice
CI/CD pipeline.
Developed a tool to visualize our application relationship graph and associated metadata.
This provided key discoverability and onboarding of new (and old) employees to the vast
ecosystem of microservices and their roles and owners. (Cytoscape, NodeJS)
Principal Engineer
WiserTogether, Inc. February 2013 - September 2013
Led the development of an interactive D3.js powered visualization tool that powered our healthcare decision tool
Developed a foundational Javascript framework for external contractors (built on on-top of Backbone.js) to ensure a consistent approach to frontend javascript applications
Established out automated frontend testing suite for our growing single-page applications using Mocha/Chai/Karma.
Spearheaded the development and Open Sourcing of several libraries used to grow our Backbone.js testing capabilities
Director of Software Engineering
Draker Laboratories 2011 - 2013
Architected the core time-series data system to replace an aging MySQL solution with a highly scalable service backed by Clojure, Cassandra, and RabbitMQ
Established an Agile process to facilitate a rapid development and release cycle that significantly increased customer and company responsiveness and transitioned us from a release every few months to multiple releases a week
Successfully designed, developed, and led the technical merger of our product with our acquired company over two months to differentiate us at our largest industry trade show in an increasingly dense competitive landscape
Oversaw and negotiated a software staff increase as well as a company merger from five software developers to a fifteen-member software development team consisting of QA, Design, DevOps, and Developers
Automated the internationalization (i18n) of the web application into Japanese, allowing for seamless extension to alternate languages
Senior Manager of Technology Solutions
Public Broadcasting Service 2005 - 2011
Started as a senior developer and moved on to manager
Successfully launched the nationally recognized PBS LearningMedia service that powers 40+ PBS/partner educational sites
Architected and developed the RESTful API service for the educational content service that runs PBS LearningMedia
Designed and converted our system architecture to an auto-scaling, load-balanced cluster with a configuration management system to allow for automated/repeatable deployment of our production/staging/development environments
Manage and inspire a team of 5 passionate, creative and diverse in-house developers along with multiple off-site contractors
Coordinate all product releases and development as lead architect and developer
Direct projects through all phases of development (scope, requirements, use cases, design, prototyping, development, and launch)
Originate budgeting, project scheduling and, application & server architecture
Provide coordination with product management, program management, operations, IT, and marketing/sales
Crafted a software development life-cycle that fit the culture of PBS and implemented it into project intake and development processes
Delivered multiple successful projects resulting in the growth of the technical team from 2 to 6 individuals to accommodate demand