Firmware Engineer Resume
Austin, TX
SUMMARY:
Insightful, results - driven firmware engineer with over 4.5 years industrial experiences in medical device, computer firmware, and automotive broadcast. Deep understanding of MCU, DSP firmware implementation. Hands on experience on board bring-up and validation. Experience with RTOS based ARM core, embedded system with C/C++ and assembly, and serial communication buses. Excellent debugging skill.
MY KEY SKILLS INCLUDE:
Programming: C/C++; C#; Assembly; Python; Matlab/ Simulink; Java; SQL; HTML5; SQL; PHP.
Simulation Tools: Keil IDE; Visual studio IDE; GCC/G++; Arium SourcePoint IDE; Eclipse; Freescale CodeWarrior IDE; .NET, Code Composer Studio IDE; XiLinx; ModelSim;.
Embedded Systems: ARM Cortex-M0,3,4; Embedded C; emBOS RTOS; FreeRTOS; Freescale FRDM-K64F; LPCXpresso LPC1769; MC9S12 MicroDragon; DSP board TMS320C5510; I2C; I2S; SPI; UART; PS/2; SMbus; JTAG; TCP/IP; PWM; Motor Control.
Operating Systems: Linux/Unix and BASH; iOS; Windows.
EXPERIENCE:
Confidential, Austin, TX
Firmware Engineer
Responsibilities:
- Work and coordinate with API, test and ARM MCU cross functional team to release the firmware code.
- Write and debug RF AM/FM/Audio firmware code to increase signal quality with limited memory space.
- Design and optimize the on AGC (Automatic Gain Control) in C/C++ and assembly.
- Implement and test I2S audio transmission to hifi with C/C++, assembly and TCL script on RTOS based SOC, scope and logic analyzer.
- Integrate contract IP into existing code base with changing the memory, structure and API.
- Simulate RF signal transmission and receiving at various stages with IDE from Target Compiler Technologies (ChessDE and quark simulator) and DekTec StreamXpress.
- Bug tracking with Jira and deliver results in a dynamic environment.
Confidential, CA
Firmware Engineer
Responsibilities:
- Designed and verified the LCD touch screen GUI interface functions in C#.
- Setup and debugged the UART (RS232) communication between board and windows CE 6.0 device.
- Debugged and tested through SAM-ICE JTAG on AT91SAM7X512 ARM FreeRTOS based board.
- Designed GUI interface of 7-day In-Wall timer, and verified in C# simulation.
- Implemented GPIO Interrupt handler for specific buttons with IAR workbench in FreeRTOS.
Confidential, Irvine, CA
Staff Engineer, Electronic Design
Responsibilities:
- Managed projects with servo, controller, head/media, preamp groups to improve hard drive quality.
- Integrated the read/write channel SOC based on schematics and specs.
- Debugged C++ code in channel features code on bench for new features.
- Conducted drive failure analysis with Arium SourcePoint IDE, JTAG emulator and LeCroy oscilloscope.
- Generated Bach file interface to automatically process the drives.
- Created files of in-house scripting language TRX to control files transmission to and from PCB.
- Wrote Python script to control and analyze advanced read channel.
- Wrote SQL and used Tableau to extract, visualize and analyze large amount of data statistically.
Confidential, Valencia, CA
R&D Firmware Engineer Intern
Responsibilities:
- Worked with DSP, firmware, and IC team to define and prototype the embedded system architecture for next generation speech processor and cochlear implant.
- Integrated cochlear DSP functions into embOS RTOS environment with ARM Cortex-M0 processor.
- Implemented and integrated lossless decompression algorithm of Universal Compression Library in C with Keil IDE.
- Validated speech processor prototype bring-up board with I2C, SPI, PS/2, RS-232 UART and logic analyzer.
- Simulated frequency estimation algorithm for array of electrodes in fixed point arithmetic (C++) with MSVC
- Tested comPilot and myPilot pairing function with Microprocessor according to the user guide.
Confidential, Tallahassee, FL
Research Assistant
Responsibilities:
- Designed and coded algorithms in C++/Matlab to reconstruct signals to push frequency resolution limit.
- Implemented Multiple Constant Multiplication for fixed and floating point FIR filters with 20%-30% less area and 10% higher noise attenuation in C and Matlab.
- Design and built embedded sonar scanning system to with Dragon12-Plus-USB board and XL-Maxsonar WR1 head in C and Assembly.
- Designed and coded signal processing algorithms to capture and display 3-D sonar image signal in C.
- Designed and implemented Least Mean Square based adaptive filter for noise cancellation in TMS320C5510 with C and Matlab.
Confidential, Tallahassee, FL
Teaching Assistant
Responsibilities:
- Designed and mentored Freescale Codewarrior Embedded Systems lab manual for Microprocessor System Design lab with HCS12(X) Microcontroller in C and Assembly.
- Established and maintained EE lab with tools: Matlab/Simulink, National Instruments ELVIS, Multisim, Agilent Technologies Instruments, Orcad and LabVIEW.
- Managed lab setup, demonstration and/or grading for Robot Kinematics, Signals and Systems, Advanced Circuits, Field Programmable Logic Devices, Digital Communication and Wireless Network.
Confidential
Research Assistant
Responsibilities:
- Designed and patented an apparatus to improve the crystal growth quality.
- Built and implemented Proportional-Integral-Derivative control to rotate object stage to form uniform gas spray during crystal growth in Matlab/Simulink.