John D. Corbett

Monte Sereno, CA 95030
(408) 439-2818

Executive Summary

Senior software engineer experienced in design and implementation of security, desktop applications, user interfaces, graphics, firmware and algorithms.

Full-Time Employment

Two Pore Guys, Inc. 2016-2017. Developed software spanning microcontroller firmware, user interface and server applications in support of solid state genome sequencing and universal biomarker detection technologies.

Development was performed with Agile Scrum methodology using Python and C++.

Xilinx, Inc. [Sr. Staff Software Engineer] 2005-2016. Developed electronic design automation software for high reliability and high security applications.

BravoBrava! LLC [Software Engineer] 2000-2001 Developed prototypes and technology demonstrations of multi-modal user interfaces incorporating advanced user interface technologies such as speech recognition.

Lights On Software [Founder] Co-founded a company to automate residential lighting design. Designed and implemented original algorithms for light placement and circuit layout using computational geometry and combinatorial search. Created a parametric symbol library. Created prototypes using Microsoft Visual Basic for Applications, Microsoft Visual C++, MFC, and Scheme.

Silicon Graphics [Member of Technical Staff] 1989-1992 Developed and maintained software, documentation, and artwork for SGI's end user environment with C++, GL, IRIX, X11, and Motif.

PARC (formerly Xerox PARC) [Research Programmer] 1987-1989 Built software prototypes in InterlispD/Loops and Common Lisp/CLOS for a theory of graphics editing.

Learning Research and Development Center [Research Programmer] 1984-1987 Invented and patented a technique for creating highly custom direct manipulation graphical user interfaces using direct manipulation. The research was so successful that it was spun out and commercialized. Integrated a pattern matcher for diagnosing student responses and developed flicker-free animation primitives. Work was performed in the Xerox Interlisp-D/Loops programming environment.

Selected Consulting Projects

The Pictographer's Shop [Founder] 1996-present. Founded sole proprietorship to offer advanced software development and interdisciplinary design targeting small companies.

Wyse Technology [Contract] Designed and implemented embedded Linux configuration user interface using libglade and GTK. Collaborated with international developers.

GeneEd, Inc. [Contract] Developed educational simulations in Flash MX. Collaborative work was performed on a tight deadline and required quick assimilation of relevant biotechnology and in-house software framework.

InCap Corporation [Contract] Evaluated and recommended technologies and strategies for a new product development effort. Reduced projected system cost by upwards of 40%.

In previous contracts, evaluated legacy expert system and database code, researched patents, and recommended future directions. Also designed illustrations and online documentation, designed corporate identity including website and stationery, and designed user interfaces.

Muse Communications Corp. [Contract] Designed and implemented an XML-based interpreter used by artists for defining animation and behavior in a distributed interactive 3D environment using Microsoft Visual C++. Accommodated changing requirements with flexible yet simple language design.

Electronics Self-Study

Microcontroller Development

Built a variety of home automation projects using the Arduino libraries primarily on Teensy 3 develoment boards from PJRC. Projects used photodiodes, capacitive touch sensing, audio generation, addressable LED strips, electromechanical relays, solid state relays, voltage regulators, discrete transistors, I2C interfaces, SPI interfaces, small displays, and voltage level shifting, etc. Frequent contributor to PJRC discussion forum under the user name pictographer.

Embedded Linux Development

Installed and maintain OpenWrt on several wireless routers, all but one of which are clients to the primary wireless router. Each is connected to a Teensy to provide a physical interface. All communicate wirelessly via WPA2 and SSH.

Software Development Skills

Programming Languages

C++, C, Java, JavaScript, Bash, PHP, Microsoft Visual Basic, VBA, Common Lisp, and Scheme

Integrated Development Environments

Eclipse, Microsoft Visual Studio, Emacs, MetroWerks Codewarrior

Web Technologies

Apache HTTP server, Macromedia Flash

Database Technologies

SQL, ODBC, JDBC, MySQL, DB2, and Oracle

Operating Systems

Microsoft Windows 7, Microsoft Windows XP, Microsoft Windows 2000, Microsoft Windows 98, MacOS, Red Hat Linux, OpenWrt, IRIX, and BSD Unix

Graphic Design Skills

Subject Matter

User interfaces, skins, icons, splash screens, logos, logotype, technical illustration, diagrams, document layout, editorial illustration, architectural CAD

Graphic Arts Applications and Formats

Adobe Photoshop, Corel Painter, Adobe Illustrator, Adobe GoLive, Macromedia Dreamweaver, Macromedia Flash, DHTML, CSS, Adobe LiveMotion, Corel Bryce, Adobe Acrobat, Adobe InDesign, Adobe FrameMaker, Adobe PageMaker, Microsoft PowerPoint, Microsoft Word, QuarkXPress, Autodesk AutoCAD


Patent 8,522,091 Prioritized detection of memory corruption
Explained how to use Xilinx FPGA configuration scanning to accelerate the detection of memory upsets for critical functions and explained how to identify the errant module in a dual modular redundancy scheme.

Patent 8,065,644 Reducing susceptibility of circuit designs to single event upsets
Described how to automate choices among SEU mitigation methods.

Patent 8,065,642 Isolation verification for implementing modular redundancy within programmable integrated circuits
Described how the Xilinx Isolation Verification Tool detects isolation violations through routing analysis or through geometric analysis.

Patent 7,930,662 Methods for automatically generating fault mitigation strategies for electronic system designs
Described how to apply fault mitigation strategies with a computer language compilation approach.

US Patent 6,161,121 Generic transfer of exclusive rights
Showed that the escrow agent does not need full access to good to be transferred. Work performed while consulting for Agorics, Inc.

US Patent 5,041,992 Interactive method of developing software interfaces
Designed and implemented an editor for direct manipulation user interfaces. The editor itself had a direct manipulation interface. Work performed at the Learning Research and Development Center.

Professional Associations

Carnegie Mellon Alumni Association
Silicon Valley Patterns Group
Domain-Driven Design moderator


Carnegie Mellon University BS Math/Computer Science, 1987.