Architecture
Extensive experience architecting single- and multi-microcontroller embedded systems in both cooperative and preemptive-based executives and operating systems, using both top-down and bottom-up approaches, as well as refactoring poorly structured code into an organized, component-and-interface based architecture. Experience in system design using AUTOSAR.
Embedded Technologies
Subject Matter Expert:
CAN / J1939
UART/USART/RS232
I2C
SPI
Analog to Digital Conversion
Input Capture
Flash programming and bootloading
Fixed-Point Mathematics
Simulation of Embedded Code on PC through GCC/Cygwin or C++/Visual Studio
Extensive Experience:
USB (low and full speed) device and host
Freescale TPU3 and eTPU
Motor control including brushed DC, BLDC and Stepper
System Self Diagnostics (Watchdog, Brown Out, etc)
LIN Bus
Low power operation
Onboard Graphics / UI Generation, LCD Drivers
Embedded WiFi, TCP/IP, UDP/IP
Bluetooth Classic and BLE
Memory Management Units
DMA
Platforms
Subject Matter Expert: Microchip PIC18F and 24F families
Extensive experience: Microchip PIC10F, PIC12F, PIC16F, PIC32, Atmel AVR series, Power PC, ARM7 and ARM9, 8051variants
Limited experience: Renesas micros, Cypress PSoC, ESP8266
Toolsets
Subject Matter Expert: Microchip C18, XC8 and XC16 compilers under MPLAB and MPLAB X, Microchip Code Configurator, customization of linker files, various tools (including self-built tools) to directly manipulate .hex and .srec files,
Extensive Experience: Atmel Studio, Arduino, Make / Makefiles, Unix/Linux shell build environments, Doxygen, static code analysis tools, various configuration management tools, Microchip Harmony environment, Visual Studio
Hobby / Prototyping level experience: Autodesk Eagle PCB software, Solidworks
Favorite Editor: Vim
Languages
Subject Matter Expert: C, Microchip 18F and 24F assembly language, Regular Expressions
Extensive Experience: C# / .Net , Perl 5, Windows Forms
Some experience: C++, C#/.Net Core, WPF, various platforms’ assembly language
Introductions, order food or get to the train station: Mandarin
Software Engineering Skills
EN62304 / ISO 14971 compliant development
Requirements Definition
System Architecture
Design / Design Documentation
System Verification
System Validation
Usability Studies
Education
Bachelor of Science in Electrical Engineering with a minor in Computer Science, Trine (Tri-State) University, 1998
Work History
Broadwell Consulting Inc.: Oct. 2019 - Present
Provided assistance to a Medical Device Firm in answering questions and providing documentation in response to a 510(k) submission that included software development documentation, improvement of risk documentation, and IEC 60601 testing.
Developed system architecture and a multi-microcontroller communications stack and C and C# code generation tool for a next-generation electrochemical diagnostic device.
Provided assistance with remediation observations of product development process cited in an FDA warning letter.
PTS Diagnostics: Jan. 2014 - Oct. 2019
Director of Engineering
-Supervised and Directed a mixed Engineering Department of 11 people (Direct reports included Firmware, Software, Electrical, Systems, V&V, and Mechanical Engineering positions) with a base salary budget in excess of $1M.
- Oversaw improvements to the CardioChek PA and CardioChek Plus line (the company's two premier products based on optical and electrochemical technology), as well as the launch of 6 separately marketed accessory products, mostly related to wired and wireless connectivity (Bluetooth 2.0, BLE, WiFi, USB).
- Directly represented engineering during FDA and Notified Body (CE Mark) audits. Worked with Head of Quality to resolve observations when found.
- Departmental responsibilities included recruiting and hiring, performance evaluations, project assignment, and reporting to executive team.
- Assisted Global Product Development VP in annual department budget, team effort allocation, and roadmapping process.
-Provided engineering consultation to cross-functional teams evaluating new business and product opportunities
-Supervised implementation and verification of CAPAs related to engineering products and processes
-Visited and interacted with customers and strategic partners when engineering expertise was needed.
-Provided occasional Subject Matter Expertise in Software and Firmware development. Created a new in-source documentation system which auto-generated Requirements, Design, Risk, and traceability items along with a full Software Development plan in order to create a single unified document which was compliant with EN 62304 for 'B' level of concern software.
LHP Engineering (LHP Software): Sept. 2002 - Dec. 2013
Senior Technical Specialist, Embedded Systems
Project lead and technical consultant on embedded systems projects, typically hard real-time systems written in C code and utilizing real-time executives or RTOS systems. Specialized in system architecture, building and documenting systems which utilized CAN and other communication systems to interface to sensors, brushed and brushless DC (BLDC) motors, battery charging systems, and other equipment. About 50% of projects were focused on automotive systems, primarily engine control ECMs or accessories such as motor drives.
Logikos (Columbus, IN Office): Jan. 1999 - Jun. 2002
Senior Software Engineer
Worked on embedded firmware teams developing projects for customers in the Diesel Engine, Heavy Duty Construction Equipment, Automotive Entertainment, and Automotive Accessory areas
Tri-State University: Dec. 1996 - Dec. 1998
Computer Lab Assistant
Working at Tri-State's computer lab was one of the formative experiences of my career. At Tri-State, many of the non-technical majors had requirements that could be fulfilled by a variety of different electives, one of which was computer science. This had the effect of directing non-technical people into C programming classes. In an era before many people had dial-up access to the internet, people would come down to the computer lab to complete their programming assignments on the Digital Equipment Corporation VAX (similar to a mainframe). As a steward of the many text-only VT-220 terminals that made up the lab, I had the interesting experience of teaching concepts such as pointers, structures, unions, and linked-lists to liberal-arts, education, and other traditionally non-technical majors. It was in this role that I honed my ability to convey technical concepts to people who lacked a strong technical background. I developed a fluency in analogy and metaphor which has helped me in cross-functional relationships throughout my career.