Embedded Software Engineer II
Gentex Corporation · Grand Rapids, MI · 2 mo ago
On-siteEngineeringFull-time
About the role
As an Embedded Software Engineer II at Gentex, you will create software code designs to meet product requirements. This position requires interfacing with all groups within the company to define, design, develop, track, debug, and test products that fulfill the customer's needs. This is an on-site role at Gentex facilities and is not eligible for remote work.
Responsibilities
- Execute the full development lifecycle, including requirements analysis, software architecture, software design, algorithm design, unit test development, integration test development, embedded software development, software verification, and validation.
- Coordinate with cross-functional teams, including Hardware, Mechanical, Product, Software Project Engineering, and System Engineering.
- Design and implement new features for embedded platforms, such as bringing up new cameras, SoCs, sensors, chipsets, and other driver development.
- Participate in code reviews, estimation, and planning meetings.
- Actively engage in process improvement and software compliance activities.
- Assist in recruiting and screening candidates as required.
- Provide technical guidance and mentorship to junior team members.
- Perform other duties as assigned.
How You’ll Work
- Problem solving: Define problems, determine causes, identify and prioritize solutions, and implement them.
- Quality focus: Promote and maintain high work standards, seek improvements, and encourage coworkers to do the same.
- Situational adaptability: Work with evolving systems, processes, and structures while adapting to changing environments, requirements, and regulations.
- Conceptual thinking: Find effective solutions by taking a holistic, abstract, or theoretical perspective.
- Building collaborative relationships: Develop and maintain partnerships within and outside the organization.
- Maintain high levels of honesty, integrity, and confidentiality regarding company matters.
- Comply with all company policies, procedures, safety regulations, and promote a safe workplace.
Requirements
- Bachelor’s degree in Electrical Engineering, Computer Engineering, Computer Science, or a related discipline.
- 2+ years of technical experience in all phases of the software development lifecycle.
- Detailed, ongoing, current knowledge of electronics components and systems.
- High proficiency in C, C++, assembly languages, and real-time operating systems.
- In-depth knowledge of embedded systems.
- Highly motivated with strong communication and interpersonal skills.
- Ability to balance multiple responsibilities and strong multitasking skills.
- Proficiency in Microsoft Office Suite.
Skills That Will Help
- Strong Linux experience.
- Experience with video, audio, signal processing, and compression.
- Experience in camera development and image signal processing.
- Experience with Wi-Fi and BLE.
- Familiarity with tools like Git, Bitbucket, Jenkins, JIRA, and Azure DevOps.
- Familiarity with Agile processes.
- Familiarity with static analysis tools, code coverage metrics, and unit test generation.