Full-Time Work Experience
Dash Navigation, Sunnyvale (2007 - 2008)
Senior Software Engineer
Design and implementation of major features of this ARM/Linux based GPS device.
Included implementation of ASN.1 based C++ infrastructure on the device (using OSS
Nokalva ASN.1), automatic software updates, and numerous bug fixes. Designed and
implemented HTTP based services (based on nanohttp) on the device for communication
over USB with a Windows based application.
Technologies used: C/C++ (Linux, ARM), Linux (x86, ARM), Qt/Qtopia, pthreads, XML, TCP/IP, HTTP.
Avvenu Inc, Palo Alto (2006 - 2007)
Software Engineer
Responsible for the maintenance and devleopment of the Avvenu gateway servers.
Designed and implemented enhanced routing policies for the browser gateway; a
sophisticated file-caching mechanism for handling persisted user storage; enhanced
cookie handling for tracking state, authentication and authorization; an operations
monitor thread for gathering statistics on gateway performance as well as performing
specific control operations; a multi-threaded instrumentation infrastructure for
collecting performance data; a simple reusable TCP/IP socket class for handling
async/wait operations; in addition to dozens of other minor enhancements and bug fixes.
Technologies used: Linux, C++, pthreads, TCP-IP, XML, HTTP.
Additional work included bug fixes and enhancements to the Windows based client.
Technologies used: Visual C++, WIN API.
Ticketweb (division of Ticketmaster), San Francisco (2003-2005)
Software Engineer
Performed major enhancements to both the front end (web) and back-end
(database) systems for this successful on-line ticketing company.
This
included a preference/location based recommendation engine that produced
events listings fed into a weekly newsletter sent by email to subscribed
customers, client reports for promoters and venues, enhancements to the
credit card processing interface which allowed customers to sign up to,
and be authorised by VBV (Verified by Visa) and SecureCode (Mastercard),
implemented a new preview form as part of the ticket purchasing process.
These are just a small portion of the dozens of systems enhancements
and hundreds of bug fixes implemented.
Technologies used: C++ cgi programs,
HTML/Javascript, FAIRCOM (ISAM based) database, one-of-a-kind C++ utility
programs and reports.
Recognition International/Plexus Software, Sunnyvale (1993-1994)
Director, OEM Systems Development.
Managed the development group responsible for porting and
sustaining XDP DataManager (Informix Turbo based database), XDP
Storage-Manager (optical
storage management system), and FloWare
(workflow management system) on a variety of Unix platforms
(including HP 9000, IBM RS/6000, DEC Alpha, SCO Unix, and Data
General AViiON).
Responsible for the development of a common network interface for
Plexus' MS-WINDOWS and UNIX based software products.
Provided on-site assistance at key customer sites to resolve bugs
in Plexus' products. In this capacity, was heavily involved in
debugging the internals of the company's database and optical
storage management systems (C, Informix Turbo internals, Informix
ESQL/C).
Cornerstone Technology, San Jose (1990-1992)
Director of Engineering Operations
Was responsible for the introduction of a new line of the
ImageAccel (a high-speed video controller) into mass-production.
This included the management of the Pilot Group, Documentation
Control, Software Design Verification, and QA.
Developed new engineering processes for the company.
Manager, Unix Software (at Cornerstone)
Was responsible for the introduction of Cornerstone products into
the Unix market. In this hands-on capacity, supported the
implementation of X11/R4 for the Cornerstone DualPage family of
controllers under SCO Unix, and Interactive Unix.
Implemented a Unix driver to support the Cornerstone DualPage for
MCA based PC's running SCO Unix.
Developed X11 and Motif based applications to demonstrate
features of the Cornerstone DualPage video controller (C, SCO
Unix).
Unisys Corporation/Convergent Technologies, San Jose (1986-1990)
Software Manager
Implemented SNA for the 80386 based U/6000 system supporting
transfer rates of up to 64Kb, as well as a window-based
implementation of IBM's HLLAPI under Unix on the MC68020 based
Convergent S/Series data server.
As an individual contributor to the company's business
development unit, developed X11/Motif based applications to
demonstrate object-oriented user interface technology in future
products.
Developed a Unix User Administration tool that used object drag &
click operations, completely eliminating menus and command-line
typing (C, X11, Motif, X.Desktop).
Manager, Software Design Verification Group (at Convergent)
Was responsible for design verification, testing (QA), and
release of all software products in the Network Systems Division
of Convergent Technologies.
Software Manager of the AT&T Group (at Convergent)
Developed and released to AT&T the Unix System V operating system
for the AT&T 7300 system (aka UnixPC).
Saber Technology, San Jose (1986)
Software Manager
Was responsible for the development of all software for Saber's
high-performance NSC-32032 based color-graphics workstation.
This included a display-list driven, color-graphics interface for
Unix, in addition to a fully integrated window manager, graphics
utilities, and libraries.
Codata Systems, Sunnyvale (1983-1984)
Software Manager (hands-on)
Developed and maintained the Unix (Version 7) operating system
implementation for Codata's MC68000 Multibus based system (C,
Unix Version 7).
Developed a base of 3rd-party software products for the system.
Participated in the design of new Multibus controllers for the
system, and architected the operating system migration to Unix
System V.