Tracy Smith
512-***-**** (cell/text)
***********@*****.***
Professional Summary:
●Embedded Software Engineer with over 10+ years of experience specializing in RTOS, board bring-up, and firmware development for medical, automotive, industrial, and consumer electronics.
●Extensive experience in RTOS development at META Reality Labs for Zephyr based firmware development for 2 years, Linux RTOS BSP bring-up and real-time constraints at S&C Electric, QNX real-time for medical devices and automotive at Plexus and Panasonic Automotive. Strong background in embedded software and hardware integration.
●Experience in board design evaluation, working with NXP Professional Services, S&C Electric, Plexux, Denso, and Panasonic.
●AR/VR Pre and Post Silicon firmware development and bring up, camera, power management refactoring, PCIe, and 802.3 Ethernet.
●Proficient in scripting languages, including Python, Bourne shell, and C-shell for automation and debugging.
●Excellent debugging skills using Lauterbach, Oscilloscope, JTAG, Flashing tools, gdb, kernel debuggers, and other lab equipment across multiple projects.
●Experience in developing OS Linux, Android, Zephyr, QNX, VxWorks etc.driver and firmware validation and Strong C/C++ skills: x86 assembly, PPC assembly, iMX, Beaglebone Black, and TI ARM OMAP 5/Jacinto 6, Python,
●Deep knowledge of interface protocols such as SPI, I2C, Ethernet, PCIe, and board bring-up across various hardware platforms.
●Experience in development of Linux based Device Drivers.
●Experience with NXP IMX8X and IMX8MM Secure Boot and BSP, NXP SDK 2.0 BSP development on QorIQ LS products working directly with custom board design and bring up. i.MX BSP development for NXP Professional Services.
●Experience with Android Kit Kat, Jellybean, Lollipop, Marshmellow, Android 12, and Linux 2.6, 3.9, 3.19, 4.12.14-bone4 Kernels, etc., uboot, and BSP bring up and driver development and porting using TI Jacinto 6 ARM Cortex DRA74x processor with OMAP 5 automotive infotainment platform. QNX SDP 6.6/7.0 on TI OMAP 5 and Renesas.
●Experience with new feature development for power management and thermals for embedded enterprise servers and consumer devices such as the META Quest and Rayban AR/VR glasses.
●Strong communication skills, with the ability to effectively collaborate with peers, stakeholders, customers, technical leaders, and OEMs/ODMs. Experience with leading and directing crosss functional and cross domain teams. Project management and executive level experience.
●Familiar with secure boot, FPGA integration, and high-performance computing applications.
●Passionate about embedded systems, autonomous technologies, and machine learning integration.
●Work with Sandbot and NEO robots using ROS and familiar with machine learning, autonomous technology, and SLAM.
●Ability to take responsibility for code/product development and delivery
●Ability to interface with customers and offshore teams
●Excellent communication and leadership skills with ability to lead groups of embedded sys. dev in Agile environment
Technical Skills:
Programming Languages: C, C++, Python, Shell Scripting (Bourne, C-shell)
Embedded Systems: RTOS (Zephyr, QNX, FreeRTOS, VxWorks), Linux Kernel, Device Drivers, Board Support Package (BSP)
Hardware Platforms: ARM (Cortex-A, Cortex-M), PowerPC, x86, RISC-V)
Bootloaders: U-Boot, Secure Boot, Bare-metal bring-up
Communication Protocols: SPI, I2C, UART, Ethernet (802.3), PCIe, CAN, USB
Debugging & Testing Tools: Lauterbach, Oscilloscope, JTAG, GDB, Logic Analyzers
Build Systems & Frameworks: Yocto, Buildroot, CMake, Makefile
Version Control & CI/CD: Git, SVN, Jenkins, Gerrit, Clearcase, JIRA
Security & Safety: Secure Boot, Trusted Execution Environment (TEE), Functional Safety (ISO 26262)
Machine Learning & AI Integration: Edge AI, DSP, OpenCL, TensorFlow Lite
Education:
Southeastern Oklahoma State University, Durant, OK
oB.S. in Computer Science
oB.A. in Accounting
Professional Experience:
Distributed Systems Corporation TX/CA/WA March 2022 – Present
Staff Embedded Software Engineer
Responsibilities
●Led the bring-up of new camera IP for wearable devices in C/C++.
●Refactored power management drivers for Zephyr kernel firmware in C/C++.
●Collaborated with hardware teams to debug and validate power integrity issues in C/C++.
●Debugged and optimized bare-metal secure doorbell initialization in C/C++.
●Integrated and tested communication interfaces (SPI, I2C, PCIe, 802.3 Ethernet) in C/C++.
●META Reality Labs AR/VR firmware development pre and post silicon in C/C++.
●New Camera IP integration in C/C++.
●Wearable watch pre-silicon bringup
●SOC bring-up, porting, and validation on ARM and RISC SOCs.
●Refactored power management firmware, drivers, and Zephyr kernel in C/C++.
●Power Driver and validation for MCUs and subsystems strictly in C++ and google tests for at least 5 months.
Xylem Inc, TX/NY Jun 2021 - Dec 2021
Senior Level Embedded Software Engineer
Responsibilities
●Led BSP bring-up of i.MX8X and i.MX8MP on custom Toradex Apalis modules.
●Implemented Secure Boot for i.MX8X and i.MX8MP platforms.
●Developed and debugged Linux device tree, kernel modules, and Yocto-based BSP.
●Backported TI DP83869 Ethernet driver to the Linux 5.4 kernel.
●Assisted in debugging hardware-level issues related to i.MX8X and i.MX8MP PCBAs.
●Bring up of i.MX8X and i.MX8MP BSP on a custom Toradex Apalis i.MX8QX/i.MX8MP
●Secure Boot for IMX8X and IMX8MP
●Kernel programming, Linux device tree, Linux device drivers, C/C++ language programming, Yocto recipes, Yocto patches, BSP development for custom board for NXP i.MX8X Secure Boot development, WDT, 802.3 Ethernet driver in C/C++.
SpotterRF, TX/UT (FTE) Nov 2019 – May 2021
Principle Embedded Software Engineer
Responsibilities
●Developed DSP OpenCL using the TI AM5716 and AM5728
●Led BSP Bring up on Phytec and CLSOM boards using Yocto BSPs
●Radar development, fixing bugs, and new feature development
●Designed test plans, ensuring compliance with radar processing requirements.
●Designed and implemented radar signal processing algorithms.
Plexus, TX/NC Aug 2018 – Oct 2019
Platform Architect
Responsibilities
●Ported QNX 7.0 to Renesas RZ/G1H Quad ARM Cortex-A15.
●Developed peripheral drivers (ETH, CAN, SPI, USB, Graphics) for QNX 6.6/7.0.
●Conducted system bring-up and debugging using JTAG and oscilloscope.
●This included porting the BSP and peripheral drivers (ETH, CAN, SPI, USB, Graphics, etc.) from QNX 6.6 and various other BSPs. Successful bring-up and working drivers on the iWave Renesas RZ/G1H development board.
●The RZ/G1H Qseven SOM: Quad Cortex-A15 @ 1.4 GHz + Quad Cortex-A7 @ 780 MHz MPU, PowerVR G6400 3D Graphic core @520MHz, USB3.0, Gigabit Ethernet, PCIe, SATA, 2 GB DDR3 RAM, 2MB SPI NOR Flash, 4GB eMMC flash, 10/100/1000 Ethernet PHY, 10/100 Ethernet PHY, HDMI transmitter.
●Medical Industry/next gen da Vinci surgical system to perform minimally invasive surgeries.
Mercury Marine, TX/WI Jul 2017 – Jul 2018
Senior Principal Software Engineer/Platform Architect
Responsibilities
●Led Linux BSP development on a custom Beaglebone Black board (AM335x ARM Cortex-A8).
●Debugged u-boot, DDR, and kernel issues.
●Developed connectivity solutions (Ethernet, Bluetooth, Cellular).
S&C Electric, TX/IL Mar 2016 – Jun 2017
Senior Principal Software Engineer
Responsibilities
●Led BSP bring-up for NXP LS1043ARDB and a custom ARM board using C/C++.
●Developed Yocto recipes and custom Linux kernel configurations.
●Performed board bring-up and hardware validation for custom NXP LS1043A PCBAs.
●Collaborated with NXP engineers to resolve board bring-up challenges.
●BSP, kernel, boot system engineer for 4.1 SDK 2.0 NXP LS1043ARDB and Custom board bring up.
●Wrote system tests in python and C++.
NXP/Freescale, TX Sep 2015 – Feb 2016
Senior Principal Engineer/Platform Architect
Responsibilities
●Technical lead for NXP Professional Services. Feature development and bring-up for NXP/Freescale custom Linux drivers, kernel, and android development.
● Worked with schematics, technical reference manuals, datasheets, and kernel/driver code and hardware engineer on design issues.
●Supporting iMX family on a variety of Freescale boards and Linux/yocto and Android Kit Kat, Jellybean, Lollipop and Marshmallow. BSP bring up and new feature development on a variety of custom hardware designs including gaming devices, automotive, airline, defense, etc.
●iMX6 Multicore, ARM Cortex-A7 Core, combined Cortex A9 Core+Cortex-M4 Core.
●Worked on i.MX and QorIQ LS series boards Linux kernel, Linux uboot drivers, secure boot, and Linux kernel drivers in C/C++.
EagleEye Network, TX/GA May 2015 – Aug 2015
Senior Principal Engineer/Platform Architect
Responsibilities
●Debugged tw6869 analog video driver and kernel crashes remote and 20hrs. a week from Atlanta. Linux 3.19 x86 64bit; intersil TW6869 8-in-1 Video Decoders with PCE Express Media Bridge.
●Ported a 16 port TW6869 to Linux 3.19 Linux kernel using C/C++. DMA video corruption issue and kernel crash.
Panasonic Automotive, GA Nov 2014 – Jul 2015
System Platform Architect
Responsibilities
●Automotive infotainment full stack System Architect for QNX SDP 6.6 and DRA74x Jacinto 6 based board OMAP5.
●Led automotive infotainment system architecture on QNX 6.6 and Jacinto 6.
●Optimized NOR flash throughput from 1.3MB/s to 22MB/s.
●Debugged performance bottlenecks across full system stack.
●Responsible for full stack system architecture and throughput and memory performance enhancements. Responsible for working with domain leads to identify and fix performance bottleneck issues using C/C++.
●Increased clock to J6 64MHz in NOR IPL and driver code and adjusted clock command register division ratio to increase throughput. Working on NAND Read/Write throughput and CPU performance.
●List of additional high priority domains included BT, VR, and App FW to isolate throughput and memory utilization issues. OEM had strict KPI timing requirements. Worked with schematics and datasheets, using scopes, instrumenting code, writing performance utilities, fixing full stack performance defects, design and architecting new features as needed, profiling, reviewing profiling logs for memory leaks and throughput bottlenecks, isolating where issues exist and fixing them. Using QNX Momentics IDE for cross development environment. The board is based on TI Jacinto 6 OMAP 5 and QNX SDP 6.6.
●OMAP 5 EVM SoC used a dual-core ARM Cortex-A15 CPU with two additional Cortex-M4 cores to offload the A15s in less computationally intensive tasks to increase power efficiency,
DENSO Corporation, MI Mar 2014 – Oct 2014
Senior Principal Software Engineer/Platform Architect
Responsibilities
●Led BSP, kernel, and driver bring-up for TI OMAP 5 automotive infotainment.
●Developed Android Kit Kat and Linux 3.8-based system components using C/C++.
●Debugged board-level issues using JTAG, gdb, and oscilloscope.
●Android Kit Kat and Linux 3.8 kernel bringup, uboot, BSP, WiFi/BT/GPS/Camera, Maxim USB charging IC, GPIO Expander and GPMC, MAX16984 OTG drivers and thermal/power subsystem bringup on EVM and DENSO J6 reference board based on the TI ARM platform for automotive.
●JTAG, gdb, kdb, and printk for bring up debugging. Pin muxing and GPIO mapping to enable power for WiFi, BT, and camera drivers. Initial u-boot and kernel bring up and drivers completed.
●Qemu emulator new feature development virtualizing new platforms and Android HAL in C/C++. BSP and board schematics.
Dell Firmware Development, TX (FTE) Aug 2010 – Feb 2014
Principal Software Engineer
Responsibilities
●FPGA M605 Linux kernel for Dell Power Edge Chassis Management Controller. Power, PSU bringup, Thermals, I2C, and FPGA driver development. HW Board/FPGA schematics.
●Worked closely with logic and physical design engineers and complex digital hardware designs by studying specifications and block diagrams.
●Experience working with Hardware including hardware initialization, data transport communications (JTAG, UART, PCIe and I2C).
●The CMC is SMP with 32 servers and up to two to four cores per server so multithreaded parallel processing, locking synchronization, debugging and implementation for three years.
●Chassis Management Controller system management firmware development for power and PSU bring up in C/C++. Ported thermals strictly in C++, and power new feature development in C/C++.