Computer engineer and consultant with more than two decades of industry experience developing software for embedded systems and mobile apps powered by Android, Linux, Windows, and real-time operating systems such as VxWorks. Specialist in source code and system security review as well as reverse engineering of complex smartphone software and other complex technical products.
Formal Education
- B.S. in Computer Engineering, Iowa State University
Career Highlights
- Developed a variety of embedded software for Microchip PIC16, PIC18, PIC24, PIC32, STMicroelectronics STM32, NXP Kinetis, Renesas Synergy, TI MSP430, and x86 processors
- Led ports of various operating systems, including Android, Linux, Windows CE, and VxWorks kernels to TI OMAP, NXP, XScale, and other processor families
- Wrote and redesigned various parts of a commercial real-time operating system (RTOS), including major components such as virtual memory management, transparent messaging, exception handling, asynchronous notifications, and distributed inter-process communication
- Modified the open source GDB and TGDB debuggers to support remote debugging of the same commercial RTOS
Expert Qualifications
- Used the Wireshark wireless network traffic monitoring and analysis tool as well as the Fiddler man-in-the-middle tool to document the flow of encrypted traffic data between endpoint devices, such iPhones, and cloud-based servers in Apple’s iMessage communications protocol
- Consultant on a pre-litigation software reverse engineering assignment to understand how the “Like” button on the Facebook mobile app works in the app and in regard to communication with cloud servers
- Performed reverse engineering of low-level Apple iOS boot processes and related bootloader steps in relation to the claims of a family of patented computer security systems and methods in support of preliminary infringement contentions