John E. Werner
27 Rolling Hill Drive, Fairport, NY, 14450
Phone: (585) 678-1501, E-mail: email@example.com
Doing the Impossible, or at Least Highly Improbable...
John Werner is an internationally published author, engineer, and conference speaker who brings over 25 years of experience solving technical problems with creative solutions.
As a Senior Software Engineer, John has used his unique way of looking at things to become an expert in solving problems that have escaped others.
As an author and editor, John has written a regular column for an automotive magazine and has been published both in the US and Europe. In 2019, John's first teaching book, Hands-On Embedded Development with Qt was published by Packt. His second Hands-On book for Packt is expected in 2020.
John also shares his insights on Software Engineering on his blog: John’s SW Engineering Blog, http://bit.ly/JohnSWEng.
As an inventor and architect, John has earned patents for inventions ranging from Ink Jet Printers to Automotive Ignition Systems; and he has both published and presented his software architecture work.
As a software process evangelist, John has motivated corporate cultures to embrace sound development practices such as Test Driven Development, Continuous Integration, Unit Testing, and Continuous Code Review while seeking to provide a careful balance between process and productivity.
John has delved into the world of Embedded Software Security. His work in driving the analysis of the product security and developing an innovative risk-based approach to Threat Modeling was lauded by corporate research at a former employer.
Medical SW development, including working with regulatory issues, has become part of John's bailiwick. His work has helped several corporations streamline the regulatory documentation and tracking required for software development.
Over the course of his career, John has gained experience working both for and with offshore development efforts. Working with offshore teams has allowed John to travel extensively to Munich, Germany; reside for 8 weeks in Milan, Italy with his wife and daughter; and journey to Bangalore, India.
When he is not working, John enjoys competition. He is an avid AutoX and TSD rally participant, and he organizes and drives for the Safety Sweep team at STPR, one of the oldest continuously running Performance Rallies in the US.
You may also occasionally find John on the air on Rochester, NY area 2m Ham Radio repeaters.
Author, 11/2018 – present
- Hands-On Embedded Programming with QT publish date: July 2019
- John’s SW Engineering Notes (Blog, http://bit.ly/JohnSWEng) 2012 – present
Caliber Imaging & Diagnostics, 10/2016 – 3/2020
Sr. Software Engineer
- Development of medical front end for confocal microscope, written in Qt.
- Write & Maintain SW Tools for production & testing
- Setup of development platform to aid with medical (FDA, ISO) submission.
- Bug, Task, Requirement, Test, Test Result and Risk tracking (with linking between them)
- Continuous build environment.
- Subject Matter Export for Medical SW Regulatory
- Regulatory Documentation in support of ISO 62304 activities.
- Whatever else needs doing as part of a 4 person SW team in a company of 35 employees.
Kelly Services 5/2010 – 10/2016
OCG Contract at Ortho Clinical Diagnostics (5/2010 – 10/2016)
- Mentor and train developers in new tools, technologies & methodologies
- SW Integration Team Lead
- Develop Configuration, Build, Unit Test, Code Review and Release Management Plans & Procedures
- Implement Continuous Integration System (Jenkins CI)
- Build (MSBuild), Unit Testing (NUnit), Code Coverage (NCover)
- Supervise Integration Testing plans, procedures, and resources
- Institute Peer and Formal Code Reviews using a distributed Code Review Tool (Crucible)
- Develop purpose built tools
- Interprocess and Inter-board communications using D-Bus on Windows, Linux, and QNX
- C# .NET and C++ (C++11) development for Windows, QNX, and Linux based Medical Devices
- Refactor Design, Develop SW Platform
- Integrate Qt SQL, XML, Core and GUI components
- SQL Database development
FOSS & Other Development Projects 2012 – present
- Cross Platform Qt Development
- Android, Linux, Windows
- Android App Development (Java) for VOIP application
- VOIP / Asterisk
- REST interface development in PHP
Professional Development Program Q1/2010
C# (courses through Skillsoft)
- C# 2005: Threading, Service processing and Applications Design
- C# 2005: System Types & Collections
- C# 2005: Custom Programming
- C# 2005: Security
- C# 2005: Diagnostics & Management
Other Programs & Activities
- Open Street Map – Volunteer Mapper
- Susquehannock Trail Performance Rally (STPR) – Assistant Chief of Specialty
- SBA SCORE Workshop
- Career Navigator
Bosch Security Systems (formerly Detection Systems) 1999 – 2009
Systems Engineer (2007 – 2009)
- Selected to Start SW Systems Discipline at Bosch Security Systems
- Worked cross-organizationally to identify and develop strategic and tactical common vision
- Specification of multi-platform Network Architecture
- Directed work with Bosch Research and Technology Center, Pittsburgh (RTC) to specify and develop engineering ready middleware solution
- Performed Threat Modeling and authored Guidelines for Software Security of Security Systems
- Developed cross platform (Linux/Windows) Risk-based Threat Modeling Tool using Qt, C++, XML, XQuery
- Collaborated with RTC Pittsburgh both for initial phases and for peer reviews
Fire and Intrusion Alarm Control Panel SW Architect & Engineer (1999 – 2007)
- Oversaw Architecture and design of software team
- Overall architecture of software for next generation security/access/fire panel
- Presented paper on this work at Bosch Conference on Software Engineering
- Employed Object Oriented Analysis and Design (OOA / OOD / UML)
- Managed off-shore and on-shore resources
- Evaluated potential contract and full time resources
- Managed design and delivery of components from off-shore vendors (India, Germany)
- Specified & Evaluated Off the Shelf Components & Tools
- GUI toolkit, OS, Embedded ODBC & SQL Database, Compiler / IDE, Revision Control, Bug Tracking
- Developed and Implemented Functional Requirements, Software Requirements Specifications, and Subsystem Designs for Intrusion and Fire Alarm Control Panels.
- Programmed in Assembler, C, C++, SQL, XML
- Responsible for Configuration Management
- Developed and Refined Change Control and Defect Tracking Processes
- Supervised Build & Release Management
- Performed Requirements Management and Ensured Traceability (CMM)
- Developed Custom Debug tools to track problems not otherwise observable
- Synthesized tools by combining existing tools with custom Linux Shell Scripts
- Researched and ported tools to custom hardware
Xerox Corporation, Webster, NY 1991 – 1998
Sr Project Engineer – SW & Electronics Design for Research Test Fixtures
- Worked closely to implement proposed solutions for ink jet researchers
- Managed integration, delivery, and testing of C and C++ SW for PC-based control fixtures
- Performed system analysis, architecture, design, and implementation using Booch Object Oriented methodologies.
- Established SW development environment using Sun UNIX servers and X-Windows on PCs.
- Team Leader of Ink Jet Business Unit (formerly Advanced Imaging BU) Computing Team.
- Facilitated communication between corporate IM and end users.
- Formulated, tested, and advised on SW development environment and tool sets for UNIX and Windows NT.
- Enabled migration from Xerox proprietary workstations to PC environment (Microsoft Mail & Office)
Noeth Honsinger Associates, East Rochester, NY 1989 – 1990
Field Applications Engineer
- Technical support and sales for electronics Sales Rep.
Education & Achievements
- Six Sigma, Design for Six Sigma (DFSS), Voice of the Customer (VOC)
- Xerox PDP, Bosch PDP
- Capability Maturity Model (CMM)
- Embedded Systems Conference
University of Rochester, Rochester, NY 1985 – 1989
- BSEE with Distinction (5/89). Concentration in computer electronics.
- SAE Mini-Baja (9/86 – 5/89)
US Patents 1996 – 1999
- 5,529,046 High voltage ignition control apparatus for an internal combustion engine
- 5,898,393 Data translating memory system
- 5,971,523 Liquid ink printer having multiple processors for fast color imaging
- Girl Scout Service Unit Cookie Manager (2005 – 2010)
- Cub Scout Pack Committee Chairman, Cub Master (2007 – 2008)
- JOTA Staff (2010 – present)
- Troop Committee Member (2014 – present)
Production Coordinator (NewSong Church of Greater Rochester) (2001 – 2010)
- Responsible for designing and overseeing systems for weekly service in rented building.
- Susquehannock Trail Performance Rally (STPR) (2010 – present)
- Organizing Committee Member, Safety Sweep Captain
Other Interests & Activities
- General Class License (KC2TNO)
Outdoor & Motor Sports
- Instructor for TireRack Street Survival Schools (teen driving program) (2007 – present)
- GPS, Mapping (http://readgpl.sourceforge.net, Open Street Map) (1997 – present)
- Rally, AutoX, Flagging & Communication (1992 – present)
- Editor of The Snow Tire FAQ (http://www.snowtire.info) (1993 – present)
- Competition Editor for Volvo Club of America’s Rolling magazine (1997 – 2006)
- Contributing Editor for the University of Rochester Computer Magazine (1988 – 1989)
- Author for Packt (2018 – present)
- Qt (QMake, Qt-Creator)
- C++ (11) / C / C# (.NET)
- Unix / Linux Shell Script (Bash, Ash, KSH)
- SW Security
- Security Analysis
- Threat Modeling
- Threat Trees
- Subversion (SVN), CVS, Mercurial
- MKS Integrity Suite (2005, 2007)
- Source Integrity
- Integrity Manager
- Jenkins / Hudson CI
- Visual Studio (2010, 2008, 6)
- NUnit & NCover
- Crucible & FishEye
- Eclipse (QNX Momentics, Android SDK)
Operating Systems (Development for)
- Windows NT, 98, 2000, XP, Vista, 7
- Linux (Ubuntu, Mandriva, Red Hat, CentOS)
- QNX 6.6, 6.5, 6.3
- Mind Mapping (Freemind, Mind Manager)
- Concept Mapping (IHMC CMaptools)
- Embedded Firmware
- Microsoft Office
- Open Office, :LibreOffice
- Configuration Management
- Requirements Management
- Process Development & Refinement
- Use Case Development
- Continuous Integration
- Unit Testing
- Code Review Processes & Tools
- ISO 62304, FDA
- Process Documentation
- MFC / STL
- (Visual) Basic
- Mac OS
- Palm OS