Douglas Birdzell
8705 Reading Road
Silver Spring, MD 20901
301-562-4265
dug@ape.org
Objective: Software Engineer focusing on UNIX development.
Computer Skills:
-
Languages: C; C++; Java; JNI; Perl; Python; Tcl; Expect; JavaScript;
Pascal; FORTRAN; COBOL; SAS;
Assembly (x86, PDP-11, Motorola 6502).
-
Internet Development: N-tier architecture; HTTP; LDAP; CGI;
Java Applets and Servlets; HTML; DHTML; XML; Apache; IIS;
ISAPI; ASP.
-
Component Technology: Java Beans, COM, MTS.
-
Distributed Computing: Java RMI, CORBA, DCOM.
-
Systems: UNIX (Solaris, Linux, Cygwin, HP-UX, Irix, SUN-OS,
Digital Unix, SCO); Mac OS; Windows NT; 2000; 95; OS/2;
IBM 360/370 and 390 Series.
-
Shells: sh; bash; csh; tcsh; Wylbur.
-
Databases: SQL; MySQL; Postgresql, plpgsql, Oracle Products (Oracle RDBMS 7.2.x, 7.3.x, 8i, Oracle SQL*Plus, PL/SQL, PRO*C); Objectstore; Object Design PSE; mSQL;
MS SQL Server; Transact-SQL; JDBC; Perl DBI/DBD; ODBC; OLE-DB; 4th Dimension.
-
Security: DES; RSA; El-Gamal; OTP; SSL; Authentication.
-
Graphics: Java AWT; Java Swing; MFC.
-
Development Tools: Forte; vi; emacs; xemacs; gdb; jdb; make;
JProbe; OptimizeIt; Rational Purify; MS Visual Studio; RCS; CVS; SCCS;
Clearcase; Clearcase Attache; MS Visual SourceSafe; PVCS Tracker;
OS JCL.
-
Administration: DNS; sendmail; TCP wrappers; start-up scripts; Cisco
router access lists; IP masquerading; Ascend ISDN router configuration.
Experience:
10/01 - present: Senior Software Engineer, Inter-Tel, Incorporated,
Washington, DC.
- Developed fault-tolerant application server
using Java, XML and MySQL on Windows 2000.
- Ported server from earlier Solaris version,
in response to interest from architecture team of a Windows-based
call-center platform.
- Evaluated different options for JVM, RDBMS and JDBC driver,
provided detailed performance testing, analysis, and
final recommendation.
- Achieved order-of-magnitude improvement in performance
beyond what was achieved in Solaris version, within one-month
timeframe.
- Gained acceptance of server as a platform component,
despite initial concerns from architecture team regarding
performance.
- Wrote 65-page functional specification and design for
integration of server into call-center platform, including a
client API
for various platform components to access server.
- Implemented application support library for telephony engine
product, using previously developed extensibility framework.
- Wrote users' guide for extensibility framework.
- Ported application needed by telephony engine's security system.
Port was from OS/2 to Win32. Corrected obscure coding error
in OS/2 version which led to intermittent failure of ported
version.
- Modified previous design of resource management and security
systems to provide design of feature control for call-center
platform. Provided 35-page functional specification including
client API. Presented to technical and marketing teams for
review.
1/01 - 10/01: Senior Software Engineer, MasterMind Technologies, Washington, DC.
- Led team to develop fault-tolerant application server
using Java, C, XML and MySQL on Solaris.
- Mentored other developers on team.
- Wrote design document and test plan.
- Reorganized existing code, rewrote sections as needed,
contributed new code.
- Achieved order-of-magnitude improvement in performance
within one month timeframe.
- Developed and documented procedure for debugging
native code using jdb, gdb and xemacs.
- Wrote scripts for build configuration,
runtime configuration, installation, testing,
database management and performance analysis.
- Wrote set of makefiles to build distribution and
prepare for installation as Solaris package.
- Designed generic resource management for all areas of
company's telephony engine product, with focus on third-party license
management.
- Designed security system for telephony engine to prevent
end-users from creating applications based on demo versions of
applications sold by company. Used simple PKI with application
certificates, ensured ability to withstand various forms of attack.
- Contributed to implementation plan for port of telephony
engine from NT to UNIX.
- Contributed to design of extensibility framework for telephony
engine. Framework introduced plug-in style invocation of
end-user libraries from applications built for engine.
- Fixed bugs in telephony engine. Required quick learning
of product design, product API's, and use of product to
generate test scenarios. Worked with ODBC, Natural Microsystems
CT hardware, SpeechWorks ASR libraries, Rainbow dongles and Commetrex
dongle driver.
9/98 - 1/01: Senior Software Engineer, Ultraprise Corporation, Frederick, MD.
- Developed C++ data access layer for web-based mortgage
trading system, going from initial concept to deployment
in four months.
- Migrated code and data from Objectstore through Oracle
to MS SQL Server. Addressed concurrency implications
of each migration. Wrote C++ application to verify
migration to MS SQL Server.
- Developed core software used in many company products,
including encryption class for user passwords.
- Rewrote key set of components comprising 16,000 lines of
C++ and 3,700 lines of Transact-SQL to address database
concurrency issues.
1/95 - 8/98: Programmer and Systems Administrator, HuskyLabs, Shepherdstown, WV.
- Worked on in-house distributed application server written
in Java.
- Implemented data access interface for mSQL and Object
Design PSE. Developed mechanism to prevent duplication
of persistent objects under PSE implementation.
- Built authorization framework using LDAP.
- Researched and implemented asymmetric public-key
encryption using El-Gamal algorithm.
- Developed interfaces for user administration and document
management using AWT and Swing.
- Developed tools to generate Java classes from brief text
files and database schemae. Enabled same-day response to
customer-driven schema changes.
- Worked on initial web site for the Baltimore Sun newspaper.
Integrated data feeds from legacy publishing systems for
classifieds and news, with automated update of site.
Designed and maintained database for classified ads and
interface for user queries.
- Developed prototype of intranet web-enabled database
applications for Coca-Cola Company. Worked with Oracle,
Perl, CGI and Netscape Commerce server.
1/87 - Present: Consultant, Administrators, Programmers
and Engineers, Silver Spring, MD.
- Developed CGI-based shopping application for Dischord
Records (www.dischord.com). Used OO Perl, developed
tools to generate code from database schema.
- Developed Java sales application using AWT. Development
included OOD, scenario diagrams, integration with
Java Runtime Environment (JRE) and single-floppy
installation.
- Used IP masquerading on a dual-homed Linux server to
partition T-1 over ISDN to remote private LANs. Required
configuration of several Ascend Pipe 50 routers.
- Used sendmail virtual hosting and private DNS to route mail
to local POP server in private LAN.
9/99 - 12/99: Teaching Assistant, University of Maryland University College,
Adelphi, MD.
- Online class in Computer Organization. Answered
questions, graded homework assignments and midterms for 30
students.
4/89 - 12/94: Manager, GLUT Food Cooperative, Mt. Rainier, MD.
- Wrote Pascal programs to facilitate invoice processing.
- Managed payroll, did bookkeeping and ordering. Supervised
staff.
9/84 - 4/89: Programmer, Social and Scientific Systems, Bethesda, MD.
- Wrote survey data entry programs using Pascal on PCs.
- Wrote data analysis programs using SAS, FORTRAN and COBOL
on IBM mainframes.
- Maintained large FORTRAN simulation of government
income-transfer programs.
5/83 - 5/84: Research Programmer, Mathematica Policy Research, Washington, DC.
- Created extracts of large survey databases and statistical
reports of the extracts using SAS on IBM mainframes.
- Wrote a data conversion tool which allowed output of
income-transfer simulations to be analyzed using
PC spreadsheet software.
Spring '83: Computer Lab Tutor, Haverford College, Haverford PA.
- Assisted students in introductory Pascal class.
Education:
University of Maryland University College, 1995-1999.
Programming in C, 4.0.
Object-Oriented Programming in C++, 4.0.
Computer Organization, 4.0.
Discrete Mathematics, 4.0.
Haverford College, Haverford, PA, 1979-1983.
BA, Economics, GPA 3.75/4.0.
Phi Beta Kappa, 1983.
Languages:
Proficient in French and Spanish.
$Id: resume.html,v 1.15 2002/07/22 15:27:29 dug Exp $