Interesting Contracts
Over 45+ years I've worked on a lot of contracts — some forgettable, some genuinely interesting. Here are some of the ones I'd happily talk about at length, pulled from my full resume. Most involve some combination of QNX/Neutrino, realtime systems, C/C++, and hardware — the common thread is a client with an open-ended, "is this even possible?" problem.
If you have one of those, I'd love to hear about it.
Medical Devices
Best Theratronics — Mark I Single Tube Irradiator
Lead software architect and developer for a medical device built around a Spellman 160kV/30mA high-voltage power supply and a Comet X-ray tube. Designed the software architecture and the protocol (COBS-framed) between a QNX 6.6 kernel running four custom drivers and an ARM M3 I/O board, then wrote the drivers, the control software, and simulators for hardware that didn't exist yet. Also built a WebSocket–to–PPS bridge to speed up the GUI. Around 27,000 lines of code and 200 pages of design documentation.
MDS Nordion — Gammacell 40/1000/3000 Blood Irradiators
Project lead for the software on a family of blood irradiators: architecture, functional specification, traceability matrices, detailed design, coding, simulator, an embedded web server, and subcontractor management. Also supported verification testing on the Avanza Table project and debugging on the Equinox Radiation Therapy machine. Both the Gammacell and Equinox software were written in C on QNX, under a development lifecycle roughly equivalent to what's now called IEC 62304.
SynCardia Systems — CardioWest Total Artificial Heart
Software architecture and implementation work on a Class III medical device — a temporary total artificial heart running on QNX/Neutrino. Implemented the Data Manager, Alarm Manager, Watchdog Manager, and system logger.
Networking & Realtime Systems
Cisco Systems — IOS XR, QNX Virtualization, and the CRS Core Router
As technical lead on the IOS XR team, maintained the QNX kernel used on Cisco's largest core routers (the CRS family) and built a paravirtualized Virtio block driver for QNX hosted on Linux/QEMU/KVM. Managed a team of QNX consultants and coordinated "big system" scalability and interaction debugging across geographically distributed teams spanning India, China, Japan, California, and Europe. This work produced one solo patent (US 9,798,867). In earlier, separate contracts with Cisco I also wrote device driver documentation for IOS 12, developed courseware for the GSR 12000 and CRS/HFR routers, and worked on GSR 12000 switching-fabric and Primary/Standby arbitration drivers.
QNX Software Systems — High Availability, Device Drivers, and Training
Across several engagements with QNX Software Systems, designed the high-availability infrastructure for QNX Neutrino (cold/warm/hot standby, in-service upgrades, load-sharing and load-balancing), wrote the initial prototype of "qnet" (QNX 6's native network manager), and authored chapters of the internal device-driver and "Building Embedded Systems" manuals. Also developed and taught the 4-day "Realtime Programming under Neutrino" and 3-day "Writing a Resource Manager" courses, and later wrote marketing and technical documentation covering QNX's medical, security, and automotive offerings.
Security
Irdeto Canada — Next-Generation Security Framework
Formulated the requirements and architecture for a next-generation content-security framework: automatic security injection into arbitrary customer code, a modular security-primitives model, integrity verification, instrumentation and tracing, and multi-threaded defence — security as an emergent property of the code rather than a bolted-on feature. Filed four solo patent applications during this engagement. In an earlier role at the same company (then Cloakware), led the binary-technologies tools team, working deeply with ELF, PE, and COFF file formats, and designed an integrity-verification system two orders of magnitude faster and substantially smaller than its predecessor (2 joint patents: US 9,454,666 and US 9,934,374).
Patents & Technical Drafting
Merizzi Ramsbottom & Forster — Patent Preparation and Prosecution
Technical drafting for patent application preparation and prosecution, plus technical consulting for licensing and litigation matters.
Books, Written on Contract
Two of my books started life as contract deliverables and ended up published:
- The QNX Cookbook — Recipes for Programmers (2003), six major worked projects including a RAM-disk filesystem, a data-acquisition driver, and a high-availability component. Rights were later sold to QNX Software Systems, who made it freely available.
- Getting Started with QNX Neutrino (500 pages), translated into Japanese and Russian, with rights later held by Cisco and QNX.
See the Books section for what I'm publishing now, under Czechsadecimal Press.
This is a curated subset — there's more (and the boring parts) in the full resume. Eight granted US patents came out of this work: US 9,407,442; 9,454,666; 9,798,867; 9,934,374; 10,459,851; 10,798,128; 11,222,096; and 12,277,199.