David L. Sieving, BS, MS, FBIS |
Software & Systems Engineer |
PO Box 928529,
San Diego, CA 92192-8529 |
|
EDUCATION
|
ACADEMIC AFFILIATIONS
Computer Sciences Honor Society |
EXPERIENCE SUMMARY
WEB DEVELOPMENT SDKs: GNU toolchains, AWS, Docker, Vagrant, JRuby,
Rails, SQLite3, NetBeans, JUnit Test, WAMP (Windows / Apache / MySQL / PHP),
Smarty, PHP-Java Bridge / MediaWiki, JDK / JRE /
Swing / Nu.XOM, Adobe DreamWeaver |
MOBILE DEVELOPMENT SDKs: Xcode/iOS – currently using Swift
to develop mobile applications for iOS. |
RUNTIME SYSTEMS: (Server) Unix:
CentOS, Redis, MDSplus, Solaris, Irix, HP-UX, Linux, MacOS/FreeBSD, SunOS. (Embedded)
iOS, VxWorks, LynxOS, VRTX32/68020,
VRTX32/386, VRTX/E. Others: Win2K, WinXP, WinNT,
TCP/IP, Oracle, X/Motif, MS-DOS, C-SCAPE, VM/CMS, MVS/TSO-ISPF, VAX/VMS,
CDC-NOS, Teradata/TOS and others |
HARDWARE & BSPs: GA/Siemens7 Series Programmable Logic Controllers, FPGAs;
ARRIS/Verizon: VMS1100, IPC1100; Sun: Ultra, Sparc, SparcBook, SGI; VME: RAD6K, Motorola 2432 & 3604-6
(PPC), Cetia VMPC5a (PPC), VMIC/VMIVME-5588 Ref
Mem, DLAN/OR; MC68020, Intel 80x86, HP9000 Series, TI/C80, DT3155, IBM 30XX,
DEC/VAX & uVAX, MacBook Core 2 Duo, CDC CYBER
series, Teradata, MIL-STD-1750a, TEK 2000 & others |
LANGUAGES: Apple/Swift, jRuby/Rails,
Python, Java/Swing, JavaScript, JSP, MySQL, PHP, HTML, XML/Nu.XOM, C, C++, Objective C, Pthreads,
TCL/TK, Perl, OASIS, SCL, Assembler, PASCAL, FORTRAN, Make, SQL, csh, bsh, tcsh,
ksh, SCCS, CVS, AWK, NAWK, JCL, DCL, VMS MACRO,
JOVIAL, PL/I, COBOL and others |
EMBEDDED DEVELOPMENT SDKs: GNU toolchains, POSIX, QT, VxWorks /
Tornado, LynuxWorks /
LynxOS, VrTX / Velocity, MS / VC++, KreaTV;
Unix/Linux: EPICS/Eclipse, NSE, SDE; Microsoft: Borland,
Enterprise Architect; Various other SDKs; Cadre Teamwork and Ensemble,
supporting the Shlaer-Mellor (OO) and Yourdon-DeMarco (Hierarchical)
methodologies |
GENERAL ATOMICS – October 2016 to October 2019
NUCLEAR FUSION
DIAGNOSTICS SOFTWARE ARCHITECTURE DEFINITION – Using Sparx Systems’ Enterprise Architect and Microsoft Visio
against a wide array of existing documentation under ongoing development, formulated
requirements and use cases and designed embedded software to semi-autonomously
control the Tangential Interferometer and Polarimeter (TIP), the Low Field
Side Reflectometer (LFSR) and the Upper Wide Area (IR) Viewing System (UWAVS)
diagnostics for the international ITER project, the
world’s largest collaborative effort in science. With continued funding to meet schedule
coordination with the High Field Side Reflectometer (HFSR), this effort led
in the case of the LFSR diagnostic to a successful preliminary design review at
the ITER site in Cadarache, France in November of
2018. Also at the ITER site, attended
the CODAC Real Time Framework function
block chain configuration and development workshop in January of 2018. NUCLEAR FUSION
OPERATIONS AND RESEARCH SUPPORT SOFTWARE DEVELOPMENT – Using C++, Standard
C and Bash on CentOS Linux with the QT interface development SDK in support
of nuclear fusion research at the DIII-D National Fusion Facility, developed
software to aid in the development of operational procedures, functions,
asynchronous event handlers and control point databases; to support computer
operators during plasma pulse operations; to coordinate the execution of
real-time procedures; and to control the activation, deactivation and track
the ownership and locations of the various plasma diagnostic experiments. Using TCSH and Python, developed
near-real-time post-pulse data transfer scripts to stream and convert just-captured
pulse data from the in-memory Redis database to dedicated multidimensional
vector archives in MDSplus, providing additional
logic to enable the archival of historical pulse data to MDSplus. Thus having found the control room software
in conditions ranging from disrepair to marginally usable, brought the core
elements into a state of coordinated concurrency, high efficiency, high
productivity, user-friendliness, fault tolerance and high reliability. |
INTUIT
DevSecOps TRAINING
– May 2016 to July 2016
SOFTWARE AS A SERVICE AND INTERNET SECURITY TRAINING – Using the Vagrant virtual machine suite with Docker and Amazon Web Services as a member of the inaugural session of Intuit’s DevSecOps training program, learned by doing how to deploy software as an online service and how to do so securely using offensive measures (specific attacks) to probe for and characterize security weaknesses, thus promoting a deep and broad understanding of how to guard websites and online software against such attacks. |
MOTOROLA MOBILITY
/ ARRIS – November
2011 to March 2016
PYTHON
AUTOMATED TEST SCRIPT DEVELOPMENT – Using Python under Fedora and Ubuntu
Linux in a continuous integration environment, designed, developed, deployed
and maintained a system of automated firmware validation scripts featuring
randomized channel and media profile selection, automated interactive signal
detection and channel validation, DVR recording and transcoded re-recording
to verify the embedded transcoding functionality and supporting systems of the VMS1100 firmware. Used same to detect, document, fix and
verify numerous bugs in the embedded C++ subject firmware. JRUBY/RAILS SERVLET
DEVELOPMENT
– Designed and developed an MVC-architected portable set top box (STB) test
interface servlet using JRuby on Rails. Over
the course of two years, grew, simplified, refined, optimized and polished
the interface to maximize capabilities and throughput while minimizing the
user’s response time and interaction workload and the program’s memory
footprint. Presenting its various features dynamically as needed, the
interface maintains an intuitive ordering to the user’s workflow and
serializes complex operations to ensure deterministic results and to operate
within the typical platform’s memory capacity, especially during CPU and
memory-intensive graph generation. Maintaining the IP addresses of the
units under test in an SQLite3 database, the interface presents various hooks
into the software embedded on the STBs, enabling in-depth test setup,
multiple concurrent test execution, test monitoring, device control, data
acquisition, graphical report generation and test case development and
supporting automated daily ‘smoke test’ execution. Tests in progress
can be monitored and terminated either per-unit or per-process using SQLite
database tables to manage the STBs, the test cases, the tests processes, the
test logs and the graphical test reports generated using the JRuby Gruff gem. Test logs and reports are
linked both during and after the tests to the originating test case using a
unique test case identifier slug. This slug originates in the test case
descriptor and is embedded in the names of test case, test log and test
report files for subsequent use in dispatching program flow to the correct
object type for report generation and display. The test case and report
files are thus organized into a relational database for long-term storage,
retrieval and post-test analysis to complement the wide range of short-term
SQLite3 tables maintained at run time to solve the persistence problem
inherent in web-based computing. C++ DEVELOPMENT AND MAINTENANCE – Contributed to the ongoing development of KreaTV, a set top box (STB) embedded software system used worldwide, written in C++, IDL and Java, leveraging the unique diagnostic advantages conferred by the concurrent test script development described above. Prepared software change sets per customer requirements for peer review in Scrum agile development sprints. |
NORTHROP GRUMMAN
SPACE TECHNOLOGY SECTOR – May
2003 to August 2011
GROUND DATABASE SOFTWARE DEVELOPMENT and INTEGRATION* - SPACE BASED INFRARED SYSTEM
(SBIRS) GEO: Developed web-based payload command and telemetry database
maintenance interfaces using Java and JSP under the NetBeans IDE. Researched,
installed, configured, integrated and tested the SW development environment
and operational infrastructure for automated, recursive command script
generation from this database using the hybrid open-source WAMP
package (Windows/Apache/MySQL/PHP), the open-source PHP-based Smarty web template system (used to
compartmentalize the presentation and back-end segments) and the PHP-Java Bridge interfaced to a Linux-based MySQL server. PHP is the server-side HTML
embedded scripting language (Php: Hypertext Preprocessor) used to integrate
scripts and static tags in the production of dynamic web content. Developed
applications that retrieve and parse structure definitions in the database to
automatically and recursively generate interface definition tables into WordXML documents (using the Base64 module), hex dumps
and C-language HSL structure definitions permitting data content validation
using Hex Workshop. SOFTWARE CONFIGURATION MANAGEMENT - SPACE BASED INFRARED SYSTEM
(SBIRS) GROUND SOFTWARE: Administered software repositories using IBM Rational's ClearCase environment. Optimized and
standardized the build and installation procedures for several distinct but
interrelated subprojects, coordinating with the CMMI program to achieve and
maintain industry-standard best practices. Scripted and performed baseline
divergence analyses using Perl and ExCel,
conferring with the author of CompareLabel to
develop a much more powerful Unix version. Performed extensive analyses on
the POSIX vs. NISPOM compliance of the CygWin and
MKS Toolkit Windows-based Unix emulators toward establishment of a secure but
also fully POSIX-compliant build, development and runtime environment. POST-DELIVERY SUPPORT ENGINEER - SPACE BASED INFRARED SYSTEM
(SBIRS) GEO: Authored payload and space vehicle command plan algorithms,
procedures and SCL scripts for use in pre-launch testing. Executed and monitored the
deliverable scripts at the customer site in the context of pre-launch ambient
and thermal vacuum stress testing. Electro-Optical Infrared Systems Engineering: Nine grueling months of
formal, in-depth scientific and technical training in which individuals and
teams applied the physics of optical systems and electromagnetic theory
toward a requirements-based phenomenological approach to mission and payload
design. Analyzed, developed and presented the aircraft tracking and data
commutation, throughput, storage and hardware support requirements for the
class project - an airborne LASER/RADAR (LADAR or LiDAR) precision terrain
mapping system for aerial reconnaissance applications. GROUND SEGMENT TEST COORDINATOR - SPACE BASED INFRARED SYSTEM
(SBIRS) HEO: As site lead for interstate end-to-end satellite and ground
system test activities, coordinated local resource utilization, technical
preparations and the classification and declassification of a shared control
center facility with the preparations and activities of the remote customer. Oversaw the collection, recording,
duplication and delivery of payload telemetry to analog tape during thermal
vacuum testing. Translated
spacecraft command scripts from OASYS to SCL in support of simulation and
testbed development activities. Mined spacecraft telemetry archives to
characterize long-term wear of payload mechanical components toward
establishing suitable on-orbit periodic maintenance plans. Authored and applied detailed
payload state-of-health checklists and auxiliary procedures to launch
operations and on-orbit support activities. |
* Team award
recipient, Timely Awards Program |
JET PROPULSION
LABORATORY - Mar
98 to Oct 2002
MARS
EXPLORATION ROVER TEST & OPERATIONS SUPPORT
SOFTWARE DEVELOPMENT
(contractor: User Technology
Associates): As an integration lead for NASA's
2003 Mars launch opportunity, recovered, built and adapted Cassini heritage
real-time embedded relational database oriented memory-mapped spacecraft
command and telemetry software written in Standard C for use on the Mars
Exploration Rover (MER) project. Ported same to the Solaris 7-based VxWorks
5.4/Tornado 2.xx cross-development environment for execution on the Power PC
2432/MVME 3604 platform using the mv2400 board support package. Wrote
full-duplex reflective memory drivers to map portions of this database
between VME chassis in real time using the VMIC/VMIVME-5588 reflective memory
board. Developed and integrated a real-time reflective-memory-mapped time
server phase-locked loop (PLL) providing spacecraft-synchronized clock
services to the mission-critical spacecraft dynamics and attitude control
simulation. Performed extensive PLL
testing using the VxWorks debugging and runtime visibility tools in concert
with a logic analyzer to ensure the robustness of the algorithm against late
or missing clock signals, ensuring proper synchronization and anti-aliasing
over a wide range of signal compression and expansion scenarios. Developed a TCP/IP-based GUI using TCL/TK,
featuring flow-controlled command and telemetry channels using Unix and
VxWorks sockets and message queues. This interface became the basis for the
mission's Ground Support Equipment testbed interface, parsing and channeling
scripted spacecraft commands to the uplink board and channeling telemetry to
both the GSE and the Ground Data Systems mission operations consoles.
Coordinated development and integration of target software and co-established
the software CM and build infrastructure. As a
follow-on to the ground support equipment (GSE) development effort described
above, dedicated four months as a MER flight
software build test engineer to the early detection, characterization and reporting of
Mars-transit and surface rover software anomalies during development.
Bringing several in-house Unix and PC-based space flight operations tools to
bear on the flight software running in the testbed (RAD6K) or remotely in
emulation test sets (PPC750), prepared activity and anomaly reports as well as
detailed test plans from the Mission Plan and software design documents.
Prepared, documented and maintained the emulator test procedures for the
benefit of the build test team as they evolved through use in parallel with
the flight software. |
REAL-TIME SOFTWARE & SYSTEMS ENGINEERING (contractor: Federal Data Corp [Northrop
Grumman IT]): As development and technical lead
for the Defense Information Systems Agency's (DISA) Common Operating Environment (COE) Real-Time initiative
(RTCOE), procured VME hardware and RTOS (LynxOS) software; assembled and
configured a multiple-platform VME testbed (Motorola, Cetia
and Force). Mapped API and wrapper design to the POSIX.13 profiles
PSE52 and PSE54. Tasked and scheduled LynxOS API and wrapper
development. Designed, cross- and native-developed the Pthreads-based APIs, wrappers and test drivers in POSIX
Standard C and C shell script using the Gnu-based LynxOS Open Development
Environment on Sun Ultra 2 and on the Motorola MVME3604-6 and Cetia VMPC5a targets. Supplied LynuxWorks (formerly
Lynx Real-Time Systems) with diagnostic information facilitating LynxOS
3.0.1-3.1.0 development and bug fixes. Proposed future LynxOS
enhancements to permit thread name assignment and RTOS scalability based on
selection of POSIX.13 units of functionality. Maintained all software
under CVS. Participated in requirements definition for ongoing
development. |
As a private pilot, took aerial photographs of
local proving ground terrain in support of advanced autonomous Mars rover
navigation research & development. |
SOFTWARE
INTEGRATION AND TEST (contractor: Federal Data Corp [Northrop
Grumman IT]): Built, integrated, debugged,
maintained and tested CDE-based Unix middleware for the Defense Information Infrastructure's Common Operating Environment (DII/COE). Early on in the
project, constructed a COTS build environment using GNU and X11 freeware with
X/Motif library support and used this in turn to build several third-party
COE components written primarily in C for the HP-UX 10.20 environment on an
HP9000/712 platform. Debugged and maintained Unix/X/CDE-based C and shell
script code in support of early integration efforts. Maintained, enhanced and
packaged Solaris and HP-UX targeted OS patch clusters addressing security and
Y2K concerns. Maintained and redesigned COE Kernel regression and
interoperability test suites on behalf of DISA's third-party vendor Kernel
Platform Compliance Program (KPCP). Served a close-knit team as DII/COE
Software Test Lead using and evolving the KPC procedures for the manifold
purposes of third-party vendor platform certification, in-house software
regression testing and as a software design feedback mechanism. Developed,
followed and maintained a comprehensive written management process in the
spirit of ISO-9001. The legacy of these efforts fueled significant follow-on
business in the form of continued funding, project expansion and increased
staffing levels. |
CALIFORNIA
INSTITUTE OF TECHNOLOGY - Aug
95 to Mar 98
SYSTEM ADMINISTRATION AND NETWORK SECURITY: Planned, installed and
maintained LAN and computer hardware and software for several computer
laboratories on the Caltech campus. Served an aggregate community of
approximately 500 users spanning four separate research and administrative
areas. Configured and maintained a wide range of homogenous and heterogenous
systems and networks including SunOS, SOLARIS, LINUX, FreeBSD, IRIX, WINDOWS
95 and WINDOWS NT communicating over TCP/IP, NFS, NIS, WINS and SAMBA
protocols. Implemented a progressive program of network security comprising
Secure Shell (SSH), sensitive email encryption (PGP), deactivation of unused
network services, automated periodic security scans (and backups), strict
password protocols and account policies and rapid response to CERT advisories,
all with minimal impact on system availability. Thanks to the success of this
program, despite numerous break-ins campus-wide, none of the participating
systems were compromised. Updated and maintained several Web sites. More
specialized laboratory work with TI's C80 DSP and the DT3155 image
acquisition systems, the WACOM DIGITIZER and associated simulation and
analysis tools called forth my embedded systems and hardware expertise. |
GTE GOVERNMENT
SYSTEMS (General Dynamics) - Feb
94 to Jan 95
WEATHER INFORMATION SYSTEMS (contractor: CDI West): As technical
lead, Configuration Manager and developer in a small team environment,
recovered and organized the U.S. Army's mobile Integrated METeorological
System (IMETS) source using CVS under SunOS 4.1.3 UNIX. On targets SUN4 and
HP9000/385-720, applied system level performance tests to characterize
failure modes. Developed a detailed build procedure and supporting shell
scripts; used same to prepare end-user product media. Repaired C, FORTRAN,
X-WINDOWS, SHELL SCRIPT and MAKE logic. The legacy of these efforts fueled
significant follow-on business in the form of continued funding, project
expansion and increased staffing levels. |
TELEDYNE INET /
MAGNETEK (L3 Systems) - Sept
91 to Feb 94
EMBEDDED POWER CONTROL SYSTEMS: As a software development
technical lead, developed real-time control software for the MC68020 based
state controller module of the prototype SERPOS tightly-coupled
500-750 KW nuclear submarine reversible power distribution system. Designed
and developed supervisory state control, fault detection, interrupt handling
and lossy-integrator based current monitoring
software. Debugged and upgraded UNIX and VME-based TCP/IP SOCKET COMMS
software. Organized and managed the SCCS software configuration database.
MICROTEC C and MC68020 ASSEMBLER were cross-developed
on SunSPARC1 under SunOS 4.1.1 (UNIX SYSTEM V) using the VRTX32 VELOCITY
environment for the MC68020 target across ETHERNET. Used VMEbus
for IP comms and TCP/IP over OR/DLAN/ETHERNET to communicate between power
modules and with the TADPOLE SPARCBOOK/SOLARIS-based user interface.
Committed final software to EEPROM, conducted regular exhaustive system tests
and developed detailed test procedures based on the results and on cumulative
experience. Used VRTXdesigner on SUN/UNIX. |
EMBEDDED POWER DELIVERY SYSTEMS: Developed real-time,
object-oriented control software for the 80386-based controller of an on-line
50KW UPS with interactive topology. Developed fault processing, power
recovery, timing control, digital output, display drivers, data acquisition
benchmark and circuit breaker test software. Used CB test software to characterize
undocumented CB state behavior. Spearheaded the hardware-software integration
process. Provided project management assistance. Used BORLAND C++ and 80386 ASSEMBLER with VRTX32/386 under MS-DOS. Used VRTXdesigner on SUN/UNIX. |
ELECTRIC PLANT CONTROL INTERFACE: Designed and implemented the
GW2000 NOMAD 80486 notebook-based, object-oriented user interface to the
electric plant of the MARF nuclear submarine training facility. Used BORLAND
C++ to develop the MS-WINDOWS based software which networks over an RS-232
link to the power units. |
TERADATA (NCR)
- Sep 89 to Nov 90
DISTRIBUTED DISK DIAGNOSTIC UTILITIES: Solved various software,
hardware and firmware problems in offline and parallel online disk diagnostic
utilities for Teradata's distributed RDB computer. Designed adaptations to
the parallel, UNIX-based MACH OS. Cross-developed in PASCAL and INTEL 80386 and
80486 ASSEMBLER on VM/CMS via SUN/UNIX for DBC/1012 processor modules. |
SQL PREPROCESSOR PORT: Developed platform and language portability requirements
for embedded SQL pre-processor and runtime support software using C under
SUN/UNIX/X-WINDOWS. |
SYSTEM-LEVEL REGRESSION TEST: Tested and diagnosed a
DBC/1012 RDBM interface system using SUN/UNIX to access VM/CMS and MVS/TSO.
Wrote test drivers in C, SQL & JCL on the CMS side & used
MVS/TSO-ISPF to execute & monitor the tests. |
INDEPENDENT R
& D - Jan 88 to Sep 89
CONDITIONING FACILITY CONCEPT AND DESIGN: Designed a large-scale
conditioning facility for use in astronautics (U.S. Pat 5,302,130).
Developed a custom CAD system and device interface. Used BORLAND PASCAL
under MS-DOS for the IBM PC and compatibles with standard peripherals. |
TRW (Northrop
Grumman Space Technology) - Dec
84 to Dec 87
VRTX INTERNALS: Designed and developed the task, address space,
telemetry, configuration, interrupt and error management components for
VRTX/E, a REAL-TIME OS KERNEL with extended memory addressing, for use with
the MILSTAR communication satellite's payload software. Cross-developed the
OS software in IEEE-std ASSEMBLER on a VAXCLUSTER array for the MIL-STD-1750A
flight computer supporting an application written in JOVIAL. |
SATELLITE TEST SYSTEMS: Diagnosed, maintained and enhanced real-time pre-launch
satellite test software using VMS FORTRAN and VAX-11 MACRO on the Defense
Support Program (DSP). Applied this experience to the conception, design and
implementation of a similar, more advanced system on uVAX/uVMS using the Gamma Ray Observatory test system as a
baseline. |
COMPUTER SCIENCES
- Aug 83 to Nov 84
NASCOM NETWORK MONITOR: Developed & tested GUIs, control center displays and
a message validation DBMS for a human-interfaced NASCOM Deep Space Network
message filtering computer array for NASA/GSFC using PASCAL under VAX/VMS. |
PUBLICATIONS and PATENTS
Gravity
Differential Conditioning Facility and Method of Use (U.S. Pat. No. 5,302,130), Official Gazette, U.S. Dept of Commerce, 12
April 1994. A
Centrifugal Habitat for Reduced Gravity Environments, Journal of the British
Interplanetary Society, 49/3, 83-96 (1996). An
Engineering Approach to Miogravity Syndrome, Aviation, Space
and Environmental Medicine, 108/4, 346-348 (1997). |
Calculating
Cause of Speedy Stones
(letter on geological phenomena), Science News 149/3, 35 (1996). It Takes One to Know One (letter on forgery detection), Biblical
Archaeology Review 29/5, 8 (2003). Give Us Data, Not Emotions (letter on critical inquiry),
Biblical
Archaeology Review 30/4, 8 (2004). |
SPECIAL TRAINING, AWARDS and CERTIFICATIONS