Resume
Rickey Fehr Link to heading
Embedded Software Engineer Seattle, WA | [email protected] | rf3.xyz
Overall Experience Link to heading
- Operating Systems
- Linux, FreeRTOS, Zephyr, Azure RTOS, and bare-metal
- Bootloaders
- U-Boot, MCUBoot, and custom MCU bootloaders with A/B partitions
- Processor Architectures
- ARMv7, ARM64, Cortex-M0/M33, ARM+FPGA (Zynq, Jetson)
- Security
- Secure boot with I.MX8 CAAM, Arm TrustZone, and custom solutions
- Driver Development
- Sensors using standard serial protocols (I2C, SPI, UART, GPIO) on Linux/RTOS/Bare Metal
- Fuel Guages / Motors / Buttons / GPS module / Humidity Sensors / IMUs
- Device tree and kernel configuration of various other protocols (USB, I2S, PCIe, Ethernet, Wi-Fi, BLE, MIPI C-PHY/D-PHY)
- Image Sensors/Displays/Wifi and Bluetooth Modules/Custom PCIe driver for external FPGA cards
- Sensors using standard serial protocols (I2C, SPI, UART, GPIO) on Linux/RTOS/Bare Metal
- Hardware Platforms
- NXP i.MX6/7/8, Xilinx Zynq MPSoC, Jetson Xavier NX, Raspberry Pi CM4, LPC55S69, SAMD21, and Renesas MCU
- Build Systems
- Yocto, Buildroot, CMake, Meson, Make, Docker, and West
- Devops
- Github actions, docker compose, very experienced in setting up and maintaining CI/CD pipelines for Yocto based projects.
- Languages
- C, C++, Rust, Python, Bash, Java
Professional Experience Link to heading
Senior Software Engineer - IDEXX Link to heading
Oct 2024 - Present
- Migrated BSP to Yocto and from Linux version 3.1 to 6.1 for long term support of legacy product.
- Developed motor controller with TI DC motor driver for replacement of MCU controller.
- Developed server on Linux to replace legacy MCU communication of sensors with userspace equivalent for backwards compatibility.
- Developed OV5640 camera driver for MIPI on I.MX8 for use in image-processing algorithms.
- Build CI/CD pipeline for automated versioning and deployment of platform builds.
Senior Software Engineer - Amazon Kuiper Link to heading
Jun 2024 - Oct 2024
- Designed validation workflows for power distribution hardware built with Yocto and running Linux.
- Built automated image test pipelines for faster QA turnaround.
Embedded Software Engineer - Witekio Link to heading
Jul 2020 - Apr 2024
- Delivered production BSPs for Zynq MPSoC, NXP i.MX6/8, RPi CM4 and Jetson NX SoCs.
- Integrated Linux drivers for Wi-Fi, BLE, SPI, I2C, UART, Ethernet, and GPIO subsystems.
- Built FreeRTOS/Azure based software stacks for Cortex-M and Cortex-A MCUs.
- Worked on many different things here for many different products. New project every 1-3 months from embedded tasks to DevOps pipelines and GUIs.
Software Engineer - Sierra Nevada Corporation Link to heading
Sep 2017 - Jul 2020
- Developed kernel drivers for AXI buses on Zynq hardware for high-bandwidth data aggregation systems.
- Built a GUI shell for manufacturing tools for firmware flashing and validation with Python and JavaFX.
- Developed PetaLinux based BSP for use in ELINT systems.
Research Assistant - University of Nevada, Reno Link to heading
Aug 2015 - May 2017
- Developed control algorithms for UAVs in dynamic environments.
- Designed distributed connectivity control systems for multi-agent UAV swarms.
- Published 4 peer-reviewed papers on multi-agent coordination and UAV control.
Achievements Link to heading
- Zephyr Contribution - Ported the sparkfun samd21-dev board to zephyr. This one was a fun one. link
- Full-Stack Delivery - Delivered products from board bring-up to production on various SoCs. notably i.MX8, Zynq MPSoC, and Nvidia Jetson.
- Manufacturing Tooling - Automated firmware flashing & validation (Python/JavaFX) for manufacturing.
Education Link to heading
B.S. Electrical Engineering - University of Nevada, Reno | GPA: 3.7
Publications Link to heading
- Brain emotional learning-based intelligent tracking control for Unmanned Aircraft Systems with uncertain system dynamics and disturbance
- Implementation of Brain Emotional Learning-Based Intelligent Controller for Flocking of Multi-Agent Systems
- A low-computation distributed connectivity control for coordinated multi-UAS
- Low-computation dynamic generation of distributed connectivity control for varying sized multi-agent systems