Senior Firmware Engineer
Listed on 2026-06-20
-
Software Development
Embedded Software Engineer, Embedded Systems/ Firmware/ IoT, C++ Developer, Software Engineer
Nova's Materials Metrology Division is looking for a skilled Firmware Engineer (Embedded) to design, develop, and test firmware and software for our core hardware platforms. The engineer will collaborate closely with electrical and systems engineering teams to integrate software with physical components, participating in the entire software development life cycle from initial board bring‑up, development, testing, and transition to production.
Pay Range: $120,000- $180,000 Annually (DOE)
About the DivisionNova provides insights into process control in the world’s most technologically advanced industry. We employ physics, math, algorithms, software and hardware expertise to redefine the limits of possible in semiconductor manufacturing. We invite you to join our dreamers and winners! Brilliant high‑aimers who see impossible as the starting point to exciting challenges, and work together in multidisciplinary global teams to find answers.
We dive deep to extract unique insights and provide our customers and partners with crucial decision‑making data. Each and every one of us helps redefine what people can achieve through technology.
- Develop and maintain firmware for highly reliable industrial electronics and electrical systems both existing and next generation NOVA metrology platforms.
- Design and implement efficient, robust, and maintainable C code targeting ARM cores and STM
32 microcontrollers. - Collaborate with hardware teams to bring up new boards, understand schematics, and design/modify device drivers.
- Analyze and optimize system performance, memory management, and process execution.
- Conduct hardware‑in‑the‑loop (HIL) testing, unit testing, and debugging using scopes, logic analyzers, and emulators.
- Adhere to continuous integration and deployment (CI/CD) pipelines, maintain version control, and write technical documentation.
- A minimum of a Bachelor’s or Master’s degree in Computer Engineering, Electrical Engineering, Computer Science, or a closely related field is required.
- 3+ years of professional experience in the development of embedded firmware and software systems is required.
- Demonstrated experience working at the hardware–software interface, including reading and writing hardware registers, familiarity with assembly language, and the ability to interpret hardware specifications.
- Strong proficiency in programming languages such as C/C++ for embedded system development.
- Proven experience in compiling C code, including diagnosing and resolving compiler and linker errors; hands‑on experience with Windows‑based development environments is required.
- Experience with microcontrollers, microprocessors, and hardware–software integration, along with familiarity with low‑level communication protocols such as I2C, SPI, UART, USB, or Ethernet.
- Practical experience using laboratory and debugging tools, including oscilloscopes, multimeters, and hardware debuggers (e.g., J‑Link), to diagnose and resolve complex system issues.
- Experience with software version control systems, such as Git.
- Experience with scripting languages, such as Python, for test automation and tooling.
- Familiarity with FPGA programming and development.
- Interpersonal and communication skills, both verbal and written.
If you need assistance due to a disability, you may contact us at
#J-18808-Ljbffr(If this job is in fact in your jurisdiction, then you may be using a Proxy or VPN to access this site, and to progress further, you should change your connectivity to another mobile device or PC).