Resume for John R. Sterne (February
21, 2003)
Experience
Practical expertise
in the following areas of software design:
·
advanced Java and C++
designs (component architectures, object hierarchies, multi-threaded event
systems, STL templates, etc.)
·
distributed system
protocols and architectures (socket-level transport, RPC and Message-Oriented
Middleware implementations, SNMP agent design, distributed services, CORBA API
and ORB implementations, Java Message Service, RMI, EJB, XML)
·
portable graphics design
(source-code level knowledge of X11 and Motif, Microsoft Windows and MFC
expertise, wrapping up native windowing API’s as portable C++ objects)
·
UNIX and Windows
operating system API’s (primitives, process life cycles and environments,
multi-threaded architectures, shared libraries and DLL’s, etc.)
·
operating system
design and implementation (device drivers, file system implementations, command
shells, etc.)
·
embedded firmware
written in assembly and C
Practical expertise
in the following areas of digital hardware design:
·
ASIC design
(programmable logic devices and semi-custom integrated circuits)
·
VHDL simulation and
synthesis (Xilinx and Model Technology)
·
intelligent
peripheral controllers, custom micro-programmed CPU design, single-board
computers, VMEBUS, dynamic RAM controllers, etc.
Employment History
2002-2003: Sterne
and Associates, Westlake Village, CA
VHDL-synthesized CPU, implemented using Xilinx Spartan-IIE
FPGA
2001-2003: software
engineering consultant, MBDA Missile Systems, Westlake Village, CA
embedded
firmware test procedures (software requirements verification and validation,
using an ICE scripting language); Unix GUI design
1999-2001: software engineering consultant, Enron
Broadband Services, Houston (telecommuting from Westlake Village)
Lead architect and developer of advanced messaging service product with custom wire-protocol engine (tagged data stream sequencer) and agent-based routing topology; supported Sun Microsystems’ JMQ/JMS group.
1990 - 1999: Principal
Software Engineer, Expersoft Corporation, San Diego (telecommuting from
Westlake Village and Calabasas)
Designed messaging engine and persistence components for OMG
CORBA Notification Service implementation.
Designed innovative MOM (“Message-Oriented Middleware”) protocol
adaptor for an OMG-compliant ORB.
Implemented in C++ for UNIX and Windows NT/95.
General C++ design tasks for distributed object
architectures (CORBA and Expersoft’s XSHELL product).
Designed SNMP agent (written in C++ for UNIX and Windows
NT/95) for XSHELL.
Designed portable GUI object library in C++ for UNIX (Motif)
and Windows NT/95. Used GUI library to
develop portable tools (network monitors and object browsers) for XSHELL.
Designed
proprietary X11 Motif graphics in C++:
structured text and tree diagram “widgets”, interactive drawing tool for
selecting and connecting distributed objects.
1989 - 1991: Consultant
to ISX Corporation, Thousand Oaks (currently in Camarillo), CA
Designed
proprietary X11 graphics “widgets” in C and C++: radar display simulator, plan and goal graph, application
wrappers.
Designed
high throughput, “no load” remote graphics monitoring tools for an intelligent
systems “inference engine” (implemented an asynchronous socket-based protocol
that ran rings around SunOS RPC).
Prior to 1989: Designed
custom “standard cell” integrated circuit, PAL-based finite state machine
controllers, micro-programmed 2901 bit-sliced CPU with IBM System 3 Model 10
instruction set emulation, intelligent peripheral controllers (disk, tape, and
terminal-array bus masters) and embedded firmware, RAM arrays with ECC, non-volatile
VMEBus static RAM board, Z80 and 80286 single-board computers, assembly
language BIOS, semi-automatic wire wrapping system (compiler and stepper motor
controller).