EE Firmware and Applications Engineer
Cohu, Inc.
San Diego, CA, United States
26 days ago
- Discuss this with your agent
- Open in Claude
- Open in ChatGPT
Role details
Contract type
Permanent contract
Employment type
Full-time (> 32 hours)
Experience level
Expert
Experience required
5 years minimum
Working hours
Regular working hours
Languages
English, French, German
Job source
Tech stack
ARM Architecture
Bluetooth
Booting (BIOS)
C++ (Programming Language)
Communications Protocols
Computer Engineering
Software Debugging
Memory Management
EtherCAT
Firmware
Joint Test Action (IEEE Standards)
Real-Time Operating Systems
+10 more
Software Requirements Analysis
Subversion
Systems Integration
Universal Asynchronous Receiver/Transmitter
USB
Serial Peripheral Interface
Code Comments
Backend
Git
Bare Metal
Job description
Main Objectives
- Acts as the technical bridge between a sales team and its customers, ensuring products and/or software are effectively customized, installed, and supported.
- Analyze client needs, provide pre/post-sales technical support, conduct product demonstrations, and create custom technical solutions.
- Evaluate feasibility and risk of new concepts using first-principles physics and empirical modeling.
- Deliver new and/or update electrical firmware implementing control solutions from pre/post customer interactions and applications involvement.
- Development, integration and lifecycle support of complex electrical control systems with a strong focus on firmware-related system integration and thermal system concepts to be integrated into an electro-mechanical robotic system.
Essential Functions/Major Responsibilities:
- Present technical solutions and resolve system-level issues in collaboration with customers and stakeholders.
- Collaborate with hardware engineers to interpret schematics, test prototypes, and validate hardware-software interaction.
- Develop firmware for microcontrollers (e.g., ARM Cortex-M) in C/C++, focusing on bare-metal or RTOS environments.
- Debug system issues using logic analyzers, oscilloscopes, and JTAG tools to troubleshoot code.
- Maintain technical documentation, including design specifications and code comments.
- Create low-level drivers for hardware peripherals (GPIOs, ADCs, Timers) and communication interfaces (CAN, USB, Bluetooth, IoT protocols). EtherCAT experience is a plus.
- Acting as a technical interface to internal departments as well as customers and external partners.
- Definition, alignment, and implementation of system requirements in close collaboration with hardware and mechanical engineering teams.
Requirements
- Strong analytical skills and the ability to make sound decisions under ambiguity using physical principles and engineering judgment.
- Excellent communication and moderation skills to lead interdisciplinary teams through complex trade-offs.
- Proactive mindset for identifying innovation opportunities and system improvements.
- Commitment to technical excellence, documentation, and knowledge transfer.
- Customer-oriented thinking and ability to represent the company in technical discussions., * Education/Training: Bachelor’s degree in computer engineering, electrical engineering, control engineering or a related field. (MSc, MEng, etc. desired)
- Experience: This position requires a minimum of 5 years of experience in the application support and firmware development of complex mechatronic systems, ideally in semiconductor backend equipment and a minimum of 5 years as a direct engineer in a discipline, preferably firmware development.
- Skills/Technical Requirements:
- Strong proficiency in C and C++.
- Strong understanding of microcontroller architecture, memory management, and digital circuit design.
- Experience with technical standards and industrial development processes.
- Experience in bootloader development and using GIT/SVN.
- Experience with communication protocols like UART, SPI, I2C, CAN, EtherCAT.
- Strong analytical and debugging skills to resolve complex technical challenges.
- Understanding and/or working experience with thermal systems, motion control, control systems.
- Willingness to travel as required for projects and customer support.
- Excellent English communication skills: German and/or French is a plus.
Apply for this position
This job is hosted externally. Click below to view the full posting and apply.
Apply on www.dice.comGood distractions
Talks and stories from around this role — technically off-topic, practically not.
Moments
Explore playlistsVideos
See allRelated articles
See all
LM
Luis Minvielle
over 2 years ago
LM
Luis Minvielle
Where To Find Software Engineering Jobs
over 2 years ago
DC
Daniel Cranney
How software is steering vehicle technology
over 1 year ago
LM
Luis Minvielle
Fully Remote Software Engineer Jobs
about 2 years ago
CH
Chris Heilmann
Dev Digest 121 - AI goes offline
about 2 years ago
LM
Luis Minvielle
Is Software Engineering Hard?
about 2 years ago