Embedded Software Engineer
SUMMARY
-
Over 30 years of experience in computer system development including both software development and hardware integration for complex real-time multi-computer systems.
-
Majority of experience is as a hands-on developer enhancing software systems.
-
Have three years of experience as the task leader for the development of the Wind and Polar satellite Payload Operations Control Center.
-
Have five years of experience enhancing the JAVA Graphical User Interface that was used to control the International Space Station’s Payload Software Integration and Verification Facility (PSIVF) software system that simulated the payload computer system used on the International Space Station. The system was capable of simulating up to 200 ISS payloads.
-
The PSIVF GUI allowed users to create and test custom displays using layout mode and then switch to browse mode to verify that the displays were functioning correctly. When I left the project we had created 78 displays for controlling the PSIVF.
-
The PSIVF GUI communicated with a SUN server using TCP/IP sockets. The SUN server communicated with six VME chassis’s which were used to simulate the interfaces needed to interface with the ISS payload computer systems.
HARDWARE AND SOFTWARE EXPERIENCE
-
Programming languages
-
C
-
C++ (working knowledge)
-
ADA
-
FORTRAN
-
Assembly languages (MACRO 11 and Z80)
-
COBOL
-
Java (jdk 1.6.0_24)
-
Device Interface Software
-
RK05 Disk Controller
-
Astro-Med strip chart recorder
-
Vector General Graphics Terminal
-
Analog and Digital Convertor Cards
-
Reflective memory
-
Bar code label microcomputer
-
Operating Systems
-
UNIX
-
Oracle Solaris
-
Windows OS
-
Linux Fedora Core 8 and 14
-
Custom Real-time OS (Z80 and Macro-11)
-
vxWorks
-
Realix
-
UNIX System Administration
-
ClearCase, CVS, and SCCS
-
ClearQuest
-
Embedded software development using vxWorks and Z80
-
Intercomputer Communication using Reflective memory, Mil STD-1553, TCP/IP, and TAXI Fiber Optic (Receive)
EXPERIENCE
Contractor, Superior Technical Resources, Arlington, Texas, 8/2011 - 11/2011.
-
Senior Software Engineer – Avionics assigned to work for L-3 Communications on their F-18 Tactical Operations Flight Trainer (TOFT).
-
Learned how to run the F-18 TOFT on different TOFT’s configured for the EF trainer, G trainer, and a development trainer that contained a software cockpit.
-
Responsible for completing activities against the F-18 TOFT and the Multifunctional Information Distribution System (MIDS).
-
Learned how to use ClearCase and how to create sandboxes and how to implement bubble sync and merge sync system updates.
-
Implemented a detailed documentation procedure for correcting problems that could be used by new developers to speed up their training cycle.
-
Learned basics on how to fly an F-18, how to cycle through F-18 cockpit displays to enable the MIDS network, and how to use L-3’s Tactical Operations Flight Trainer product.
-
The F-18 TOFT is an extremely complex system that is 1-2,000,000 lines of code and runs on approximately 100 computers on both Linux and Windows platforms.
Real Time Software Engineer, Boeing, Huntsville, Al. 11/2000 – 9/2010.
-
Developed software enhancements for the International Space Station (ISS) Payload Software Integration and Verification Facility (PSIVF).
-
Updated the PSIVF Java Graphical User Interface to save all of the user’s input to a file which enabled the test team to create automated test procedures which were used for performing Flight Qualification Test (FQT) on ISS Payload Configuration Files.
-
Assisted PSIVF lab technicians in isolating hardware problems at the ISS PSIVF. This equipment was very old and had reached its EOL.
-
Installed Linux Fedora Core 8 on five Dell workstations so that the computers could be started in either the Windows or the Linux Operating System. The DELL workstations were used to simulation ISS payloads by running the payload simulations from an NFS mounted disk on a Sun Solaris workstation. This setup allowed for the payload software to be upgraded as needed without having to re-install the software on each Dell workstation.
-
Assisted in upgrading PSIVF to run on new hardware consisting of a Sun Server and Sun workstation using Solaris 8. During this upgrade, I updated the system build scripts which improved system build time by 83%.
-
Added dual monitor support to Sun workstation which enabled the users to have a more robust user interface.
-
Verified that the Digital and Analog cards were correctly installed in the VME chassis, by using the software provided by the manufacturer to verify that the cards were properly installed and that their device addresses were setup correctly.
-
Upgraded the reflective memory (RM) driver to use upper two megabytes of RM on one chassis and the lower two megabytesof RM on the other five chassis. The Sun server was able to access all 4 megabytes of RM.
-
Added a software reset capability to the six VME chassis by enabling the sanity timer to fire and reset all the boards. This saved the user needing to manually reset the chassis using the reset switch on the main CPU board. This software reset capability provided a workaround for resetting the chassis when the reset switch on the main CPU board broke. These chassis were over ten years old and had reached their end-of-life (EOL).
-
Corrected problems with the payload simulation system task scheduling algorithm which divided each second into 40 processing frames. The problem was that some tasks were scheduled to run in the last processing frames, but were using more processing time than allowed causing the processes to never run.
-
Corrected major problem with the Mil-Std-1553 intercomputer transmission communication subsystem that made it impossible to stop and start payload simulations without rebooting all the computers in the PSIVF Facility. The problem was further complicated by a discrepancy with the receiving computer software, which did not reset the size of a payload simulation 1553 messages correctly. It was supposed to reset the expected size to 0 and then poll the payload simulations sub-address to determine the size of its message. For messages greater than 320 words, the receiving computer still tried to read words from the message above the first 320 words without knowing the actual size of the message.
-
Analyzed problem with High Rate Data Taxi Fiber Optic Interface which could only be fixed by changing the packet size to be divisible by 4 words or to purchase new hardware.
-
The PTE system consists of a custom JAVA User Interface that is cross-platform developed on the Windows and Solaris operating systems. The PTE also contains a Sun Server, Sun workstation, six VME chassis’s and two ISS functionally equivalent (FE) computers communicating using reflective memory, Ethernet, 1553 and TAXI High Speed fiber optic. The PTE is written in C, Ada, and Java.
-
Updated the Java User Interface software to allow the user to save development test procedure keystrokes into test script procedure files, which can be certified and reused for formal testing.
Senior Computer Scientist, CSC, Huntsville, Al. 3/1996 – 10/2000
-
Developed software systems for the Off-line Command Management system for the CHANDRA satellite. The command management system is an interactive menu driven system that allows the Flight Operations Team to generate 20 different validated spacecraft subsystem and instrument command loads. The command loads are defined using command sequence definition language input files and translated into validated spacecraft command load data files. The validated command loads are stored into an Oracle database server, where the files can be retrieved by the on-line system for uplink to the spacecraft.
-
Developed and enhanced the General Purpose Data Acquisition system used for monitoring rocket engine tests at MSFC, by acquiring real-time data and displaying, plotting, and storing the real-time acquisition data. The system used a MODCOMP computer, Sun workstations, and the Realix real-time UNIX OS, structured C, and TeleUse.
Computer Scientist, CSC, Laurel, Md. 1/85 - 3/96.
-
Task leader for the WIND and POLAR satellite operations control centers. Responsibilities as task leader included technical management of 12 task members, meeting with customer and users, analysis of software change requests, determining quick solutions to software discrepancies, and making software deliveries.
-
The WIND/POLAR systems, used NASA’s transportation payload operations control center architecture, and enabled the Flight Operations Team to command, control, and monitor satellites in real-time.
-
System analyst and system integrator for the WIND and POLAR satellite operations control centers. Software development responsibilities included developing C client/server software applications for a satellite telemetry simulator, software to perform telemetry decommutation, equation processors, and collection of down-linked on-board computer memory dumps.
-
Lead analyst responsible for the design and implementation of the Data Transfer system for the NASA UARS satellite Central Data Handling Facility. The system was a INGRES database driven, fault tolerant file transfer system enabling users at over 20 remote computers to schedule and request file transfers from the main computer system, that contained the mass storage system for all the UARS satellite scientific and real-time data. The system received the UARS satellite data from a Data Capture Facility using the NETEX BFX file transfer system.
Senior Member of Technical Staff (SMTS), CSC, Laurel, Md. 7/82 - 12/84
-
Developed the requirements specification for a diagnostic software package for a communications interface device between an IBM 370 and the Nascom Communications network. These requirements were used to implement this diagnostic software package on the IBM 370.
-
Designed and developed a Z80 assembly language firmware software system for a custom built multiprocessor, real-time, Z80 CPU based communications device, which performed protocol conversions enabling custom communications and display hardware to communicate with an AMDAHL front-end processor for an IBM 370. This software was initially developed and tested on a microprocessor development system and finally delivered on EPROM’s installed in the CPU boards.
Senior Systems Analyst, Vector Research Company, Md. 1/80 - 7/82
-
Completed the US Navy prototype Inventory Location and Audit Project (ILAP). This effort required completing the PDP COBOL software system and developing device drivers to communicate with a bar code label reader microcomputer and a high-speed bar code label printer.
-
Developed three prototype systems for the U.S. Navy’s Logistics Communication Terminal (LCT), a microcomputer system between two shipboard computers. Development included the real-time executive operating system (RTOS), I/O subsystem, and a file storage and retrieval system.
-
Converted the on-line Pattern Recognition/Analysis System (OLPARS) to execute on a PDP 11/34 computer with other model peripherals, by modifying device drivers for a graphics terminal, disk controller, card reader, and line printer
-
Modified DEC’s FORTRAN callable RT11 MACRO- 11 graphics package to execute on a Vector General Graphics display terminal.
EDUCATION
-
BS Mathematics, University of Maryland, College Park, Md
|