[Resume Outline]
[Objective]
[Qualifications]
[Applied Mathematics]
[Systems Administration]
[Web Development]
[Instruction]
[Honors]
[Personal]
[Printer-Friendly Version]
[Home]
Mark A. Martin
0610 SW Nevada St Apt H, Portland, OR 97219
mark@mark-a-martin.us
http://mark-a-martin.us/
Software Development
Languages
Perl, Perl/Tk, C, C++, Korn shell, Bash, Fortran 77, Pascal,
Matlab, Maple, Basic, HTML, Javascript, SQL, Java.
Protocols and Interfaces
TCP/IP, UDP, FTP, HTTP, CGI.
Databases
Oracle, PostgreSQL, relational database design.
Summary
I began programming in 1978 in Basic and Fortran via CRT, teletype,
and punch cards on HP minicomputers and IBM mainframes. Since then, I
have authored or contributed to a wide variety of projects in many
languages on many platforms. The projects have ranged from small
programs in a single language to projects consisting of tens of
thousands of lines of code in multiple languages. I have designed and
written procedural and object-oriented programs, have constructed
graphical user interfaces and animations, and have written or
participated in the development of distributed applications. Most
recently, I played several software development roles at a
bioinformatics company. In this capacity, I was a lead designer of
software for mathematically modeling prokaryotic organisms as networks
of metabolic reactions and maintaining the company's biochemical
pathway collection and a leader of the effort to provide the
infrastructure for using legacy tools and methods for developing and
maintaining the pathway collection.
Projects
2002
After leaving Integrated Genomics, I continued my research into
the dynamics of populations of marine plankton in response to climatic
changes.
Wrote software for performing cell-to-cell mapping in C to replace the
slow, inefficient MATLAB code that I used for this task in the past.
This allowed me to easily perform calculations that were previously
too large to be practical, even on very limited hardware.
2001
During this time, I was a Computational Scientist at Integrated
Genomics, Inc.
- One of two lead designers in a team of five people creating
software for mathematically modeling prokaryotic organisms as
networks of metabolic reactions and for developing and
maintaining the company's biochemical pathway collection.
Supervised and participated in implementation. (3-tier
distributed application using Java applets presented through an
Apache web server to manipulate data in a PostgreSQL database)
- Wrote scripts to migrate data from legacy databases to the
PostgreSQL database underlying our new tool. (Perl)
- A leader of the effort to provide the infrastructure for using
legacy tools and methods for developing and maintaining the
pathway collection. This included writing scripts to support
users and designing procedures to facilitate maintenance of the
pathway collection using legacy tools. (Bash, Perl)
- Wrote scripts to assist with systems administration. (Bash, Perl)
1998 - 2000
This period of time includes the last two years of my Ph.D. work and
work done after completing my Ph.D. During this time, my primary goal
was finishing my degree and nearly all of my work was performed on
Linux systems that I administer. Most of my work focused on analyzing
mathematical models of marine plankton, analyzing oceaongraphic data
for use in the models, and presenting the results of my research.
- Plotting tool and prototype interface for cell mapping.
Cell mapping is a technique of globally analyzing the dynamics of
periodically-forced systems of ordinary differential equations.
(C with a Perl/Tk GUI front end)
- Programs for creating bifurcation diagrams for systems of ordinary
differential equations. (C, Perl)
- Perl module that provides an object-oriented interface to
the graph program from the GNU Plotutils.
- Perl modules and scripts and C code to extract and process Joint Global
Ocean Flux Study (JGOFS, specifically BATS, BBOP, and HOTS) data.
- Perl and Bash scripts and C code for analyzing data from Levitus and
da Silva climatologies of oceanographic and atmospheric quantities.
- Perl script for creating and laying out contour plots using DISLIN
and data files in MTV data format.
- Perl and Bash scripts for creating and manipulating plots of data.
- Linux administrative scripts. (Perl, Bash)
- STAR (Stimulus Treatment for Auditory Research).
April 2000 - May 2000
STAR is a tool developed at Boystown National Research Hospital for
studying the elements of speech that are important to hearing in order
to develop better methods of assessing and treating auditory dysfunction.
The program presents stimuli to subjects, most of which are children,
using animated games. The experimenter operates the program through
a configuration file and a GUI. The program consists of approximately
4500 lines of MATLAB code and is used under Windows 95, 98, and 2000.
- Adapted the program to allow for new types of
experiments.
- Implemented a new experiment.
- Corrected portions of the program that did not comform
to the specification.
- Improved program stability and flexibility.
- Continued development of my web site, including this resumé.
See
Web Development
for details. (HTML, Javascript, Gimp, POV-Ray)
1996 - 1997
During this period of time, I was a systems administrator for Boeing
Information and Support Services and for the Department of Applied
Mathematics at the University of Washington. At Boeing, I was the
lead administrator for a team of 7 administrators responsible for
maintaining terabyte-scale Sequent Symmetry 5000 and Sequent NUMA-Q
2000 data servers. At the University of Washington, I helped maintain
a network of workstations and Xterminals. See
Systems Administration
for details. I also continued my studies, performing most of my work
on a Linux system that I administered.
- Perl module for transferring directory trees via FTP. This provided
a way of performing nightly backups using a dial-up connection to the
Internet.
- At Boeing, I created
- UNIX administrative scripts for development
and production environments. (Perl, Korn shell)
- Client-server tool for monitoring UNIX systems via
the company Intranet. (Perl and CGI under NCSA httpd)
- As an administrator at the University of Washington, I
contributed to and helped maintain the Applied
Mathematics web site and server. (HTML, NCSA httpd, Netscape Commerce
Server running on Digital UNIX)
- Developed personal web sites, experimenting with Perl CGI scripts, Java,
and Javascript on the Applied Mathematics web server and my own Fnord!
server running on Windows 95.
1992 - 1995
At this time, I was a graduate student in the Department of Applied
Mathematics at the University of Washington, studying mathematical ecology,
biological oceanography, boundary-layer meteorology, and climatology.
I also had a notable summer job writing radiation treatment planning
software for the University of Washington Department of Radiation Oncology.
- Global analysis of arbitrary-dimension, periodically-driven systems of
ordinary differential equations via simple cell mapping. (Matlab)
Features:
- Operated through a GUI.
- Provides many facilities for visualizing the dynamics
of 2 and 3 dimensional systems, including the creation of movies showing
the evolution of basins of attraction along coordinate directions or as
a parameter varies.
- Analyzes the behavior of higher-dimensional systems but
does not present the results graphically.
- Tools for creating bifurcation diagrams for ordinary differential
equations. (Matlab, Maple)
- Scientific programmer,
University of Washington Department of Radiation Oncology.
Radiation treatment planning software. (Pascal)
June 1993 - September 1993
- Implemented, optimized, and corrected portions of
the dose calculation engine (beamdose) of
Prism, the department's radiation treatment planning software.
- Ported the dose calculation code from Sun to HP
workstations.
- Developed automated testing software to ensure that
the code returned realistic values.
- Documented my work and flow-charted the dose calculation
software to assist in future modifications.
- Helped create the communication protocols that client
programs use to request and receive information from the dose calculation
program and modified the program to conform to the protocols.
The technical documents I wrote or contributed to are
- Prism Dose Computation Methods,
- Prism Dose Computation Server Communication
Protocol,
- Prism Beam Data File Description.
(These documents are no longer available on the Radiation Oncology server
so these links refer to local copies.)
- Simulation of the movement of many gravitationally attracting bodies.
(C++ with an X windows GUI front end based on the Simple Toolkit)
- Began developing personal web site.
See
Web Development
for details. (HTML)
1988 - 1991
During these years, I studied numerical analysis as a graduate student in
the Applied Mathematics departments at the University of Colorado and
the University of Washington and contributed to an effort to create a
large-eddy simulation cloud model at University of Washington.
- Implemented preconditioned conjugate gradient methods for solving
elliptical partial differential equations using multigrid as
a preconditioner. (Fortran 77, Matlab)
- Wrote multigrid and conjugate gradient poisson solvers. (Fortran 77)
- Implemented adaptive regridding of solution domains.
(Fortran 77 and Matlab)
- Completed course projects in numerical methods for solving ordinary
and partial differential equations, numerical linear algebra,
and approximation theory. (Fortran 77 and Matlab)
1986 - 1987
I was a graduate student in Mathematics at the University of Arizona
at this time.
- Numerical solution of ordinary differential equations.
(Turbo C under MS-DOS on IBM 386 PCs.)
1978 - 1985
My first exposure to programming was learning Basic and Fortran and programming
HP RPN calculators in High School in 1978. Later, I wrote programs for
physics classes as an undergraduate.
- Animated demonstration of Lorentz contraction and time dilation
in special relativity. (Basic and assembly language on the Commodore 64)
- Animated simulation of the detection of gravitational waves emitted
from a binary star system.
(Basic and assembly language on Commodore 64 and Apple IIe.)
- Wrote programs to analyze data from physics labs.
[Resume Outline]
[Objective]
[Qualifications]
[Applied Mathematics]
[Systems Administration]
[Web Development]
[Instruction]
[Honors]
[Personal]
[Printer-Friendly Version]
[Home]
Last modified: Thu Jul 4 18:09:23 CDT 2002