Work Experience |
Software Engineer, May 2000 - Present
ZoneLabs, Inc., San Francisco, CA
-
Principal client engineer for second generation Integrity (ZoneLabs’
enterprise endpoint management solution) client. Designed and implemented
client-side cooperative enforcement feature, which evaluates security rules
served in XML and renders compliance reports to the Integrity server and via
client-side API. Implemented the interaction between SOAP/XML–based
communication layer and TrueVector engine. Implemented generation of
security event reports reported to server in XML. Maintained compliance of
client codebase with XML schema documents (XSD). Code written in C++; Windows platform.
-
Responsible for latest version of ZoneAlarm Integrity Desktop; particularly
automatic download of security policies and upload of event log
information.
-
Principal client engineer for first version of Integrity client. Distributed
firewall client features centralized policy administration and security
enforcement. Worked at socket level developing communications protocol.
Implemented the interaction between communications layer and TrueVector
engine, and between TrueVector and Integrity client application. Implemented
Integrity-specific portions of Windows client UI.
-
Implemented several new features of TrueVector/ZoneAlarm products, broadening
functionality from the engine layer through API layers to UI.
-
Implemented custom TrueVector security API for NEC’s PCGate product. Enhanced
TrueVector proxy API, allowing API functions to control remote clients via
RPC.
-
Designed and implemented localization architecture for TrueVector/ZoneAlarm,
allowing for partially translated resource subsets.
Software Engineer (Contractor), February 1999
- January 2000
Third Voice, Inc. , Redwood Shores, CA
- Implemented GUI elements of Third Voice client software using ATL
and Win32 (no MFC), including subclassing of common control components
and creation of new ATL-derived GUI objects.
- Principal UI engineer for Third Voice Netscape client plugin. Used
VisualC++/MFC and JavaScript to duplicate design already implemented in
DHTML. Multi-threaded client required synchronization with Netscape and
server-side communications.
- Implemented Win32/GDI rendering of GIF images, including animation
and interlacing, based on public-domain, platform-independent decoder
source code.
Software Engineer (Contractor), October 1997 -
May 1998, October 1998 - January 1999
Informix Software, Inc. ,
Menlo Park, CA
- Debugging and final phase of first port of Extended Parallel Server
(XPS) for WindowsNT, designed for extensible multi-processor
architectures. Server engine in C, test environment in Korn shell
scripts running on OpenNT.
Software Engineer
(Contractor), October 1996 - September 1997
Compaq Computer Corporation
, Houston, TX
- Integration of 3rd party ActiveX controls for document
viewing/printing with Compaq's internal engineering data systems
software, written in Borland C++/OWL for Windows95/NT.
- Maintenance/troubleshooting of ODBC issues, including conversion of
MFC-based ActiveX control to ATL (Active Template Library). Control
maintains ODBC datasource registration for client-side Visual Basic
applications, providing secure login to Compaq's internal security
databases, and features "backdoor" COM access.
Software
Engineer (Contractor), April 1996 - July 1996
Platinum Technologies,
Inc. , Redwood Shores, CA
- Port of the GUI component of Platinum's AionDS knowledge base
development environment from Windows to Xwindows on HP-UX (Unix), using
Wind/U (3rd party Windows API) libraries. Source code in C++.
Software Engineer (Contractor), October 1995 - March
1996
Wall
Data, Kirkland, WA
- Implemented an OLE Custom Control (OCX) which provides CPI-C
client/server communications services to COM containers under
Windows95/NT. Advanced OCX features include multiple levels of
multithreading and direct vtable binding via dual COM interface.
Proposed by WallData as the industry standard OCX implementation of
CPI-C.
- Ported configuration utility for WallData's RUMBA communications
product from Windows95 to OS2 Warp.
Software Engineer, May
1992 - July 1995
Communication Intelligence Corporation , Redwood Shores,
CA
- Principal user-interface engineer for CIC's Handwriter for Windows95
product. Designed and implemented control panel, toolbar and recognition
training applications using 32-bit Visual C++, MFC (Microsoft Foundation
Classes), and Win32 API.
- Sole technical liason between CIC and IBM for first port of CIC's
Roman handwriting recognition engine to OS/2. Implemented the interface
layer between IBM's pen extentions to OS/2's Presentation Manager and
CIC's internal API.
- Ported American, Japanese and European handwriting recognition
algorithms fromSun UNIX to PC DOS, OS/22.0 and Windows.
- Designed and implemented applications for testing and comparison of
different handwriting recognition systems on different platforms: Roman
and Japanese recognizers could be verified for the first time on
Windows, DOS and OS/2 to be ported correctly.
- Developed technology demonstration programs for DOS and
Windows-based handwriting recognition systems using various graphical
toolkits.
Applications Engineer, April 1990 - May
1992
Communication
Intelligence Corporation , Redwood Shores, CA
- Demonstrated handwriting input computers and software at major
industry tradeshows worldwide, in both English and German.
- Independently conducted data collection of European handwriting
samples in Germany.
- Performed marketing support functions: demonstrations, technical
support, seminar presentations.
Marketing Intern, June -
Sept. 1989
Nixdorf Computer AG , Paderborn, West Germany
- Researched software specifications for a proposed banking solution.
|
Skills |
Programming languages: C, C++, 80X86
Assembler
Operating systems: Windows XP/2000/NT/98/95/3.X, OS/2 2.X,
DOS, UNIX
APIs, toolkits: Visual C++, Microsoft Foundation
Classes (MFC), ActiveX/OCX, COM, Active Template Library (ATL), STL, XML, XSD, Borland
C++/OWL, Win32, OpenNT, ClearCase, multithreading.
Fluent in German. Avid bicyclist (Seattle to Washington, D.C.,
June/July 1998).
|