Senior Embedded Firmware Engineer at WiTricity
Senior Embedded Firmware Engineer
Design, develop and support system software for embedded control of WiTricity's wireless power systems. The core duties and responsibilities of the position are as follows:
- Design, develop, and document embedded software solutions for the functionality of next generation systems.
- Write and conduct tests on new embedded software features and publications.
- Work collaboratively with firmware team members and team members of other disciplines to integrate, test, and debug system components.
- Support existing embedded software designs and provide hands-on support of system test and verification.
- Use source control systems in place at WiTricity for the maintenance of the code base and to provide proper revision control and release structure.
- Be able to multi-task and independently manage the requirements of several projects in parallel.
Qualified candidates will have a solid understanding of embedded programming, microcontroller architectures and embedded software implementations. Candidates will also possess good written and verbal communication skills, have a positive attitude. Candidates will be energetically active with a sense of urgency and individual accountability, can work independently, and be a reliable team player.
- BS or MS in Computer Engineering, Electrical Engineering, or equivalent experience.
- 5+ years of embedded programming design experience.
- Fluent in C/C++. Ability to code in Assembly.
- Proficient with microcontroller IDE design/development tools.
- Proficient with bare metal development as well as real-time operating systems (RTOS).
- Proficient in lab debug, including usage of power supplies, oscilloscopes, function generators and in-circuit debuggers.
- Ability to follow circuit schematics and PCB layout drawings.
- Ability to work as part of a team in fast-paced environment.
- Familiar with a variety of microcontrollers including Microchip, TI, NXP, and ARM-based embedded processors.
- Experience with CANbus, SPI, I2C, RS-232, IEEE 802.11, TCP/IP, and HTTP protocols.
- Experience developing bootloaders for embedded devices.
- Experience architecting, implementing, and testing security solutions for embedded devices.
- Experience with networking and cloud IoT integration for embedded devices.
- Experience with UML documentation for embedded solutions.
- Experience developing device drivers, control systems, and communications protocols.
- Experience with standards-based feature design and code development.