Firmware Engineer III
At UEI you will be part of a world class team that is working to innovate and revolutionize the meaning of ‘wireless control’. Whether it’s via chips, software licenses or turnkey products, we are continuing to reinvent how consumers interact with devices and services in their home.
Each day we make the connected home smarter, easier to connect and use, and more sustainable. We delight our Fortune 100 customers such as Comcast, Apple, Samsung, Google, Vivint and Daikin with ground breaking wireless technology solutions such as advanced, voice-enabled remote controls, cloud control solutions, extreme low power Bluetooth silicon with energy harvesting capabilities, smart thermostats and sensors and many other IoT solutions.
Position Summary
The Firmware Engineer III designs, develops, and modifies firmware and similar embedded software, including encoding, testing, and debugging. Works with collaborative engineering teams to integrate technology into working solutions for Sensors, IR/RF remote controls, and HVAC controls/Thermostats using both analog and digital hardware.
Essential Duties and Responsibilities
The duties listed below are intended only as examples of the various types of work that may be performed. The omission of specific statements of duties does not exclude them from the position if the work is similar, related or a logical assignment to this class.
Primary responsibilities include:
- Conduct R&D on new high-tech devices/products – INNOVATE!
- Work as a member of the Agile cross-functional development team; release and iteration planning; development of user stories, unit test and feature implementation.
- Participate in dialog with other developers in discussing current and proposed architecture(s), defects, enhancements, and other issues.
- Collect input from stakeholders, build architecture requirements and specification and develop them into production quality code.
- Track software development issues and work with the team to determine resolutions for these problems.
- Share knowledge with more junior team members via a formal mentoring relationship, reviewing code, reviewing design docs, or giving technical talks.
- Architect, design, develop and validate embedded firmware on various micro controllers.
- Create Software Design Specifications from the requirement specification.
- Identification and implementation of engineering projects to reduce costs, improve production yields /efficiencies, while ensuring world-class quality.
- Support ongoing production, partner with multiple departments within the company to help develop new processes and help transfer products and processes to other locations.
- Collaborate with cross-functional teams to resolve product issues in different phases.
- Ability to multitask and handle multiple projects at various phases.
- Perform other duties and responsibilities as assigned.
Supervisory Responsibilities – List Teams/Groups
- None
Qualifications - Knowledge & Experience
- 7+ years of embedded real-time firmware development (requirements analysis, design, testing documentation) using C and/or other middle to high-level languages.
- 3+ year experience in system design and architecture
- Multiple years of extensive experience with all phases of embedded firmware development in platform independent environments
- Strong knowledge or hands on experience in various RF technologies and profiles such as Bluetooth classic, BLE, Zigbee, RF4CE, Wi-Fi, Z-Wave
- Experience with various communication protocols such as SPI, I2C, UART, I2S, etc.
- Experience with typical embedded control peripherals (i.e., RAM, Flash, UART, PWM, A/D, CAN, I2C, I2S, and SPI)
- Software development methodologies and quality control processes
- Hands on experience with various MCU cores (16 to 32-bits, common ARM Cortex) and peripherals
- Scripting languages and for test automation (Perl, Python or similar) big plus
- Debug skills with tools such as JTAG/serial debugger, protocol analyzer and oscilloscopes
- Experience in consumer electronics product development, especially IR/RF remote control, HVAC controls, Thermostats and Sensors a Plus
- Experience developing on a bare metal and using an RTOS. FreeRTOS is a plus.
- Experience using debuggers, logic analyzers and oscilloscopes.
- Experience designing device drivers for peripherals like external memories and sensors.
- Familiarity with embedded firmware development tools, including the capability to debug, step through code and perform traces if needed.
- Demonstrated skills in the firmware development process (version control, use case, requirements, design, coding, and unit test)
- Proven ability to develop embedded firmware that optimizes run-time performance, memory requirements, and code re-use
- Experience with writing and executing firmware test specifications
- Experience with power-management
- Proven ability to analyze and solve complex problems which involve both firmware and hardware
- Quick-learning self-starter who works well with a dynamic team
- Energy and passion for the industry & products
- Excellent verbal and written communication skills
- Capable of working on multiple projects in a deadline driven environment
Education, Licenses & Certification
- Bachelor’s degree in Electrical Engineering, Computer Engineering, or related field is required
Work Conditions
- 40 hours on-site work week.
- Some travel maybe required
- Physically able to participate in training sessions, presentations, and meetings
- Sitting for extended periods of time; Dexterity of hands and fingers to operate a computer keyboard, mouse, power tools, and other computer components.
