- Worked on all aspects of a web client-server application from alpha through launch. The application include includes a Node.js backend, a web client, an iOS client, and a separate authentication and account management service.
- Designed and implemented the authentication and account management server.
- Built initial integration tests for the client-server application.
- Maintained web socket and html protocol documentation.
- Built several tools for debugging, benchmarking, and performance testing the client-server application
- As part of the backend team, made changes to the system to support load balancing, disaster recovery, and independently scaling parts of the application.
- Maintained and improved chef scripts, provisioned servers, and conducted releases including release planning.
- Mentored new Substantial developers and assisted developers working for our client.
Software Development Engineer
- Built animated visualizations showing student progress through the
curriculum. These visualizations sealed sales with strategic
- Implemented a promotional feature in two weeks. Once launched the
promotion generated several hundred leads and several thousand new
- Trained and mentored new developers and testers.
- Gave workshops on the adaptive engine to new teachers, sales
representatives, and customer service agents.
- Built data visualizations that allowed testers and teachers to find
bugs more easily and target testing in risky areas.
- Designed and implemented APIs connecting the primary rails app to a
data warehouse, a separate API application, and an external web
- Lead release efforts (triage, training, branching etc) for three major
- Built reports on student progress, account status, etc for both
internal and external users.
- Designed and implemented new features including API based login, bulk
account creation (e.g. importing whole schools), and a permissions
model (principals, teachers, and superintendents get access to
- Improved and refactored several features including student and parent
login, reports for teachers, and parts of the adaptive engine.
- Wrote scripts that simulated the flash client using Mechanize. These
scripts were used for performance testing and regression testing. They
also simplified integration testing between the rails development team
and the flash development team.
- Tested all Kindergarten and 1st grade content independently (300 lessons).
- Built and maintained Ruby on Rails application to track testing progress.
- Lead team of 2 (inclusive) testing 200 lessons for grades 2 and 3.
- Tested store functionality (billing, account creation, renewals) independently.
- Lead release efforts (triage, testing, deployment, and training) for
3 major releases.
- Wrote specifications for new components.
- Analyzed results of usability tests at local schools and produced
reports for teammates.
- Coordinated development and testing with an offshore team.
- Completed half of weekly deployments and a third of on-call shifts
for a period of 18 months.
Expedia Corporate Travel
Software Development Engineer/Test
- Lead automation efforts for Expedia Corporate Travel test team.
- Maintain automation framework written in C# and .NET.
- Extend existing automation to support multiple languages and countries.
- Design and implement automated tests for all new features.
- Prioritize the automation of regression test cases based on
complexity and impact.
- Develop tools in Java to assist manual testers with SSO authentication.
- Coordinate manual and automated integration and release testing.