Resume for Bruce Tomlin

Bruce Tomlin
10077 Woodland Village Dr.
Austin, TX 78750
(512) 996-8406
Note: I am not willing to relocate except to San Antonio

E-mail:
http://xi6.com/resume/
http://xi6.com/projects/
http://xi6.com/hacks/

Technical Focus

Hardware - Intel PCs, Macintosh, Sun Sparc, SoC
Operating System - Linux (Slackware, Red Hat, SuSE, embedded on ARM), Solaris, Mac OS X, MS-DOS, Windows 2000
Languages - C, C++, Pascal (Turbo and Macintosh), ARM RISC assembler, AVR RISC assembler, 68000 assembler, 6809 assembler, Z-80 assembler, 6502 assembler, DOS batch files, Unix shell scripts, PERL, HTML
Protocols - TCP/IP, Ethernet, AppleTalk, DNS
Applications - Apache, Sendmail, BIND, MySQL, Ethereal/Wiredog, Subversion
Certifications - Cisco CCNA, November 2005-2008

Work Experience

Wiley Publishing Compnay, November 2009

Technical editor for book "CCNA Certification For Dummies", reviewed manuscript for technical accuracy.

Zarlink Semiconductor, June 2008-September 2008
(Contractor via Systems Pros, Inc.)

Implemented code for a chipset testing library per a specification written in mathematical notation, implemented using the C language, PPC Linux, and GCC/GNU toolchain. Used Subversion source code control system, including branching and merging of source trees.

Slacker, Inc., August 2007 - February 2008

Re-wrote AVR assembly-language stepper motor control program in GCC. Worked with Linux on an embedded platform (Cirrus EP9302 SoC with ARM9TDMI core). Maintained makefile scripts for software projects. Used Subversion (svn) to store source code. Wrote IR remote control receiver driver for Linux. Wrote Linux kernel driver and standalone driver to program Spartan 3 FPGA. Wrote Linux user-mode driver to control an I2C device via GPIO pins. Did minor microscope soldering board rework to connect probe wires to SMT devices. Used Intronix LogicPort logic analyzer to debug hardware signals. Used Abatron BDI2000 JTAG debugger to debug boot code.

Cisco Systems, Inc., November 2000 - October 2006

Wrote ARM assembler and C code to initialize and operate a custom Ethernet packet capture card using an IXP-1200 Network Processor. Maintained current and legacy C++ code for and added performance enhancements to an Intrusion Detection System. Wrote and tested new Intrusion Detection System signatures. Analyzed TCP/IP sessions to identify anomalies. Used Clearcase version control system for source code management.

Southwestern Bell Corporation Technology Resources Inc., Perl Programmer/Unix Administrator, August 2000 - November 2000
(Contractor via The Maxim Group)

Wrote Perl scripts and Unix shell scripts to automate data collection. Assembled and configured Sun Sparc systems (Enterprise 4500, Ultra 60, SparcStation 10/20) with the Solaris Unix operating system.

Autogas Systems, Inc, Programmer, May 1996 - July 2000

Programmed and maintained real-time embedded systems using 6809 assembler, and C++ on Windows NT, to control major brands of gas pumps and pay-at-the-pump terminals. Wrote MS-DOS batch files to automate code generation process, and Turbo Pascal utility programs to convert data for debugging.

Radio Cap Company, Programmer and Help Desk, Oct 1995 to May 1996

Wrote software in Pascal to automate the storage and retrieval of artwork on their Appleshare Mac OS file server. Performed help desk functions when necessary.

Self-employed, Shareware Author, 1992 - 1995

Wrote the shareware utility SoundMaster in Pascal and 68000 Assembler for Mac OS.

InMar Group, Programmer, May 1990 - Jan 1992

Wrote an adware program for Buick using Object Pascal to run under Mac OS. This included a simple 3-D golf game.

OAO Corporation, Systems Analyst, July 1988 - May 1990

Developed and maintained utility programs and subroutine libraries in Turbo Pascal for MS-DOS as support software for programs to test individual learning abilities for the Learning Abilities Management Program of the Air Force Human Resources Laboratory (AFHRL) at Brooks Air Force Base.
Implemented a hardware and software upgrade to a system used at Lackland AFB. This 68000-based system ran a UNIX clone called Regulus. Added a SCSI 1.2 megabyte floppy disk and a 40 megabyte hard disk to the system, and rewrote the boot ROM (68000 assembler). Wrote a utility in Turbo Pascal to read the floppy disks from this system on MS-DOS machines.

Education

University of Texas at San Antonio, 1982-1988, B.S. in Computer Science
Southern Methodist University (San Antonio campus), Fall 1999
 Successfully completed and contributed significantly to classes in:
- Introduction to Unix (Solaris)
- Shell Programming
- Unix System Administration
- Unix Networking Administration

Non-work related experience

Linux/Unix System Administrator and Webmaster

I have been running my own web site (xi6.com/fanboy.net) over a DSL connection since March 2000. The site currently runs on OS X 10.4 (it formerly ran on Slackware Linux), and runs Apache web server with mod-perl scripts, ISC DHCP server, BIND DNS server, and Sendmail SMTP e-mail server.

- Wrote an open-source 6502/6809/68HC11/Z-80/68000 macro assembler in C, for my hobby of classic video games programming. See http://xi6.com/hacks/ for download.
- In 2005, designed a circuit board for Atari 7800 ROM cartridges. See above link for more info.
- In mid-2000, Presented technical seminars for the San Antonio Linux user group (SATLUG) on topics such as Linux firewalling.
- In 1999, wrote a video subtitling program for Mac OS using C.
- In 1987, was in the ACM programming contest team for UTSA, which won the regional programming contest and went on to the national contest.

rev 2008-02