Summary:
Professional Experience:
03/11/04 current SENIOR SOFTWARE DEVELOPER (CORPORATION PROVIDED UPON REQUEST), Frisco, TX
01/01 03/04 - SENIOR
CONSULTANT , SIMMONS CORPORATION, TX.+ Developed several Atmel applications involving drivers (written in C) for
ring-buffer-based serial ports (both Atmel onboard and National Semiconductor
offboard UARTs), thermistors, and SPI interface to probes measuring liquid
levels. Also ported several HC11-based applications to Amtel board using Atmel
103L CPU with CodeVision. Developed command-line serial interface to perform
probe and proprietary diagnostics.
+ C++ and C development of three revenue-generating 68HC11 applications and
maintained an 8051 serial-based embedded server C application: two of these
sent/received commands/reports from fuel-probes monitoring water, temperature
and fuel levels in a fuel-tank and at the same time receiving/transmitting
commands/reports from/to another 8051-based security-panel embedded
application. The third embedded application ran inside a Simmons-proprietary
probe to measure water/temp/fuel levels & respond to requests from the
first app. Work also involved serial interrupt handlers (NS16650), timers, and
state-machines.
+ C++: developed MFC GUI dialog apps to provide parsing, plotting, &
analysis of probe data. All development and simulation for all applications
done under Visual Studio or CodeVision.
Second time with Simmons.
12/00 04/01 LEAD
CONSULTANT , ALCATEL USA, TX.+ Developed application to automate generation of Clearcase source-fetches and auto-generate makefile to effect local-builds outside the Clearcase CM "view" (all under a Sun Solaris workstation environment).5/99 12/00, LEAD DEVELOPMENT ENGINEER, WEBLINK WIRELESS INC., TX.
+ Lead C design and development engineer. Developed an application framework (library) and several real-world ANSI-C embedded applications for a wireless (Motorola) telemetry device written as C-code on an ARM-chip based platform) utilizing RF messaging (Motorola Reflex25 protocol), memory/flash-file management, and serial protocol APIs for a telemetry device (Motorola CreataLink 2XT) utilizing serial port, I/O pins, and an A/D port interface (details under NDA). All development done in combination of MS Visual Studio (simulation) and an ARM IDE to compile/test/debug actual code on the ARM chip with (otherwise unused) ARM IDE.2/98 5/99 - SENIOR
CONSULTANT , SIMMONS CORPORATION, TX.C++ development of serial communications interface and GUI application acting as
a modem-based server/gateway between embedded fuel-tank monitoring system and
database server. Used Visual Studio C++ 1.52 and C++ 5.0/6.0 to write
15,000 lines of C++ OOP code under Windows NT containing SDI, MFC,
event-handling synchronization code and using GreenLeaf COM OCX. Internal
communications engine designed as object-oriented hierarchical state-machine to
support dialing out and receiving calls-from remote system using proprietary
communications protocol. Researched porting application into automation server
and COM components.
10/98 - 12/98, SENIOR
CONSULTANT , BABBAGES-ETC, TX.Rewrote PDS Basic module to update "store" and inventory Btrieve files for
transfers from/to defective to non-defective, shrink, and reverse shrink for
nightly batch processing of 450 retail stores. All sales movements (sales,
returns, purchase-from-customer) also processed by module. Implemented partial
"transaction" integrity capability by making modules restartable if fatal
errors detected. Redesigned and rewrote module handling distribution
discrepancies via receiveds.
10/97 - 2/98, SENIOR ENGINEER, ALCATEL NETWORK SYSTEMS, TX.
C++ development: maintained and added GUI dialog components to an HP/UX (UNIX) Softbench C++ program implementing a cross-connect wizard for SONET ADM. Software used HP UIM/X and developed on Windows NT.
6/97 - 9/97, SENIOR
CONSULTANT , B.R.B.A., TX.C++ software development of a test engine for
client/server Internet-based credit-application submission package. Engine was
object-oriented Visual C++ console application using Winsock socket
programming, WIN32 API, MFC, SQL for Sybase, &
multi-threading/synchronization and running/developed under NT.
1/96 - 5/97, SOFTWARE ENGINEER, ASSET INTERTECH, INC., TX.
C++/C development of a scan engine enhancements for IEEE 1149.1 boundary scan
support. Software used Borland C/C++ in Windows NT environment. Wrote 10,000
line installation software program using INSTALLSHIELD3 (C/Pascal-like) to
handle multi-product CD-ROM/floppy/disk distribution for Windows 95/NT. Used
WIN32 API to install NT services, process .INI files, update NT/95 Registry,
load/access security DLL, and install third-party products. Also, instrumented
scan engine software with Cantata coverage analysis tool to determine test
suite coverage.
2/95 - 1/96, SOFTWARE ENGINEER, DNA ENTERPRISES, INC., TX.
C++ (Metaware) development and rewrite of GUI components and portions of
real-time inter-process communication for audio portion of digitally-switched
air-traffic controller system. Software written with Metaware C++ using ZINC
GUI application framework running under real-time PSOS on a 386 PC.
4/93 - 2/95, SW ENGINEER, CONVEX COMPUTER CORPORATION, TX.
+ C++ port of symbolic debugger (300,000 lines of OOP/OOD C++) from a UNIX-based
hardware platform to HP PA-RISC based architecture. Work accomplished includes
process-model control interface (signal handling, implementation of
breakpoints), porting FORTRAN intrinsic library to use a C++-calls-FORTRAN
interface, and providing support for reading core files.
+ C++ development of 64-bit integer class.
+ Taught C++ course. Took OOD (using FUSION) graduate course at UTD. Wrote
complex scripting tools for source browsing and test-case analysis using CONVEX
/ HP-UX UNIX shell (csh, tsh) programming languages.
3/92 - 4/93, PRESIDENT, Realtime Solutions Incorporated, Pompano Beach, FL.
Developed, productized, marketed and sold a Symbolic Debugger product for FORTRAN 77 running on MODCOMP 32/xx computers. Written in FORTRAN 77 and MODCOMP Assembler Language and achieved through a joint business relationship with MODCOMP.
1/79 - 3/92 (14 YEARS) MODULAR COMPUTER SYSTEMS, INC., POMPANO BEACH, FL:
12/90 - 3/92 (2.5 YEARS))
Manager Development Products Assurance (12/90 -
03/92: 2.5 years): Provided technical/personal leadership and
motivation for five software programmers responsible for testing all hardware
and software systems provided by MODCOMP (real-time operating systems,
compilers, editors, tools, applications, networking, and specialized hardware
controllers). Produced and assisted with test plans, test designs, and testing
of both proprietary and UNIX real-time operating systems.
Member Technical Staff
(01/79 - 12/90):
+ Ported C run-time library from standard UNIX to proprietary
real-time UNIX.
+ Designed and implemented kernel synchronization routines (Assembler) for
real-time process scheduler, memory management, interrupt handlers, system
loader, and real-time system calls to be used in port of proprietary operating
system to multi-processor version.
+ Fixed 400+ customer-reported software problems and developed many areas of
functionality in kernel and system tool areas of a proprietary real-time
operating systems executive services, I/O subsystem (device drivers), memory
management, and process management subsystems. Became key employee and expert
in MODCOMP operating systems, machine architecture, Assembler language, and
operating system design.
+ Developed extensive CPU/systems benchmarks and regression tests to supplement
diagnostics and analysis of robustness and performance of new real-time
computer board, firmware and hardware design changes to existing designs. Also
developed CPU instruction-set timing analyzer.
+ Designed and implemented two key products (50,000 line applications): (1) a
source-control management system integrated with database system and (2) a
query-language interpreter for a proprietary database system.
Education:
Strengths:
the end