Focusing on the use of Java in embedded,
real-time systems, provided software
architecture, design and implementation
of numerous in-house projects to support
customers and their sales teams.
These projects included machine
learning, FPGA chipset access,
image recognition, motor control and
IoT applications for Siemens, Xilinx,
Fiat-Chrysler and others.
Created several application notes to
provide customers with detailed
step-by-step directions on how to use
various aspects of the product line and
provided customer training on how to
best utilize the company's products.
Ported the aicas Java Virtual Machine to
run in the PikeOS real time operating
system (RTOS) while enhancing support
for Embedded Linux, VxWorks and QNX
RTOS products.
The Boeing Company
Adviser for the safety-critical software aspects of the F-15E
Strike Eagle - System 2 nuclear weapons system upgrade.
Contributor to DO-178C/ED-12C – Software Considerations in Airborne
Systems and Equipment Certification – the international standard
for safety-critical systems operating in civil airspace.
Key author of DO 332 – Object-oriented Technology and Related
Techniques – the object-oriented software supplement to DO-178C.
Contributor to three airworthiness security standards for the FAA and EASA:
DO-326A / ED-202A – Airworthiness Security Process Specification
DO-355 / ED-204 – Information Security Guidance for Continuing Airworthiness
DO-356 / ED-203 – Airworthiness Security Methods and Considerations
Architect and lead implementer for the augmented reality radio
simulator for the C-17 Integrated Radio Management System used to
refine the design of the C-17 radio systems created for the United
Arab Emirates Air Force and the Indian Air Force.
Java language advisor for the Future Combat Systems (FCS) effort
and responsible for the retention of approximately $500 million of
Java software for FCS.
Principal architect and implementer of a software test analysis
methodology in which avionics software formal testing is in itself
analyzed for completeness of code coverage of the avionics
software under test.
Principal architect of the web-based tools used by developers of
the avionics for the USAF C-17, including Java- and Groovy-based
web servers for peer review, test result analysis, software change
tracking and others.
Provided training to senior software developers on exception
handling as used in Ada, Java, Modula-3 and C++.
Researched and created the first functional packages for new
avionics software to adhere to the strict requirements of the
Ravenscar profile for real-time safety-critical software.
Provided tools necessary to support CMMI level 3 and level 4
software process maturity certification.
California Applied Trading Science
Produced all data and reports for clearing and regulatory
compliance including real-time short rule checking and NASDAQ
trades.
Researched and implemented necessary steps to comply with
formal and legal requirements for record keeping and
transaction reporting for NASDAQ and the SEC.
Created and maintained the company SQL database for trade
transaction activity including Java network programming used
to bring transaction data from New York and Chicago in near real-time.
Created portions of the trade engine involved in the use of
the FIX and ITCH financial network protocols.
Axiom Navigation
Reorganized and refactored existing product line embedded software
(C and C++) in order to support modular development and additional
related products.
Introduced software development methods and processes to establish quality,
robustness and responsiveness to changing product definition
and customer requirements, marketing priorities and business planning.
Researched, designed and implemented a new product line
consisting of a multi-tiered web application server running on
Linux to support fleet management operations for customers.
This new business opportunity provided existing customers, the
majority of whom were not comfortable with software development,
a ready-made application enabling them to keep track of their
vehicle fleet in real-time. This application involved the
creation of Java applets, servlets and Java server pages, their
communications with remote web services using XML-RPC and a
local database using JDBC, and the installation and maintenance
of a JBoss web server.
Sun Microsystems
As the lead engineer for Sun Microsystems in a joint project
with Wind River Systems, provided management liaison between the
two companies and supervised the architectural integration with
and porting of the Java Media Framework to a Java-enabled
prototype of a tablet-based computer running VxWorks developed
for Intel.
Provided the overall software architecture and detailed software
design for a Java-based video conferencing system being built by
Cisco Systems. This included simulation of the hardware,
multi-threaded hardware control through JNI, embedded browser
integration, graphical user interface component design, database
access and maintenance and integration with the VxWorks
executive.
Ported major portions of the Personal Java virtual machine and
its environment to several processors, including the PowerPC,
Intel Pentium and StrongArm. This involved gaining detailed
knowledge of the operating system kernel and the design and
implementation of the SMI Personal Java virtual machine.
Provided leadership for a joint Sun Microsystems / Nokia project
developing a set-top box incorporating a modified version of the
Mozilla browser with Sun's Personal Java as its JVM. Created
and supervised acceptance testing of the JVM including browser
security issues, RMI and applet interaction.
Interstate Electronics Corporation
Managed the software systems for field trials of aircraft
training range systems, including supervising and participating
in their deployment in South Korea and Taiwan.
Designed and implemented portions of the firmware of Global
Positioning Satellite (GPS) receivers while providing the
primary guidance as to how such designs could be efficiently
implemented with the selected compiler and runtime system.
Created a distributed trajectory simulator used to analyze and
validate avionics software and GPS receiver tracking and
position reporting.
Designed and implemented critical portions, including RAIM
compliance and message exchange and validation of a Differential
GPS ground station used for precision landing guidance of
commercial aircraft.
TLD Systems, LTD
Manager of Software Quality Assurance. Responsible for full validation
of the company's principal product, the TLD Ada Compiler for the 1750A
central processor which was heavily utilized in avionics,
satellite and radiation hostile environments.
Major contributor to the syntax and semantic analysis portions of the
TLD Ada compiler.
Boulton & Watt Engineering
Designed and implemented a tool set for geologists to perform
aquifer analysis and well placement for site dewatering.
Designed and implemented a compiler for a company specific
computer programming language to enable the transition to
a more commercially viable software development environment.
Christian Rovsing Corporation
Using the C programming language, implemented multiple communications
protocols including NATO Link-1 and X.25 for embedded military systems.
Provided consultation and analysis of communications protocols and
their potential security problems.
Johnson Controls, Incorporated
Major contributor to the software implementation of the automatic
controls for the wastewater treatment plant in Hobbs, New Mexico.
Hughes Aircraft Company
Programmer contributing to "Combat Grande", the combat air control
center for the Spanish Air Force, on site at
Torrejón de Ardoz, Spain.
Implementer of several software packages for mobile USAF air control
centers.
United States Navy
Programmer, USS Piedmont (AD 17).
Naval Advisory Group and Mobile Riverine Force, Republic of Vietnam.
City of Huntington Beach, Huntington Beach, California,
2018 — present
Unix Users Association of Southern California
Program Chair, 1990 — 1997
EUROCAE / RTCA
Working Group 71 / Special Committee 205
Member of the Committee convened to produce the DO 178C / ED 12C revision of
the international technical standard
Software Considerations in Airborne Systems and
Equipment Certification.
EUROCAE / RTCA
Working Group 72 / Special Committee 216
Member of the Committee convened to produce three international airworthiness
security standards:
DO-326A / ED-202A —
Airworthiness Security Process Specification
.
DO-355 / ED-204 —
Information Security Guidance for Continuing Airworthiness
.
DO-356 / ED-203 —
Airworthiness Security Methods and Considerations
.
Southern California Software Process Improvement Network (SPIN)