- Company Name
- Gentex Corporation
- Job Title
- Embedded Software Engineer II
- Job Description
-
**Job Title:** Embedded Software Engineer II
**Role Summary:**
Responsible for designing, developing, testing, and validating embedded software that fulfills product requirements. Works closely with cross‑functional teams (hardware, mechanical, product, project engineering, systems engineering) to deliver high‑quality firmware for cameras, SoCs, sensors, and drivers. Provides technical leadership, mentorship, and participates in process improvement and compliance activities.
**Expectations:**
- Execute all phases of the software development life cycle (SDLC).
- Collaborate with interdisciplinary teams to define functional specifications and implement solutions.
- Mentor junior engineers and contribute to team knowledge sharing.
- Ensure adherence to coding standards, safety regulations, and company policies.
- Engage in code reviews, estimation, planning, and agile ceremonies.
**Key Responsibilities:**
1. Design, code, and test embedded software in C/C++, assembly, and RTOS environments.
2. Develop firmware for new cameras, SoCs, sensors, and chipset drivers.
3. Write unit, integration, and verification/validation tests; maintain test coverage.
4. Conduct code reviews, estimate effort, and attend sprint planning and daily stand‑ups.
5. Improve development processes and support software compliance activities.
6. Recruit and screen candidates as needed.
7. Provide technical guidance to junior team members.
8. Maintain confidentiality and safety compliance.
**Required Skills:**
- Proficiency in C, C++, assembly, and RTOS programming.
- Solid experience in the full SDLC for embedded systems.
- Strong knowledge of electronics components, sensors, and drivers.
- Excellent communication and interpersonal skills.
- Ability to manage multiple concurrent tasks.
- Proficient with Git, Jenkins, JIRA, Azure DevOps, or similar tools.
- Familiarity with Agile methodologies and static analysis tools.
- Fluent in English (written and verbal).
**Required Education & Certifications:**
- Bachelor’s degree in Electrical Engineering, Computer Engineering, Computer Science, or related field.
- Minimum 2 years of technical experience in embedded software development.
**Preferred Qualifications (optional):**
- 4+ years of embedded software experience.
- Linux experience and knowledge of video/audio/signal processing, compression, and image signal processing.
- Wi‑Fi and BLE development experience.
- Exposure to camera development.
---