About this role
As a Firmware Engineering Intern , you will gain hands-on experience supporting firmware development for a variety of embedded products. You will work alongside experienced engineers and participate in multiple phases of the software development lifecycle, including development, integration, testing, and debugging. You will also perform testing, contribute to project and technical documentation, and utilize and further develop tools for internal use. We invite you to discover for yourself why a career with Resideo is the opportunity you've been looking for. Help create innovative technologies that make the world cleaner and more sustainable, more secure, connected, energy efficient, and productive. Work alongside some of the world's most talented engineers. Job Duties:
- Support the development of firmware using C/C++ for embedded systems and connected devices.
- Assist with builds and source code control tools.
- Perform bench-level testing using tools such as debuggers, protocol analyzers, oscilloscopes, multimeters, and power analyzers.
- Participate in planning development activities and coordinate work with other team members.
- Provide updates on assigned tasks during project team meetings.
- Participate in phases of software design, development, integration, testing, and release.
- Collaborate with other design engineers throughout the product development cycle.
- Maintain code in repositories and participate in peer code reviews.
- Utilize and help develop tools for internal engineering use.
You Must Have:
- Currently pursuing a bachelor’s degree in Software Engineering, Electrical Engineering, Computer Engineering, Computer Science, or a related discipline.
- Coursework, projects, or experience using C/C++ programming languages.
- Coursework, projects, or experience with object-oriented design concepts.
We Value:
- Strong interpersonal, verbal, and written communication skills.
- Coursework, projects, or experience with computer architecture and embedded systems.
- Exposure to 8-bit, 16-bit, or 32-bit microcontrollers.
- Familiarity with software development lifecycle concepts.
- Knowledge of bus protocols such as RS-232, I2C, SPI, or UART.
- Coursework, projects, or experience using Python.
- Knowledge of Agile/Scrum development processes.
- Familiarity with tools such as Jira, Confluence, or Slack.
- Experience testing, troubleshooting, or debugging through coursework, projects, internships, or other hands-on experience.
#LI-Hybrid
#LI-YC2