RKT Technologies, Inc.
A Consulting and Technical Services Company Since 1979.

603-437-1811
e-mail info@rkt-tech.com


Eric Poole, Technical Consultant

89 Old Nashua Road
Londonderry, NH 03053-3611
E-Mail: eric@rkt-tech.com
Phone: (603) 437-1811

DETAILS OF EXPERIENCE - ARRANGED BY PROGRAMMING LANGUAGE USED
(last revision: 6 Jan 2016)

C, C++
  • (2015)  Performed an independent code review and provided corrections for faults found in software for a class 2, major level-of-concern, critical-life-support medical device.
    • Performed a comprehensive independent software review consisting of design review, code inspection, and static and dynamic code analysis.
    • Advised and provided corrections for literally thousands of issues found in more than 200,000 lines of code proving once again that this type of review and verification needs to be done on an ongoing basis during all phases of development, and not postponed to the end.
    • Identified some hardware issues that manifested themselves as software bugs, and provided recommendations for correction.
    • Performed an analysis of USB 2.0 traffic flow and interface to USB 2.0 devices, using a USB 2.0 protocol analyzer. Provided the protocol analyzer used in making this analysis.
    • Software is in C++ on the QNX RTOS and Momentics IDE, making extensive use of C++ templates. Hardware uses multiple processors (TI iMX-53, 2x68332, 8051) communicating with one another via serial, USB, and SPI bus.
    • Guided the migration of the project to Subversion (revision control system) and Bugzilla (bug / action item tracking). Hosted, configured, administered, and maintained the projects Subversion and Bugzilla servers.
  • (2009 - 2012)  Developed a user interface and served as a software and regulatory consultant and software team leader for a class 3 medical device that delivers RF energy to the patient.  Recruited, and provided leadership and supervision to, a team of 3 senior software engineers and 1 senior software quality assurance engineer.  Software development was in C++ for MicroC/OS-II, and design used Unified Modeling Language on Sparx Systems Enterprise Architect.  Device made it through FDA PMA Supplement approval in half the normal time.
  • (2008 - 2009) Implemented a master-slave communications system on an infusion pump for veterinary use; software development in C for FreeRTOS. Provided regulatory consulting services to that client as they evaluated whether to certify the infusion pump for human use.
  • (2007 – 2008) Served as independent software quality assurance analyst for a new type of ice cream vending machine; system used a Linux-based multi-tasking software package driving custom hardware to dispense individual servings of ice cream of the customer’s choice of flavors and mix-ins.
  • (2007 – 2008) Performed a full requirements analysis and top-level design for a digital communications system for Boeing 757 airliners and freighters being developed to FAA DO-178B standards, using C++ on MicroC/OS-II operating system. Client retained my services in doing the requirements analysis while they searched for a qualified permanent employee to continue the development.
  • (2007) Performed a major software rehabilitation and refactoring project on a complex machine vision system whose software documentation has become obsolete, and the C++ software has become unmaintainable.
  • (2005 – 2006) Served as senior software engineer for a multi-device, multi-node Voice over IP communications network implemented on embedded Linux in C++.
  • (2004) Hired to perform a major system upgrade to a Night Targeting System Upgrade Kit for helicopter flight simulators that I had developed in 1995-1997. Original project was developed to run across three separate processors, with two of the three processors executing single tasks. This year’s upgrade involved moving to a new, faster CPU with a single processor. This required an extensive restructuring of the system software to run in multiple tasks (a total of 19 prioritized tasks) on VxWorks 5.5.1 using Tornado 2.2.1 as IDE.

    As part of this project, I designed and wrote a multi-tasking data simulator on Microsoft Visual Studio / Visual C++, to send and receive formatted data concurrently across 6 serial ports to the target system. This tool involved creating several dialog boxes to configure the outgoing messages and specify the expected configuration of the incoming messages.

  • (2001 – 2003) Software architect and key software developer for a navigational system for installation on oceangoing ships. Also served as mentor to other software engineers in the areas of C++, VxWorks, Tornado, and Unified Modeling Language (UML).
    • System provides a central redundant fault-tolerant computer that takes inputs from Inertial Navigation Systems (INS), Global Positioning Systems (GPS), depth sounder, magnetic compass, speed-through-water sensor, and redundant weather sensors, and outputs information to shipboard displays and other shipboard systems.
    • Central computer provides services including Dead Reckoning capability so that the ship’s position could be estimated in case of failure of the INS and GPS.
    • Central computer consists of two PowerPC processors in a CompactPCI chassis.
    • Designed central computer software using UML on Rhapsody Modeler with implementation in C++ on VxWorks 5.4 and Tornado 2.1.
    • Provided code modification and code review services and assisted in testing and debugging of the Graphical User Interface (GUI) for this system, which was implemented on a ruggedized PC using Microsoft Visual C++.
  • (2000 – 2001) Key software developer for a Voice Over IP (VoIP) test system for use in testing and validating VoIP gateways. Platform was PowerPC and VxWorks with development under Tornado 2 in C and C++.  Served as mentor and instructor to other software engineers.  Served for a time as acting Principal Software Engineer / Technical Lead for this project while the client went about the process of hiring someone on a permanent basis to assume that role.
  • (Prior to 2000) Multiple C/C++ projects completed going back to 1983; details on request.

Assembler for 80x86 / 80198 / 8051 and variants / PIC / Z80 and variants / 1802

  • (Prior to 2000) Multiple projects completed in the above assembly languages going back to 1976; details on request.
Other

REFERENCES: Available on request.


Copyright 1998-2016 RKT Technologies, Inc. ALL RIGHTS RESERVED. Permission is hereby granted to make and distribute copies of and extractions from this page only for the purpose of conveying information about RKT Technologies, Inc. to past, current, or prospective clients and technical service agencies.

Send any questions, comments, or complaints to webmaster@rkt-tech.com

Return to Home Page