Resume for Marc Wallace
marc@resume.wallace.net
http://www.wallace.net/marc/resume/
|
Marc Wallace
415 Lagunitas Ave, #105
Oakland, CA 94610
(510) 251-1645
|
|
Objective:
A software development position that builds upon long-term experience
and offers interesting challenges.
Work Experience
-
1997-2002,
Oakland, California.
-
Senior software engineer.
-
CFML, HTML, JavaScript, CSS, Visual Basic, SQL, Perl, Java.
-
Design and development of web-based applications;
prototypes of web application frameworks and components;
development of database synchronization tools;
y2k-related coding and enhancements;
creation and porting of client/server applications.
-
1995-1998,
East Bay, California.
-
Freelance web developer and consultant.
-
HTML, JavaScript, Perl, CGI, Java, Flash.
-
Complete buildout of new web sites;
creation, design, and development of
original online games and puzzles;
technology consulting.
-
1993-1997,
Berkeley, California.
-
Senior software developer, web master, network administrator.
-
C/C++, Visual Basic, HTML, Perl, Awk, Access.
-
Development and support of public information kiosks
and internet stations;
creation and maintenance of dynamic web sites;
administration of the internal and external network.
-
1989-1992,
St. Louis, Missouri.
-
System administrator, programmer, hardware troubleshooter.
-
C, x86 Assembly, Awk, Unix shell scripts, PostScript, LaTeX.
-
Administration and support of the campus network;
coding of tools for aiding in the same;
coding applications to interface with external imaging machinery.
Skills and Proficiencies
Languages
Used in Recent Projects
- ColdFusion:
-
Large scale database-driven internet/intranet applications.
Custom tags, structured exception handling, and IDE extensions.
- HTML, JavaScript, and CSS:
-
Cross-browser (Opera/NS/MSIE) dynamic elements and style sheets.
Client-side validations, browser capability detection, DOM manipulation.
- Perl:
-
CGI, especially with database access.
"Quick hack" tools for lint, statistics, and source code manipulation.
File parsing and hand-rolled development aids.
- Visual Basic:
-
Small to large (110K lines) projects.
ODBC, DAO/ADO, COM/DCOM, custom controls, creation of VB AddIns.
Also MS Office VBA variants (macros and code modules).
Programming Languages
- Mastered:
-
Java,
Perl,
Visual Basic,
C/C++,
Delphi.
- Mastered (but not used in recent projects):
-
Pascal,
Awk,
Assembly (80x86 and 6502).
- Familiar with:
-
Lisp, Fortran, Prolog, Cobol, Ada.
Other Development Languages
- Web related:
-
ColdFusion (CFML),
ASP, JSP,
CGI,
Dynamic HTML,
JavaScript.
- Unix related:
-
Shell scripts,
Sed,
Lex,
Yacc.
- Other:
-
XML/XSLT, UML, SQL.
Development Tools
- CASE / Modeling:
-
Visio,
Rational Rose,
EasyCase,
ER Studio.
- Database related:
-
SQL Server,
Oracle (9i thru RDb 6),
Microsoft Access,
Crystal Reports,
Actuate.
- Graphics / Publishing:
-
Photoshop,
Multimedia Toolbook,
Photostyler,
FreeHand,
PageMaker.
- Other tools:
-
CodeWright,
ViM,
SoftICE.
Operating Systems
-
Windows (13 years):
-
All versions since Win/386.
Administration, registry, DLL debugging, and EXE modifications.
-
Unix (14 years):
-
Especially Linux, SunOS/Solaris, SCO, and FreeBSD flavors.
Administration, DNS, NNTP feeds, Sendmail, Qmail, Samba,
and various other essentials.
-
DOS (18 years):
-
Mostly MS-DOS, with some PC-DOS, Novell, and Caldera.
Including memory management and IRQ debugging.
-
VMS (2 years):
-
Some DCL and Eve.
The Echo Group
(October 1997 - October 2002)
Company/Job Description
"The Echo Group produces information management software
for behavioral and mental health care providers and centers nationwide,
including two thirds of California's county mental health agencies."
I was part of a small rapid application development team that was
distributed across several remote offices.
Our team's style was to thoroughly document design and analysis,
and to keep a heavy focus on the architectural framework,
while still maintaining a rapid development cycle
(much like Extreme Programming).
Note: my initial employment was as a contractor with the
Oakland software division of United Behavioral Health. This
division was acquired by Echo in July 1999, at which time I
became a full-time employee.
Project Details
-
Scheduler subsystem of
Echo's flagship web application, ShareCare.
Code cleanup and reverse engineering of the previous version.
Complete rearchitecting and redesign of an enhanced version,
including availability, complex recurrences,
and numerous tie-ins to the clinical and fiscal subsystems.
Over 600K bytes and 20K lines of code (20% comments)
manipulating 17 new database tables,
with 40 design and implementation documents.
(ColdFusion 5, IE-specific HTML/JavaScript, CSS, SQL, Perl)
-
eBoat.
Team-based analysis, design, framework, and coding
of a 3-tier web application designed to eventually replace
the entire suite of Echo client/server applications.
eBoat ran under MSIE4+, Netscape4+, and Opera5.
(ColdFusion 4.5, cross-browser HTML/JavaScript, CSS, SQL)
-
Research of new web technologies and development of
prototypes for web application frameworks and components.
(Java/JSP/J2EE, ASP, Delphi, COM+/DCOM, .NET)
-
CASP.
Port (VB3 to VB6), enhancement, and y2k fixes for
a suite of clinical service planners.
Project manager and lead programmer.
(Visual Basic 6)
-
ITS (Batch, UCL, CSynch).
Design and development of a suite of synchronization utilities
for two health care databases with conflicting metadata.
Complete analysis and design documentation, including
entity relationship diagrams, for each project.
(Visual Basic 5/6, Crystal Reports, UML)
-
Structured SQL stored procedures and ad-hoc queries
to meet claims and finance department reporting requirements.
QuickATM
(May 1993 - July 1997)
Company/Job Description
QuickATM was the leading supplier of
interactive touchscreen information kiosks in U.S. airports.
Since 1993, the network of roughly 100 airport and railway
touchscreen information kiosks served over 7,000 travelers per day.
The QuickAID web site provided comprehensive airport and
travel information for more than thirty airports, and
QuickAID Internet Stations provide email and web access to travelers
at airports nationwide.
QuickATM was a small company; I had many roles simultaneously, including:
senior software developer,
network administrator,
web developer,
hardware troubleshooter,
and graphic designer.
Project Details
-
Designed, documented, and implemented the user database
for the QuickAID Internet Stations, as well as the
client/server interface to it.
This database includes a fault-tolerant system for
replication and propagation of the database
between distributed servers (over TCP).
(Perl under Linux)
-
Proxima.
Wrote a combination HTTP daemon
and HTTP proxy server from the ground up.
This server supports virtual hosting, caching,
remapping, site and URL censoring,
and was fully compliant with the
HTTP/1.0 and CGI/1.1 IETF specifications.
(Perl under Linux)
-
QCall.
Debugged, significantly enhanced, and maintained the QuickAID engine
for touchscreen kiosks, and all supporting software,
from the initial prototype version through its current version.
This 24,000+ line C program was running on over one hundred
kiosks at airports nationwide.
(Watcom C and Microsoft C under DOS;
screens designed in Multimedia ToolBook)
-
Debugged, recoded, and enhanced the client software
for the QuickAID Internet Stations.
This program featured browser, telnet, and email functionality.
(Visual C++ and Visual Basic under Windows NT4)
-
Designed and implemented all back-end server support for the
QuickAID Internet Stations, including:
real-time usage monitoring programs,
usage statistics,
secure user authentication,
encrypted credit card storage,
and a credit card billing interface to ICVerify.
(C and Perl CGI scripts under Linux)
-
Designed the QuickAID and QuickRAIL web sites.
This included page layout and design,
scripts to convert Microsoft Access databases into HTML,
and CGI scripts for real-time data extraction.
-
Designed the Multimedia ToolBook book for constructing, maintaining,
and exporting multi-screen, multi-level airport terminal maps.
-
Other miscellaneous responsibilities included:
-
administering office servers (Novell Netware and Linux);
-
documenting software and operational procedures;
-
training and supervising the kiosk maintenance staff;
-
installing, maintaining, and
debugging internal and field hardware;
-
creating internal office utilities.
Education
University of California at Berkeley, 1992-1993.
Graduate work in mathematics.
Washington University at St. Louis, 1988-1992.
Bachelor of Science in physics and mathematics, with honors.
Coursework included nine graduate level computer science courses.
Minor emphases included computer science, linguistics, and french.