Senior Software Engineer with 20 years experience designing and developing software projects including C/C++ on embedded systems, and back-end web services in Python.
Senior Software Engineer March 2015 to CurrentAmazon - Herndon, VA
Developer on next generation AWS VPN service that moved from reliance on 3rd party "big iron" routers to a distributed architecture. Currently rolled out to all 10 AWS regions, utilizing tens of thousands of EC2 instances and a number of other AWS services.
Responsibilities include feature development in Python and Scala, as well as operational duties such as region build-outs and 24-hour on-call support.
Senior Software Engineer March 2012 to December 2014Cyan, Inc. - Petaluma, CA
Back-end software in
Python for a website running both on Amazon's AWS service as well as in a
customer-hosted mode. On AWS the site
consisted of numerous servers including web servers, job servers, DB servers,
and more. Frameworks and toolkits used
include Django, Celery, Boto, MySQL, Solr, and OrientDb. Cyan has since been purchased by Ciena.
Senior Software Developer/Platform Team Lead October 2004 to April 2012Calix Networks - Petaluma, CA
Wrote device drivers for embedded telecom
hardware running Linux for devices ranging from hardware/software watchdogs,
I2C and Ethernet switch chips.
Created framework under
Linux for new multi-card product. This
involved task definition and creation, as well as management of timers, message
queues, mutexes, and logging APIs. All
software engineers on the product use this framework.
Enhanced CUP, the Calix
Upgrade Program. Worked on both the
embedded side (implementing major features such as patching and reset
optimization) and the workstation based Java application (writing code used to
configure and control the upgrade's progress).
Software Engineer January 2004 to October 2004Alcatel - Petaluma, CA
Member of a four-person team
implementing software upgrade for the LS7201 DLC. Upgrade on this system required support for a
number of different legacy line cards, many with varying interfaces, as well as
for newly designed line and control cards.
Also provided missing elements such as detailed test cases, and
automated test scripts.
backup/restore for the LS7201.
Enhancements included creating a single file backup, and simplified
database selection criteria during startup.
Software Engineer April 2000 to December 2003Gluon Networks - Petaluma, CA
Software upgrade for
dual controller telephone switch with line cards. All aspects of upgrade including packaging of
releases, download, fallback, and compatibility were addressed.
Database backup and
restore for dual controller telephone switch.
Manual and automated backups were provided. Backups were both local and remote.
implemented editing portion of Selective Call Acceptance feature (the first SLE
feature to be implemented on Gluon switch).
Master of Science : Computer ScienceUniversity of Oregon - Eugene, OR, USA
Bachelor of Arts : Computer ScienceUniversity of California, Santa Cruz - Santa Cruz, CA, USA