About this role
Resideo is seeking a Firmware Engineer I in Golden Valley, MN to develop firmware for a variety of embedded products. You will create project and technical reports as required, help define product architecture, and participate in schematic and layout reviews. You will test and evaluate prototypes from initial engineering samples to mass production, maintain firmware servers, and develop internal tools, including scripts and basic hardware interfaces. You will aid in the design and development of equipment and systems, and contribute to redesigns to meet customer needs. This role offers opportunities to work with innovative technologies that enhance security, connectivity, energy efficiency, sustainability, and productivity, alongside a team of experienced engineers.
Responsibilities
- Work on all aspects of embedded software development projects, including design, development, review, and test. Drive innovation using new technologies in hardware, software, and emerging wireless communication protocols, collaborating closely with a team of motivated peers.
- Design and develop embedded software/firmware for Connected Home products. Work with cross-functional teams (systems, hardware, test, quality) to produce architecturally sound designs, contribute to hardware selection, design test plans, and coordinate delivery of software modules, applications, and documentation. Cultivate 3rd party vendor relationships as needed. Research technical problems and implement appropriate algorithm solutions. Explore tools and techniques to benefit firmware design, development, testing, and management.
Requirements
- 1+ years of embedded firmware development using C and/or C++
- Experience in writing firmware for embedded devices
- Experience with software development environments such as Visual Studio and IAR Embedded Workbench (including compiling, linking, loading, and executing)
Nice-to-have / Value-added qualifications:
- Experience with standard libraries and multithreaded programming with RTOSs like FreeRTOS, Linux, etc.
- Knowledge of embedded software and embedded product development
- Knowledge of embedded hardware and components
- Knowledge of firmware debugging techniques and tools such as trace analyzers and JTAG
- Experience using lab tools (multimeter, oscilloscope, logic analyzer)
- Experience designing well-architected software systems/modules
- Demonstrated ability to decompose functional requirements into well-defined tasks while balancing quality, quantity, and complexity
- Relevant experience in home automation products and the residential market
- Experience working in Agile Scrum teams
- Experience with wired and wireless data communications technologies (SPI, I2C, UART, Wi-Fi, Bluetooth, and/or ZigBee)
- Familiarity with cryptographic concepts (public key cryptography, certificates)
- Experience with embedded Linux environments such as Raspberry Pi
- Strong communication, collaboration, and interpersonal skills
- Experience with embedded processors like ARM Cortex-A and Cortex-M
- Experience with software management tools (SVN, Bitbucket, JIRA) and requirements management tools (Contour)
- Knowledge of data structures, multithreaded programming, object-oriented programming, networking concepts, and network security
What’s in it for you:
- The role offers the opportunity to drive results across cross-functional teams in a large matrix organization.
- Hybrid work setting with 3 days in the office and 2 days remote.
- Work-life balance with generous vacation time, scheduled with manager approval based on business priorities and personal needs.
- Immediate eligibility for Resideo benefits, including Medical, Dental, Vision insurance and 401K.