Eduardo Santiago

107 Central Park Square #134
Los Alamos, NM 87544-4020
+1 505-662-5142


  Bachelor of Science, Computer Science;  Minor, German.
  Rensselaer Polytechnic Institute; Troy, NY; May, 1987.


Lucent Technologies, IntraNetworking Systems (formerly Ascend Communications)

Toolsmith Jan 2001-Present
Optimized (both for machines & humans) development environment for TAOS software. Developed scores of reusable Perl modules for simplifing SQL queries, cross-referencing code, and many standard tasks. Integrated many unnecessarily-separate web pages, lots of CGI, blah blah.

Los Alamos National Laboratory, group NIS-1 (Space and Atmospheric Sciences)

Staff Member May 1998-Jan 2001
Designed and developed software for analyzing data from ACE, Ulysses, Lunar Prospector, Deep Space One, IMAGE, and Genesis space exploration missions. Updated and/or rewrote thousands of lines of scientific software in order to make portable and add features. Automated all processing of incoming telemetry and data. Work which was formerly done daily by people, is now done nightly without human intervention.

Designed informative, visually pleasing, easy-to-read plots of instrument data, and developed software to generate these automatically. Developed simple graphical interfaces to these routines, in order to allow Investigators to view results online in real-time.

Developed efficient, automated WWW interfaces to supply mission data to worldwide scientific community. Investigated algorithms for generating useful information from raw data. Evaluated spacecraft health telemetry and designed methods for flagging ``suspect'' data.

Wrote code for performing statistical analyses of the solar wind. Wrote hundreds of IDL procedures to generate daily summary plots for new data, as well as special-case plots for publication or grant proposals. Developed core set of reusable modules used across most instruments.

Developed a clean, elegant interface to the UDF data format library, allowing dozens of scientists on the IMAGE mission to access their data with ease. My code provides a simple Open/Read/Close interface to the complicated underlying UDF mechanisms.

Developed a simple-to-use library for performing coordinate transformations between physical frames of reference. Surprisingly, although these transformations are used daily in solar plasma physics, no comprehensive library existed for this purpose.

Developed a software system for interfacing IDL to SPICE (a JPL toolkit for providing spacecraft ephemeris). My system comprises a Perl script that reads in a well-formed .h file with function prototypes, and generates wrappers and housekeeping code for nearly 300 functions. JPL will be shipping my system with their next release of SPICE.

Convex Computer Corp. (now a subsidiary of Hewlett-Packard)

System Administrator July 1994-May 1998
on-site at Los Alamos National Laboratory, Los Alamos, New Mexico
Was primarily responsible for the maintenance and administration of a Convex C3240 system controlling a Metrum RSS600 tape jukebox. This required constant monitoring of tapes, tape drives, the robot, and (not least) the FileServ software that runs it. It also required me to educate users in the best ways of storing and accessing their data on this mass storage system. Developed dozens of tools to assist in its regular maintenance and auditing.

Was also responsible for the operation of over one hundred mixed UNIX workstations spread out over three physical networks. This entailed all aspects of their running, from the initial installation to their everyday successful operation. To aid in this, I developed yet more tools for handling such things as backups, host table generation and checking (e.g., to keep the central DNS registry up to date), new account and mail alias generation, automount map creation, disk space monitoring, and all the typical duties of your standard sysadmin. One of my more successful developments has been the /packages hieararchy for software packages.

The UNIX "cluster" is served by two Network Appliance F330 servers, which require so little administration that it's almost embarassing to claim expertise on them. I have implemented a reliable backup strategy for them as well as a proactive disk quota system for preventing inadvertent disk overruns.

Was also webmaster at, and created a large number of CGI utilities there as well as some for internal HP-Convex servers. All my documentation on the running of the UNIX cluster is online there as well.

From December 1997 through May 1998, worked in NIS-1 as scientific programmer (see above). Same job as today, just subcontracting differences.

Auspex Systems, Inc.

Software Engineer March 1992-June 1994
Software Engineering group, Santa Clara, CA

Working in a team of four, ported the Auspex NetServer software to an AIX platform. This included all levels, from close to a hundred shell scripts and user applications, to a handful of device drivers. This project required much design work to integrate the Auspex software into the AIX environment in a clean manner. Moved source base for this project from RCS to CVS control and wrote scripts to assist in source code control and management.

Wrote driver code used in bringup of new multifunction I/O processor board. This included integrating OpenBoot principles into the Auspex (Sun-based, not AIX) kernel.

Developed and maintained internal bug-tracking tool used hundreds of times each day to manage bugs and RFEs. Wrote e-mail and CGI front ends granting customers visibility into selected portion of bug database.

When the company moved to a new, much larger building, wrote a window-based map application used for finding peoples' new offices.

Prototyped, set up and implemented WWW server for Auspex, including customer access to company information, press releases and selected bug information. For over a year, my work remained Auspex's principal web presence.

Investigated and recommended third-party alternatives for source control, bug tracking, and layered product packaging.

Digital Equipment Corporation

Software Engineer May 1988-March 1992
Workstations Systems Engineering group, Palo Alto, CA
Designed, specified and prototyped "windowing ROM" environment for DEC workstations.

Designed and implemented set of tools for managing hardware design releases. This involved interfacing between two disjoint groups--Design Engineering and Manufacturing--neither of which really understood what the other did. My job was to understand both sides and create an automated solution.

Ported parts of OSF/1 kernel to new hardware platform of DECstation 5000 line.

Wrote dozens of task-automating tools for coworkers throughout the site. Wrote tools to manage my workstation, and acted as local Ultrix contact and support-type for our group after we "withdrew" from site-wide system management.

I even did some hardware! Designed keyboard interface board using I²C protocol. Enhanced and fixed several in-house CAD packages in the process.

Designed diagnostic strategy and architecture for DECstation 5000 line. Implemented diagnostic suite for CPU subsystem. Wrote TURBOchannel diagnostic architecture specification. Developed tools to provide simple and powerful development environment for TURBOchannel option board firmware developers (both in-house and third-party).

Developed firmware and loadable CPU, cache, memory and I/O diagnostics for multiprocessor VAX workstation. Developed network subsystem diagnostics for DECstation 3100 (DEC's entry into the RISC market).

Software Engineer May 1987-May 1988
LES Diagnostic Engineering group, Maynard, MA
Developed CPU and network diagnostics for MicroVAX 3000 systems. Assisted in initial debug of CVAX processor chip. Wrote tools to simplify and automate diagnostic development.

Worked on Advanced Development project involving automated interpretation of diagnostic error messages using a windowing interface. Set up and managed local area VAXcluster of workstations for development group.

Software Engineer (co-op) Summer 1986
Hudson Computer Resources group, Hudson, MA
Assisted in system management of Hudson's VMS computer facilities. Wrote tools to make life simple. In spare time, set up tool suite for Training group and built simple environment to help in managing distribution lists and technical seminar mailings.

Software Engineer (co-op) Summers 1984, 1985
TOPS-20 OS Monitor group, Marlboro, MA
Worked on enhancements for TOPS-20 release 6.0 and 6.1. Fixed bugs and tested code for previous releases.


Knowledgeable (user & kernel level) in several flavours of UNIX (Linux, *BSD, Solaris, HP-UX, Ultrix, OSF/1), VAX/VMS and TOPS-20 operating systems. Fluent in HTTP/HTML/CGI environment. Have done some X11 programming, but not recently (e.g., see xlbiff in X11R6 contrib tape).


Fluent in C, Perl, IDL, PostScript, sh, and the like. Once fluent in C++, MIPS assembly, VAX macro, MACRO-20, Forth, Lisp, 6502 assembly, awk/lex/yacc/etc. If pressed, will admit to having coded in Pascal, FORTRAN, APL and 3081 assembly. Conversant in java.


Fluent in English and Spanish. Conversant in ASL (American Sign Language). Now trying to learn Russian. In the process of forgetting my German.


Flying, reading, cooking, shooting, backpacking, music, Amateur Radio, languages.


D.J.McComas, B.L.Barraclough, H.O.Funsten, J.T.Gosling, E.Santiago-Muñoz, R.M.Skoug, B.E.Goldstein, M.Neugebauer, P.Riley, and A.Balogh, Solar wind observations over Ulysses' first full polar orbit, Journal of Geophysical Research, 105(A5):10419--10433, 2000


Available on request.

Ed Santiago /

$Id: index.html,v 1.3 2002/09/30 23:33:28 esm Exp $