| Objective: |
To obtain a lead/senior position in the field of software
development or management, which allows me to utilize both my
technical and leadership skills.
|
| Qualification Summary: |
I have extensive experience developing software and problem solving.
At both Microsoft and Yahoo, I have developed high performance, high
traffic web-based server products. At Energy Innovations and
through FIRST I have worked on low-resource embedded systems. I've
also held many leadership roles, including 2½ years as a
manager. I learn new skills quickly and have a variety of
interests.
|
| Education: |
Carnegie Mellon
University Pittsburgh, PA
- Major: Electrical and Computer Engineering
- Minor: Computer Science
|
Graduated (B.S.): May 1998 |
| Computer Skills: |
Primary Languages: C/C++, Perl
Additional Languages: Java, LISP, Scheme, LabVIEW, Pascal
Operating Environments: Linux, Unix, Mac OS X, Windows 2000 / XP /
Server 2003 / Vista
|
| Professional Experience: |
Contractor
Open42 (stealth-mode
startup) Los Angeles, CA |
November 2009 - present |
|
Technologies used: Linux, Apache, MySQL, Perl (LAMP)
|
|
Senior Development Engineer
Energy
Innovations Pasadena, CA
|
June 2008 - September 2009 |
|
Sunflower HCPV (High Concentration Photo-Voltaic)
- Designed and developed the software for the Tracker Control
System
- Implemented a two-axis stepper motor controller with
quadrature optical encoders
- Implemented a multi-module controller including
- ZigBee communication layer
- Multiple open-loop sun location algorithms
- Power-based closed-loop sun tracking
- Maximum Power Point Tracking control of DC-DC Converter
- Designed PC control system including
- Weather monitoring
- Logging and data storage in SQLite3
- Web-based interface for control and monitoring
- Assisted in development of electronic control boards
- Selected microcontrollers
- Reviewed schematics
- Identified hardware bugs
Technologies used: C, ZigBee, SQLite3, PIC Microcontrollers, svn,
LaTeX
|
|
Engineering Manager
Yahoo Search Marketing,
Yahoo Inc Burbank, CA
|
September 2005 - May 2008 |
|
Domain Match
- Managed full time employees, interns and contractors
- Acted as "scrum master" for our agile development team
- Actively participated in design, architecture and code
reviews, and had "final say" on architecture and code
changes to the front-end server
- Worked closely with Product/Project Management and Quality
Assurance teams to coordinate development and release
schedules
- Responsible for delivering a high quality build to QA every
other week
- Launched an updated product every other week, achieving
100% on-time launches, and a record one production bug in
2006 and zero production bugs in 2007
- Responsible for 40-50 projects per year including developing
new small and large features, researching technologies for
future projects, improving performance, requesting new
hardware and generating reports to evaluate our product
quality
- Promoted a culture of excellence in development, including
design and code reviews, documentation and unit tests; when
code is handed to QA, it is expected to be bug-free
- Helped grow the team to twenty developers
Technologies used: Perl, Apache, XML, Berkeley DB, CDB, svn,
Bugzilla
|
|
Senior Developer
Yahoo Search Marketing,
Yahoo Inc (formerly Overture) Pasadena, CA
|
January 2004 - September 2005 |
|
Domain Match
- Developed new tokenizing and matching algorithms to
significantly improve the relevance of results returned.
- Significantly improved the performance of the product in
terms of CPU load, response time and sustainable queries per
second.
- Mentored summer interns.
- Served as team lead in the absence of our regular lead.
- Interviewed candidates for Domain Match, Sponsored Search
and Content Match, and helped improve the interviewing
process
- Helped develop consistent coding style guidelines used by
both DM and SS
- Helped grow the team from two developers to seven
Technologies used: Perl, Apache, XML, Berkeley DB, CDB, svn,
Bugzilla
|
|
Software Design Engineer
Microsoft
Corporation Redmond, WA
|
July 1998 - March 2003 |
|
SharePoint Team Services version 2
- Developed the STS migration tool, \texttt{smigrate.exe},
which migrates sites from STS v1 to STS v2, or between two
different STS v2 sites.
- Designed the FWP file format, which is a CAB file with an
XML manifest describing the contents of the site.
- Designed and developed many of the core classes used by
smigrate, FrontPage Solution Packages, STS Web Templates for
creation and deployment including a CAB file reader and writer
and XML manifest parser
- Designed the algorithm used for backing up sites, and for
deploying them
Technologies used: C++
SharePoint Team Services version 1 / FrontPage 2002 Server
Extensions
- Developed FPSE/STS's handling of Thicket and MHTML files,
including parsing, copying, moving, renaming and link
fixup.
- Maintained the Unix build of FrontPage Server Extensions,
including
- Fixing Unix-only build breaks
- Maintaining the Unix build machine
- Coordinating drops of the FrontPage Server Extensions
source code to Ready-To-Run Software
- Integrating patches from Ready-To-Run Software, to ensure
that FrontPage Server Extensions continues to build and run
on all supported flavors of Unix
- Coordinated with the Windows team to deliver drops of
FrontPage 2002 Server Extension, and to ensure that FPSE
continues to install and run on the latest build of
Windows
- Maintained FrontPage's component in Windows' Object
Component Manager (OCM) which allows FrontPage Server
Extensions to be installed via the Windows "Add/Remove
Windows Components" menu
FrontPage 2000
- Developed and maintained portions of FrontPage's Microsoft
Management Console (MMC) component, used to configure and
manage FrontPage Server Extensions.
- Coordinated with the Windows team to deliver drops of
FrontPage Server Extensions 2000, and to ensure that FPSE
continues to install and run on the latest build of
Windows
- Developed and maintained FrontPage's component in Windows'
Object Component Manager (OCM) which allows FrontPage Server
Extensions to be installed via the Windows "Add/Remove
Windows Components" menu
|
|
Software Design Engineer Intern
Microsoft
Corporation Redmond, WA
|
Summer 1997, Summer 1996 |
|
Windows NT GDI/OpenGL
- Wrote an interactive OpenGL profiler for developers
- Wrote a scripted version of the OpenGL profiler to be used
in a configuration tool
Microsoft Project
- Wrote utility for developers to find memory leaks in MS
Project
- Coded and tested the MS Project '98 viewbar, a portion of
the user interface
|
| Additional Experience: |
F.I.R.S.T. Robotics |
2000 - Present |
- Mentored students at multiple high schools, and on multiple
teams to design and build a 5-foot-tall, 120 lbs robot in 6
weeks to play that year's game. Robots must operate both
autonomously and under remote control. Game challenges have
included:
- collect soccer balls and placing them into mobile goals
- collect and stack plastic bins
- collect large rubber balls, climb stairs and hang from a 10'
bar
- manipulate PVC tetrahedrons
- shoot Poof balls into a 10' high goal
- collect and hang innertubes on a central rack.
- Taught students to use industry-standard tools such as CVS,
Subversion and make.
- Used a PIC embedded microcontroller to implement control
system, including PID loops, inertial motion tracking using
gyroscopes and dual axis accelerometers, and dead reckoning
based on optical encoders; taught students about each of these
techniques.
|
| Hobbies and Interests: |
Toastmasters, Personal MBA, Martial Arts, Filmmaking, Animation,
Soccer, SCUBA diving, Skydiving, Floor Hockey, Caving, Chess,
Amateur Radio (Tech Plus class, licensed since 1991), Foozball,
Juggling, brother of Alpha Epsilon Pi
|