SUMMARY OF QUALIFICATIONS:
- Over twenty years experience designing, programming, and debugging various types of software including operating systems and device drivers.
- Strong experience in Linux including programming, installing, configuring, and administration. Experience modifying and debugging Linux Open Source network device drivers.
- Experience in AIX, UNIX, shell scripts, and system administration. Familiar with Curses and signal handling.
- More than 5 years experience in Customer Support, including live calls and on-site visits.
- Ten years of experience programming, supporting, configuring, and troubleshooting the IBM OS/2 operating system, including Presentation Manager applications. Familiar with beta builds, porting of C code to OS/2, and the OS/2 Kernel Debugger.
- Very familiar with DOS programming in C, and in porting programs to other environments. Experience in several assembly languages and BIOS.
- Some experience with Java, mostly writing test programs and games.
EDUCATION:
Lamar University - Beaumont, Texas
Bachelor of Science in Computer Science
Minors in Business and Math
EMPLOYMENT:
Technical Solutions Manager - IBM Global Services, Austin, TX 8/2007 - present
Assist Advanced Support clients with Red Hat and SUSE Enterprise Linux server distros. Perform troubleshooting
and problem solving assistance over the phone. Analyze system logs, crash dumps and hangs, and also provide
a single point of contact for all issues including hardware problems. Create and send detailed Problem Management
(PMR) report summaries and assist in other areas as needed. Recently attended the Red Hat Certified Engineer
class, and currently preparing for the LPIC-I exams.
Software Engineer - IBM Linux Technology Center, Austin, TX 7/2003 - 8/2007
Modified, debugged, and enhanced Linux ethernet device drivers, including extensive work
on the Cell Blade platform. Also fixed bugs
and created enhancements for ethernet testing tools and scripts. Developed and implemented
test plans. Created and maintained various Web sites and Linux-based documentation including
an article for IBM Developer Works. Managed department lab, ordered equipment and handled
security compliance issues.
Software Engineer - IBM Microelectronics, Austin, TX 3/2001 - 7/2003
Performed functional verification of embedded cores on prototype PowerPC
processors. Created detailed test plans to cover all chip functions. Wrote small
device drivers under Linux to test all functions
of a particular core in both standalone and under stress conditions. Expert on
the ethernet (EMAC) core, also familiar with others such as DMA, Real Time Clock,
Encryption, Performance Monitor, etc. Also served as team leader for various projects
and helped maintain the department switches (Cisco).
Software Engineer - Tivoli Systems, Inc., Austin, TX 7/2000 - 2/2001
Ported defects using Solaris Unix to newer software versions. Fixed other
defects (socket and memory leaks, etc.) using code analysis and the GDB
debugger. Installed and configured OS/2 build machines, provided OS/2
programming assistance to team members, and wrote test programs and testcases.
Software Engineer - IBM Network Computing Division, Austin, TX 7/1997 - 7/2000
Assisted with the conversion of emulated floating point routines on the PowerPC
platform. Work was done on a NetBSD server using assembly and C. Created and ran test apps
to insure good floating point compliance. Familiar with the RiscWatch debugger.
Also tested the kernel and boot monitor, including Java, on Network Station computers.
Documented all test results and procedures and put into HTML. Wrote defects
when necessary and assisted with problem resolution. Configured networks, machines,
user accounts, etc. Tested BIOS and OS on new hardware and used network sniffer to
diagnose LAN problems. Helped out in other areas as needed.
Software Engineer - Cornerstone Integrated Services, Austin TX 3/1997 - 7/1997
Assisted in the design and creation of the Coupon Database enhancement for the
Sears cash register project. Checked code for proper output, coding standards, etc.
Also helped with the verification of other projects.
Software Engineer - Raytheon E-Systems, Arlington, TX 12/1996 - 2/1997
Worked on a team creating a pilot OS/2 PM project for a utility company.
Project used DB2 and TCPIP to radio orders to field personnel and also track
other activities. This was a complex project involving many windows,
containers, dialogs, and makefiles. Wrote some tools to help manage the
project and also helped install and maintain PVCS.
Software Engineer - Tandem Corporation, Austin, TX 7/1996 - 11/1996
Wrote utilities in C on an HP Workstation to help the design team with
various tasks including file system (tree) traversal and Shell script
verification. Wrote a tool which examines a script and self-documents it
by using all available info such as man pages and comments. Ported several
apps from OS/2 to Unix including a text editor and file finder.
Software Engineer - IBM Solution Developer Operations, Austin, TX 2/1995 - 6/1996
Provided programming support to ISVs writing applications for OS/2 Warp.
Duties involved contacting a customer, getting a description of the problem
and/or a test scenario, recreating the problem if necessary (which involved
writing C and/or PM code), and then finding and providing either a solution,
fix, or workaround. Main area of expertise is with OS/2 Base and Internals.
Trained and experienced in use of the OS/2 Kernel Debugger to analyze traps
and hangs, and also handled SMP problems. Familiar with OS/2 for PowerPC.
Software Engineer - IBM Personal Systems Division, Austin, Texas 5/1994 - 1/1995
Performed certification tests on network adapter cards under Lan Server 3.0
and 4.0 for the OS/2 SMP 2.11 operating system. Modified and improved the
tests when necessary and documented all results and procedures. Familiar
with the problems configuring and programming Symmetrical Multiprocessor
systems. Also made modifications to NLS files for LS 4.0 and put them on the
CMVC system. Official beta tester for OS/2 Warp.
Software Engineer - IBM Personal Systems Division, Austin, Texas 6/1993 - 12/1993
Provided technical support to members of the IBM Developers Assistance and
ISVHELP programs. Duties involved calling a customer, getting an exact
problem description and/or scenario, recreating the problem if necessary
(which usually involved C and PM coding), and then finding and providing
either a solution, fix, or workaround. Submitted defects to OS/2 support when
necessary. Detailed knowledge of many aspects of OS/2 was needed in order to
successfully perform this assignment.
Software Engineer - IBM Personal Systems Division, Boca Raton, FL 11/1992 - 4/1993
Provided 2.5 level support to customers of the IBM OS/2 2.0 operating system.
Primarily handled problems with the Workplace Shell (.INI and EA corruption),
also investigated more complicated issues. Used the Kernel Debugger and OS/2
source code to solve particularly hard problems. Served as Hardware
Coordinator for group of 35 people tracking machine inventory and other
items. Also wrote several programs in C and PM to help do the job more
efficiently including LHOST, a RETAIN database tool.
Software Engineer - IBM Personal Systems Division, Austin, Texas 3/1991 - 9/1992
Main project involved modifying an OS/2 Presentation Manager application to
record and playback key strokes and mouse operations for testing purposes.
Also modified another PM app which used NETBIOS to communicate with and
receive data from client machines, including the screen contents (VIO) of
each client. Became familiar with the OS/2 Workplace Shell, and with porting
applications from DOS to 16-bit OS/2, and later to 32-bit OS/2. Helped
customers with OS/2 2.0 problems through the HELPOS2 project.
Software Engineer - IBM Information Development, Southlake, Texas 4/1990 - 3/1991
Designed and coded computer based tutorials (CBT) for IBM OfficeVision.
Created, inspected, and updated sets of tutorials per instructions from
documentation specialists using OS/2 1.2 and Presentation Manager. Also
designed and wrote utilities in C for the team to help verify tutorial
accuracy in a more efficient manner. Passed a Team Interview class with
agency, and received a C Programming Certificate from North Lake College.
Software Engineer - Texas Instruments PPD, Temple, Texas 7/1989 - 1/1990
Designed and modified printer software for airline support. Wrote code
in C and z80 assembly in a multiprocessor environment under Unix. Assisted
with the implementation of an embedded realtime operating system to more
efficiently handle printer resources, and designed the downloading capability
and code for the printer. Wrote test and configuration software in C, and
became proficient using a hardware emulator platform for the z80 processor.
Software Engineer - IBM Entry Systems Division, Austin, Texas 5/1988 - 6/1989
Assisted in the design and creation of keyboard, tty, and printer device
drivers in C for the prototype IBM RS-6000 computer. Work was done on LAN
connected IBM RT PCs using C and assembly under AIX. Served as Systems
Administrator for this lab and wrote several Shell scripts and C programs to
enable better network performance and reliability. Wrote a REXX program to
completely check entire prototype machine and log results.
RELATED EXPERIENCE:
- Have designed and written over 100 programs and utilities for my own use in order to become a more efficient programmer and employee. These include a full-function text editor, binary editor, and file finder program, among others. The source code for most of these applications will compile to DOS, OS/2, Linux, and UNIX versions. Have also written two OS/2 Presentation Manager video games and three Java games. Most of these programs are available from my web page.
STRENGTHS:
- Enjoy programming and working hard, will never get "burned out".
- Dependable, organized, accurate, and honest.
- Outgoing and people oriented. Communicate very well.
- Innovative. Strong troubleshooting and problem solving skills.
LINKS:
The Jim Lewis Home Page