\magnification = 1200
\voffset = -0.5 true in
\hoffset = -0.5 true in
\hsize = 7.5 true in
\vsize = 10 true in
\parindent = 4em
\rightskip = 4em
\nopagenumbers

\hyphenation{MacOS PGPsdk PGPmail}

\centerline{\bf MARK H. WEAVER}
\centerline{\tt <mhw@netris.org>}
\centerline{617-623-6923}
\medskip

%\def\category#1{\goodbreak \leftline{\bf #1}}
\def\organization#1#2{\medbreak \line{#1 \hfil #2}\nobreak}
\def\location#1{\leftline{#1}\nobreak}
\def\bi{\item{$\bullet$}}

\organization{PRETTY GOOD PRIVACY, INC.}{9/1996 -- 12/1997}
\location{Redwood Shores, California}

\bi Second full-time programmer hired.
\bi Lead designer of the PGPsdk API, upon which PGP~5.x is based.
    Implemented high-level key management module, including support
    for multiple key sets of mutable virtual keyrings.  Key sets are
    sorted subsets of keyrings, defined by combinations of filters,
    enumeration, and set operations.  Virtual keyrings are database
    modules which implement their own key sets efficiently, and were
    designed to support transparent network access and large keyrings,
    although this was not yet implemented as of PGP~5.x.
\bi Lead designer and implementor of portability module of the PGP
    Foundation Library upon which the PGPsdk and PGP~5.x are based.
    Provides a uniform cross-platform interface for file access and
    locking, pathname manipulation, directory traversal, date/time
    operations, and debugging support including assertion checking,
    logging, and detection of memory leaks, buffer overflows, and
    uninitialized or stale pointers.  Implemented platform-specific
    code for Unix and MacOS\null.
\bi Implemented HTTP $\rightarrow$ LDAP key server proxy.
\bi Acted as network administrator until a replacement was found.
    Installed the main company network servers using NetBSD and
    OpenBSD, including Bind, Sendmail, APOP, and CVS\null.  Set up ISDN
    lines providing subnets for several early employees, involving
    configuration of a Cisco router and Netopia ISDN modem/routers.
\bi Was responsible for editing, typesetting, and printing books containing
    the full source code of PGP~5.x.  Worked with Colin Plumb and Phil
    Zimmermann to develop a book of {\sl Tools for Publishing Source
    Code via OCR}, for producing specially formatted source code
    listings annotated with CRCs to support exact reproduction of the
    source tree from paper.  Popular OCR software relies heavily on
    language-specific heuristics and produces several errors per page,
    so we include tools which locate errors and correct most
    automatically.  These tools were also used to publish {\sl
    Cracking DES\/} by the Electronic Frontier Foundation.
\bi Credited in PGP~5.x, in OpenPGP RFC~2440, on the front covers
    of OCR tools book and source code books for PGP~5.x, and on page
    4-4 of EFF's {\sl Cracking DES}, which includes two perl scripts I
    wrote.

\organization{NATIONAL CANCER INSTITUTE}{7/1987 -- 8/1989}
\location{Bethesda, Maryland}

\bi Summer of 1987: Student research fellowship.  Designed and implemented
    a prototype for an image processing system on a pre-release Mac~II,
    for analysis of CAT, PET, MRI, and other scans.
\bi 9/1987 -- 6/1988: Co-authored an image processing user interface
    library for the Mac~II, including color table management,
    grayscale image display, colored overlay planes, selections, and
    tool palettes as part of a proposed radiation treatment planning
    system.
\bi 8/1989: Implemented radiation treatment simulation module, which
    calculates how much radiation hits each point in the body, given a
    configuration of point sources and lead blocks.

\break

\organization{MERCURY SYSTEMS, INC.}{1/1991 -- 2/1993}
\location{Century City, California}

\bi Was president and co-owner of a computer software business.
    Co-authored {\sl MacIntercomm}, a modem telecommunications program
    for the Macintosh including a preemptive multitasking system which
    allowed full-speed background transfers even while playing CPU
    intensive games or formatting a floppy.  Also included optimized
    color text drawing routines which were 30\% faster than QuickDraw's.
\bi Certified Apple Developer and Registered NeXT Developer.

\organization{XECOM, INC.}{7/1989 -- 12/1990}
\location{Milpitas, California}

\bi Implemented ROM drivers and helped debug hardware for the XECOM
    internal modem family for the Macintosh.  Included a card with
    four modems driven by an on-board 68008 processor to reduce the
    interrupt dispatching overhead on the main processor.
\bi Developed {\sl MultiAimer} extension which allowed existing
    software to use all available ports by presenting a dialog box to
    the user behind the application's back, and transparently
    redirecting attempts to access the two built-in serial ports.
    This was necessary because at the time, there was no standard way
    for applications to locate or access other ports.
\bi Developed a print driver for encoding and queuing faxes to be sent
    in the background, using all available fax modems simultaneously.
    Included support for broadcasting a single fax to a large number
    of recipients.

\organization{EPIC TECHNOLOGIES, INC.}{9/1988 -- 6/1989}
\location{Freemont, California}

\bi Implemented a modem server for the Macintosh, which permitted
    existing software to transparently access a shared pool of modems
    elsewhere on an AppleTalk network.

\organization{RES NOVA SOFTWARE}{9/1986 -- 1/1989}
\location{Barrington, Rhode Island}

\bi Co-owned and operated a computer business.  Co-authored {\sl Nova Link},
    a multitasking BBS program for the Macintosh.  Featured in {\sl
    Byte Magazine} 12/1988 and {\sl Macazine} 11/1988.
\bi Became Certified Apple Developer in 9/1986.

\organization{BROWN UNIVERSITY}{9/1988 -- 6/1994}
\location{Providence, Rhode Island}

\bi Completed degree requirements for an Sc.B. in Computer Science,
    except for english writing course.
\bi Head TA for CS169 {\sl Operating Systems Design} in Fall 1989 and 1992.
\bi Head TA for CS126 {\sl Introductory Compiler Design} in Spring 1993.
\bi Sun lab consultant since Fall 1991, providing support for students
    in a lab of about 60 SparcStations.
\bi Co-authored {\sl Optimal Tracing and Incremental Reexecution for
    Debugging Long-Running Programs}, published in the ACM
    SIGPLAN~1994 Conference on {\sl Programming Language Design and
    Implementation} (PLDI)\null.  Implemented an assembly language
    post-processor for Sparc which instruments programs to generate
    trace information while they run, such that the execution can
    later be replayed from any point.  The co-author developed novel
    techniques for reducing the trace volume, and I developed novel
    techniques for reducing the run-time overhead of the instrumented
    program from about 900\% to about 50--70\%.

\eject
\end
