peoplePeople at Savannah: Steven Augart Resume & Skills

Site Wide
 
 

Follows Resume & Skills of Steven Augart <saugart>.

Resume

<center><h1>Steven Augart</h1>
<big></big><table border rules="cols">
<tr><td><big>16 Brooks Street</big></td>
   <td><big>139 New Broadway</big></td>
</tr>
<tr>
  <td><big>Winchester, Mass. 01890  USA</big></td>                  
  <td><big>Sleepy Hollow, New York  10591  USA</big></td>
</tr>

<tr><td><big>+1 (781) 721-2679</big></td>
    <td><big>+1 (914) 524-5045</big></td>
</tr>
</table>
<big>
Work: +1 (914) 784-6743<br />
                       Cell: +1 (310) 463-1377<br />
                        <a href="mailto:%73%74%65%76%65-webr%40%41ugart%2Ecom"><code>steve<!-- antispam!
-->@<!-- -->&#97;ugart<!-- -->.</code><code>com</code></a>
    <br />
                        <a href="http://www.augart.com">http://www.augart.com</a><br />
</big>
</center>
<h2>Summary</h2>
<ul class="spacious">
  <li> Intimate knowledge of TCP/IP internals

</li>
  <li> Unix and Linux kernel programming and device drivers

</li>
  <li> Built real-time systems

</li>
  <li> Strong written and oral communication skills

</li>
  <li> C, Java, C++, Perl, awk, sed, sh/Bash, assembly language

</li>
  <li> Implemented secure distributed systems

</li>
  <li> Fluent in Italian and Spanish

</li>
  <li> Three patents pending

</li>
</ul>
<h2>Operating Systems Programmed Under</h2>

<dl>
   <dt> <i> Current:</i></dt> <dd> Linux, BSD Unix, Win32, AIX, HP-UX, IRIX, Solaris,
             MacOS, MS-DOS.
</dd>
   <dt> <i> Legacy:</i></dt> <dd>  SunOS, CP/M, Multics, TOPS-20, VAX/VMS, Sequent Dynix/ptx,
             PrimOS, LISP Machine OS, Honeywell 1648, Apple II, TRS-80.
</dd>
</dl>
<h2>Computer Languages</h2>

<dl>
   <dt> <i> Current:</i></dt> <dd>  C, C++, Java, Perl, sh & Bash (Bourne Shell), awk, sed,
              assembly language (x86, 32-bit and 64-bit PowerPC, Z-80),
              FORTRAN, Common LISP, JavaScript, VBA, Prolog, Python.
</dd>
   <dt> <i> Legacy:</i></dt> <dd>  PPL, PDP-10 assembler, BASIC, csh, Pascal, Ada.
</dd>
</dl>
<h2>Special Tools and Systems</h2>

<p>
   TCP/IP internals, Linux kernel internals, HTML, XHTML, XML, CSS, Apache,
   CGI, Server-Side Includes (SSI), J2EE Java Server Pages (JSP), Mozilla,
   XUL, GTK+, in-circuit emulators, GNU Emacs and Emacs LISP, gdb, Purify,
   automake, autoconf, m4, bc, Javadoc, Doxygen, LaTeX, troff, groff,
   MS Access, gcc, MS Visual C++, Eclipse IDE, Kerberos 5, HTTP, LDAP.
</p>
<h2>Education</h2>

<dl>
<dt>  University of California, Irvine, California
</dt>
<dd>
     M.S., Information and Computer Science (Software Engineering)
<br />      Dec. 1992
<ul class="spacious">
     <li> Research focused on reliability and efficiency in large

       software systems.
</li>
     <li> Programmed in C, C++, Ada, Common LISP, Emacs LISP, and Pascal

       on the Unix (Solaris, SunOS, Sequent Dynix) and MacOS operating systems.
</li>
</ul>
</dd>
<dt>  Harvard University, Cambridge, Massachusetts
</dt>
<dd>
     Bachelor of Arts, Computer Science
     <br /> Bachelor of Arts, Psychology
<br />      June 1989
<ul class="spacious">
     <li> On the Dean's List

</li>
     <li> Programmed in C, LISP, Pascal, PPL, Bourne Shell, awk, and

       sed on Microsoft Windows, BSD Unix, PrimOS, and SunOS (Unix).
</li>
</ul>
</dd>
</dl>
<h2>Experience</h2>

<dl>
<dt>  SOFTWARE ENGINEER (Consultant)
</dt>
<dd>
     IBM, Watson Research Center, Yorktown Heights, New York
<br />      May 2003 <tt>-</tt> present
<p>
    Developer, Jikes RVM project
</p>
<p>
   The Jikes Research Virtual Machine (RVM) is an open-source Java
   Virtual Machine. Jikes RVM compiles Java byte code (as found in
   .class files) into x86-32 and PowerPC (32-bit and 64-bit) native
   machine code, for execution on the Linux, AIX, and Mac OS X
   platforms.
</p>
<p>
   Jikes RVM provides a testbed for prototyping memory management,
   compilation, and runtime library techniques. The majority of Jikes RVM
   is written in Java (257K lines/10 MB of source code), with
   low-level functionality in C (10K lines/305KB of source code) and C++
   (14K lines/91KB of source code).
</p>
<ul class="spacious">
     <li> Refactored the low levels of the Jikes RVM build system, vastly

       improving error handling and identification. Ported the build
       system and tools from Korn Shell to Bash (3K lines/91KB of
       Bash source code; 2500 lines of GNU Makefile source), catching
       and fixing numerous minor bugs along the way.
</li>
     <li> Reviewed the nightly Jikes RVM regression tests and monitored the

       system's health.
</li>
     <li> Implemented nightly regression tests for support of the Eclipse

       IDE. Identified and repaired Eclipse compatibility bugs.
</li>
     <li> Edited and rewrote much of the Jikes RVM web pages and the

       122-page user's guide. Wrote the jikes-rvm.el GNU Emacs mode,
       which simplifies writing Java, C, and C++ code that meets the
       Jikes RVM style guidelines.  Fixed 683 Javadoc errors.
</li>
     <li> Fixed all compilation warnings in Jikes RVM's low-level runtime

       support (24K lines of C and C++).  Found and fixed memory leaks
       and potential failure modes. 
</li>
     <li> Less than two months after beginning work on the system, elected a

       member of the Jikes RVM Core Team, a small group with
       responsibility for the system's direction and future.
</li>
</ul>
</dd>
<dt>  SOFTWARE ENGINEER
</dt>
<dd>
     Luminosa Consulting, Inc., Los Angeles, California
<br />      Oct. 2001 <tt>-</tt> April, 2003
<ul class="spacious">
     <li> The market leader in forensic software needed their real-time

       data acquisition servlet to run on systems beyond Microsoft
       Win32 on Intel 32-bit processors.  The servlet is a part of a
       forensic analysis tool with a network data acquisition mode.
       The code base was 168,000 lines of undocumented code under
       Microsoft Visual C++ and Borland C++.  Time was critical.
        <ul>
        <li>Ported the servlet to Linux and to big-endian architectures.  

</li>
        <li>Wrote 10,000 lines of new code. 

</li>
        <li>Added 2,000 lines of system documentation, formatted with Doxygen.

</li>
        <li>Completed project in two months, exceeding client's expectations.

</li>
</ul>
</li>
     <li> Wrote sysctl (/proc filesystem) support for the Linux 2.5

       kernel's pdflush buffer flushing system.
</li>
     <li> Wrote utilities to interact with the 2.4 series Linux kernel's

       bdflush buffer flushing system, extending ThinkPad 600 laptop
       battery time by 17% (2 hrs. 42 mins. to 3 hrs. 10 mins.)
</li>
     <li> Fixed numerous bad-pointer bugs and all compiler warnings in an

       open-source graphical email client, written in C++ (13,000
       lines) for Win32 and Unix, with the GTK+ windowing toolkit.
       Contributed 900 lines of new code and 700 lines of documentation.
</li>
     <li> Technology adviser and programmer for a startup company's

       flagship physical fitness product, implemented in Visual Basic
       for Applications on a Microsoft Access database.
</li>
     <li> Ported an open-source HTTP programming library, written in C,

       from Linux to Solaris 8.
</li>
     <li> Built Mozilla web-browser applications using XHTML, HTML,

       JavaScript, XBL, and XUL.  Prolific submitter to Bugzilla,
       the Mozilla bug-tracking system.
</li>
</ul>
</dd>
<dt>  LEAD PROGRAMMER/ANALYST
</dt>
<dd>
     Sulcata, Inc., Venice, California
<br />      Sept. 1999 <tt>-</tt> Oct. 2001
<p>
   Architect, SpeedPlace Geolocation System
</p>
<p>
   SpeedPlace locates an Internet user's geographic position and
   personalizes web content accordingly.
</p>
<p>
   Discovery agents, implemented on Linux in C, Perl, C++, Python,
   awk, and Java, investigate the Internet's topology. The agents
   store their discoveries as XML and in other formats. The
   discoveries feed an expert system (coded in C and C++). The expert
   system's results feed a truth maintenance system, which populates
   SpeedPlace's geographic database.
</p>
<p>
   SpeedPlace's real-time portion determines locations and exports a
   geolocation API to Apache web server applications, through CGI
   scripts and J2EE Java Server Pages (JSP). The real-time portion
   gains efficiency on systems using SpeedPlace's augmented socket API
   and enhanced TCP/IP stack.
</p>
<p>
   Unix, Linux, and FreeBSD SpeedPlace customers dynamically link with
   their choice of three API implementations, each offering different
   tradeoffs: one directly reads the database files and makes
   conclusions; one performs IPC with a resident geolocation server
   process, and one speaks TCP to offload work to remote geolocation
   servers. The Win32 SpeedPlace implementation provides the API via a
   COM object.
</p>
<ul class="spacious">
     <li> Led the SpeedPlace development effort; managed a

       development and Q/A staff of six.
</li>
     <li> Programmed in C, C++, Java, Perl, Python, awk, sed, and Bourne

       Shell on Linux.
</li>
     <li> Used: XML, CGI, J2EE JSP, Apache, JavaScript, Python threads,

       doxygen, HTML, gcc, Emacs, and gdb.
</li>
     <li> Ported SpeedPlace from Linux to MS-Windows with Microsoft Visual C++.

</li>
     <li> Modified the Linux and BSD TCP/IP stacks.

</li>
     <li> Three patents pending.

</li>
     <li> Fundraising and general corporate operations.

</li>
</ul>
</dd>
<dt>  SOFTWARE ENGINEER
</dt>
<dd>
     University of Southern California, Information Sciences Institute,
         Marina del Rey, California
<br />      June 1992 <tt>-</tt> Sept. 1999
<p>
    Lead Programmer/Analyst, Prospero Distributed Information System
</p>
<p>
     Prospero is middleware for organizing, writing, and retrieving
   information across disparate Internet sites. The Internet "archie"
   search client uses Prospero as middleware for all network operations.
</p>
<p>
     Prospero provides a client library for applications and a server,
     which mediates access to the data repository.  The server
     provides an API enabling easy integration of new data sources.
     The clients and servers communicate via the Prospero application
     protocol, which provides commands for data manipulation and
     retrieval.
</p>
<ul class="spacious">
     <li> Incrementally rewrote most of the Prospero server and clients,

       contributing 100,000 lines of C.  Developed under HP-UX,
       Solaris, Linux, and SunOS.
</li>
     <li> Multi-threaded the Prospero server, making it the middleware

       for AOL's first Internet offerings.
</li>
     <li> Prospero mediated AOL users' access to WAIS and Gopher

       servers across the Internet.  Servers ran stably without
       memory leaks under a load of millions of queries per day.
</li>
     <li> Implemented an asynchronous Internet transport protocol:

       version 1 of ARDP.  Implementation was in C under Solaris
       (Unix).
</li>
     <li> Implemented ARDP extensions for privacy and integrity

       protected transactions with Kerberos 5, and for secure
       electronic commerce payments with NetCheque and NetCash.
</li>
     <li> Built a secure real-time directory infrastructure with the

       Globus toolkit, a network of LDAP servers, and SSL.
</li>
     <li> Wrote 130 pages of documentation, enabling outside authors to

       write alternative client libraries, which inter-operate with
       the USC/ISI Prospero server.
</li>
     <li> Prepared reports and demonstrations for Federal Government

       agencies (ARPA, NASA).
</li>
     <li> Published technical papers.

</li>
</ul>
</dd>
<dt>  RESEARCH ASSISTANT
</dt>
<dd>
     University of California, Irvine, California
<br />      June 1990 <tt>-</tt> Dec. 1990
<ul class="spacious">
     <li> Analyzed the safety of the FAA's TCAS system for avoiding

       mid-air collisions.
</li>
     <li> Co-authored an 80-page specification of safety-critical

       portions of TCAS software.
</li>
</ul>
</dd>
<dt>  TEACHING ASSISTANT
</dt>
<dd>
     University of California, Irvine, California
<br />      Sept. 1989 <tt>-</tt> July 1991
<p>
     Lectured, graded assignments, provided hands-on assistance.
     Classes taught:
</p>
<ul class="spacious">
     <li> Programming Languages (Ada, LISP, C, and C++ on Dynix Unix)

</li>
     <li> Intermediate Programming (Borland Turbo Pascal on MacOS)

</li>
     <li> Social Implications of Computing

</li>
</ul>
</dd>
<dt>  PROGRAMMER/ANALYST and SYSTEMS MAINTAINER
</dt>
<dd>
     Harvard University, Aiken Computing Laboratory, Cambridge, Massachusetts
<br />      June 1988 <tt>-</tt> May 1989
<ul class="spacious">
     <li> Assisted in the maintenance and operation of Sun Microsystems

       workstations.
</li>
</ul>
</dd>
<dt>  REAL-TIME SYSTEMS PROGRAMMER
</dt>
<dd>
     Alpine Systems International, Winchester, Massachusetts
<br />      June 1987 <tt>-</tt> June 1988
<ul class="spacious">
     <li> Wrote a real-time system in C (5,000 lines) under MS-DOS to

       calibrate gas flow controllers and transducers.  The project
       used a stock AT-class PC and an analog/digital converter to
       control experimental hardware.
</li>
     <li> Wrote the real-time control software (6,000 lines of C and 500

       lines of 80186 assembly language) for an embedded video slide
       system.  The slide system ran on custom hardware with no
       operating system.  The software read keypad input, wrote to an
       LCD display, grabbed live video images, saved images to disk,
       and retrieved images for review.  Development environment was
       an MS-DOS PC controlling an Intel i2ce in-circuit emulator.
</li>
</ul>
</dd>
<dt>  SYSTEMS MAINTAINER and PROGRAMMER/ANALYST
</dt>
<dd>
     Massachusetts Institute of Technology, Laboratory for Computer Science,
         Cambridge, Massachusetts
<br />      Feb. 1986 <tt>-</tt> June 1987
<ul class="spacious">
     <li> Maintained and operated networked BSD Unix computers in a

       heterogeneous environment.
</li>
     <li> Wrote and installed systems programs and bug fixes; made Unix

       kernel enhancements; maintained TCP/IP and CHAOSnet
       installations; ensured Unix's inter-operability (file sharing,
       printer spooling, and email) with TOPS-20, ITS, VMS, and
       Lisp Machines.
</li>
     <li> Programmed in C, Bourne Shell, sed, awk, PDP-10 macro assembler,

       and LISP, on Unix, ITS, TOPS-20, and LISP Machine OS.
</li>
</ul>
</dd>
<dt>  FOUNDER
</dt>
<dd>
     FTP Software Inc., Cambridge, Massachusetts
<br />      Jan. 1986 <tt>-</tt> June 1986
<p>
     FTP Software's flagship product was PC/TCP, a TCP/IP stack for
     MS-DOS.  FTP completed its initial public stock offering in 1993.
</p>
</dd>
<dt>  SYSTEMS PROGRAMMER
</dt>
<dd>
     Harvard University, Psychology Department Computer Laboratory
         Cambridge, Massachusetts
<br />      Jan. 1985 <tt>-</tt> Feb. 1986
<ul class="spacious">
     <li> Wrote and modified Unix system utilities in C, awk, sed, and

       Bourne Shell.
</li>
     <li> Made a large undocumented uncommented typesetting system (a

       ditroff variant) useful.  Required C programming, working with
       a variety of font formats, and writing troff macros.
</li>
     <li> Wrote a TCP/IP client-server subsystem allowing hosts to share

       a central manual page database (BSD Unix; 3,000 lines of C).
</li>
</ul>
</dd>
<dt>  COMPUTER PROGRAMMER
</dt>
<dd>
     Harvard Business School, Cambridge, Massachusetts
<br />      Apr. 1985 <tt>-</tt> Apr. 1988
<p>
     Designed, implemented, and maintained a multi-user
     multi-process program to run a business psychology
     experiment (3,000 lines of C; PDP-11 running BSD Unix).
</p>
</dd>
<dt>  TEACHING FELLOW
</dt>
<dd>
     Harvard University Extension School, Cambridge, Massachusetts
<br />      Sept. 1984 <tt>-</tt> May 1985
<p>
     Lectured, graded assignments, and provided individual assistance, for:
</p>
<ul class="spacious">
     <li> C and Unix Programming

</li>
     <li> Introduction to Programming with PPL

</li>
     <li> Introduction to Computing

</li>
     <li> Data Structures in Pascal

</li>
</ul>
<p>
     Programmed in C, PPL, Bourne Shell, and Pascal,
     on BSD Unix, VAX/VMS, and PrimOS.
</p>
</dd>
<dt>  APPLICATIONS PROGRAMMER/ANALYST (Consultant)
</dt>
<dd>
     Harvard Associates Inc., Cambridge, Massachusetts
<br />      June 1983 <tt>-</tt> July 1983
<p>
     Ported a 2,000-line business package from IBM-PC BASIC to Apple-II BASIC.
</p>
</dd>
<dt>  APPLICATIONS PROGRAMMER (Consultant)
</dt>
<dd>
     Commonwealth School, Boston, Massachusetts
<br />      July 1981
<p>
     Wrote an expense tracking system in Microsoft BASIC under the
     CP/M operating system.
</p>
</dd>
</dl>
<h2>Patents Pending</h2>

<ul class="spacious">
   <li> Determining the Geographic Location of a Network Device

</li>
   <li> Creating a Geographic Database for Network Devices

</li>
   <li> Network Probing Using Overlapping Probe Packets

</li>
</ul>
<h2>Professional Affiliations</h2>

<ul class="spacious">
   <li> Internet Society

</li>
   <li> IEEE Communications Society

</li>
   <li> IEEE Computer Society

</li>
   <li> Usenix Association

</li>
   <li> ACM (Association for Computing Machinery)

</li>
   <li> Unix Users Association of Southern California

</li>
</ul>
<h2>Publications</h2>

<ul class="spacious">
   <li> Neuman, B. Clifford and Augart, Steven; Prospero: A Base for

     Building Information Infrastructure; in Proceedings of INET'93;
     August 1993.
</li>
   <li> Neuman, B. Clifford; Augart, Steven; and Upasani, Shantaprasad;

     Using Prospero to Support Integrated Location-Independent
     Computing; in Proceedings of the Usenix Symposium on Mobile
     and Location-Independent Computing; August 1993, pp. 29<tt>-</tt>34.
</li>
</ul>
<h2>Foreign Languages and Travel</h2>

<ul class="spacious">
  <li> Fluent in Spanish, Italian, and Esperanto.  Traveler's command

    of German and French.  Speak some Modern Greek and Swahili.
    Read Latin and Ancient Greek.
</li>
  <li> Extensive independent travel in Europe, Latin America, Asia, and Africa.

</li>
  <li> Certificate of proficiency in Spanish from the Government of Ecuador.

</li>
</ul>
<h2>Other Skills not Computer-Oriented</h2>

<ul class="spacious">
  <li> PADI certified scuba diver.

</li>
  <li> 100 hours of time logged as pilot in command of small airplanes.

</li>
</ul>
<h2>Internships and Volunteer Activities</h2>

<dl>
<dt>  TREASURER and MEMBER OF THE BOARD
</dt>
<dd>
     Santa Monica UUCC, Santa Monica, California
<br />      May 1993 <tt>-</tt> Apr. 1994.
<p>
     Wrote and managed a budget of a quarter of a million dollars for
     a nonprofit organization with tight financial constraints, four
     hundred members, seventy active volunteers, and five employees.
</p>
<p>
     Co-developed a successful plan to move from deficit to surplus by
     increased revenues, membership, and programs.
</p>
</dd>
<dt>  CRISIS COUNSELOR
</dt>
<dd>
     Project Place, Boston, Massachusetts
<br />      June 1984 <tt>-</tt> July 1985
<p>
     Fielded calls from individuals with various needs, listened to
     their problems, empathized, and referred them to appropriate
     resources.  Limited the time and telephone resources consumed by
     chronic callers.
</p>
</dd>
<dt>  STUDENT INTERN
</dt>
<dd>
     Honeywell Information Systems, Billerica, Massachusetts
<br />      June 1984 <tt>-</tt> Sept. 1984
<ul class="spacious">
     <li> Wrote applications in BASIC, C, Lotus 1-2-3, and VisiCalc.

</li>
     <li> Tested Honeywell's experimental Unix product.

</li>
     <li> Wrote and debugged a Unix terminal description (termcap) to drive

       a Honeywell video terminal.
</li>
     <li> Wrote and delivered an executive-level viewgraph presentation

       giving an overview of Unix and its threat to Honeywell's
       proprietary operating systems.
</li>
</ul>
</dd>
<dt>  COURIER
</dt>
<dd>
     Frontier Nursing Service, Wendover, Kentucky
<br />      Feb. 1983 <tt>-</tt> March 1983
<p>
     Worked for a non-profit rural health care service in
     Appalachia, a culturally isolated and impoverished area.
     Quickly adapted to local customs; learned the local dialect.
     Worked effectively with the traditionally suspicious
     Appalachian people.
</p>
</dd>
</dl>
<h2>Visa Status</h2>

<p>
   US Citizen.
</p>
<hr />
<p>
<small>
Resume for Steven Augart
<br />Updated January 30, 2003 (rev 24e)
</small>
</p>
<p>
<small>This resume is online at <a href="http://www.augart.com/resume">http://www.augart.com/resume</a>
</small>
</p>

Skills

Skill Level Experience
Autoconf Base Knowledge 6 Mo - 2 yr
JavaScript Base Knowledge 6 Mo - 2 yr
CVS Master 5 yr - 10 yr
C++ Master 2 yr - 5 yr
CGI Master 5 yr - 10 yr
HTML Master 5 yr - 10 yr
Java Master 2 yr - 5 yr
TCP/IP Master Apprentice > 10 years
GNU Emacs lisp Master Apprentice > 10 years
C Expert > 10 years
GNU/Linux Expert 2 yr - 5 yr

Back to the top

Powered by Savane 3.13-8ccc.
Corresponding source code