Cypress HCM
Sr. Technical Recruiter | Talent Acquisition | Medical Device, Biotech, Life Sciences, Engineering, Regulated, IT Industries
Embedded Software Engineer
Must be Local to San Diego CA and able to work onsite in a hybrid capacity
Temp to Hire
Position Overview We are seeking an Embedded Software Engineer to design, develop, test, and support embedded and PC-based software solutions. This role focuses on firmware and application development across microcontroller platforms and real time systems, with responsibilities spanning embedded controller development, system integration, software validation, and cross-functional collaboration.
Essential Job Functions
Develop embedded software for microcontroller-based systems using both bare metal and real time operating systems.
Create board bring up code, device drivers, boot loaders, firmware update mechanisms, and software interfaces for sensors and peripherals.
Design, implement, test, and debug embedded device controllers and related software components.
Develop PC applications that support diagnostics, device testing, production testing, and test automation.
Conduct unit tests, integration tests, system level debugging, and code reviews to ensure quality and reliability.
Diagnose and resolve hardware and software issues in real time environments.
Integrate software modules, third party libraries, and APIs into existing or new systems.
Perform software validation, functional testing, and system compatibility checks across environments.
Ensure compliance with applicable safety standards, industry norms, and internal policies.
Optimize software for performance, memory utilization, and power efficiency.
Support planning, task definition, and estimation as part of development efforts.
Collaborate with engineering teams (electrical, mechanical, quality) to ensure seamless product integration.
Analyze, document, and track software defects and improvements to resolution.
Contribute to continuous improvement of development processes, tools, and procedures.
Support software deployment, configuration, and technical requirements.
Use version control (e.g., Git), build systems, and CI/CD workflows to streamline development.
Assist production teams in troubleshooting and improving system performance.
Provide engineering support where needed across departments.
Perform additional engineering duties as assigned.
Minimum Qualifications
Bachelor’s degree in Engineering, Computer Science, or a related technical field.
3+ years of hands‑on experience in embedded systems development.
Proficiency in C or C++ programming with experience in multithreaded code and hardware‑software integration.
Experience with microcontrollers (Cortex‑M family preferred) in both real time operating system and bare metal environments.
Experience with board bring up and developing low‑level drivers for interfaces such as SPI, I²C, UART, ADC, DAC, USB, and display interfaces.
Practical experience with debugging tools and test equipment (e.g., JTAG, GDB, logic analyzers, scopes).
2+ years of developing PC‑based applications using C# and integrating with databases.
Familiarity with setting up toolchains, build systems, and debugging environments.
Knowledge of software engineering best practices and tools, including version control and issue tracking.
Ability to read and interpret schematics, datasheets, and hardware documentation.
Strong problem solving, debugging, and analytical skills.
Excellent communication and interpersonal skills.
A positive attitude and ability to work collaboratively in team environments.
#J-18808-Ljbffr
Must be Local to San Diego CA and able to work onsite in a hybrid capacity
Temp to Hire
Position Overview We are seeking an Embedded Software Engineer to design, develop, test, and support embedded and PC-based software solutions. This role focuses on firmware and application development across microcontroller platforms and real time systems, with responsibilities spanning embedded controller development, system integration, software validation, and cross-functional collaboration.
Essential Job Functions
Develop embedded software for microcontroller-based systems using both bare metal and real time operating systems.
Create board bring up code, device drivers, boot loaders, firmware update mechanisms, and software interfaces for sensors and peripherals.
Design, implement, test, and debug embedded device controllers and related software components.
Develop PC applications that support diagnostics, device testing, production testing, and test automation.
Conduct unit tests, integration tests, system level debugging, and code reviews to ensure quality and reliability.
Diagnose and resolve hardware and software issues in real time environments.
Integrate software modules, third party libraries, and APIs into existing or new systems.
Perform software validation, functional testing, and system compatibility checks across environments.
Ensure compliance with applicable safety standards, industry norms, and internal policies.
Optimize software for performance, memory utilization, and power efficiency.
Support planning, task definition, and estimation as part of development efforts.
Collaborate with engineering teams (electrical, mechanical, quality) to ensure seamless product integration.
Analyze, document, and track software defects and improvements to resolution.
Contribute to continuous improvement of development processes, tools, and procedures.
Support software deployment, configuration, and technical requirements.
Use version control (e.g., Git), build systems, and CI/CD workflows to streamline development.
Assist production teams in troubleshooting and improving system performance.
Provide engineering support where needed across departments.
Perform additional engineering duties as assigned.
Minimum Qualifications
Bachelor’s degree in Engineering, Computer Science, or a related technical field.
3+ years of hands‑on experience in embedded systems development.
Proficiency in C or C++ programming with experience in multithreaded code and hardware‑software integration.
Experience with microcontrollers (Cortex‑M family preferred) in both real time operating system and bare metal environments.
Experience with board bring up and developing low‑level drivers for interfaces such as SPI, I²C, UART, ADC, DAC, USB, and display interfaces.
Practical experience with debugging tools and test equipment (e.g., JTAG, GDB, logic analyzers, scopes).
2+ years of developing PC‑based applications using C# and integrating with databases.
Familiarity with setting up toolchains, build systems, and debugging environments.
Knowledge of software engineering best practices and tools, including version control and issue tracking.
Ability to read and interpret schematics, datasheets, and hardware documentation.
Strong problem solving, debugging, and analytical skills.
Excellent communication and interpersonal skills.
A positive attitude and ability to work collaboratively in team environments.
#J-18808-Ljbffr