Embedded Software Engineer

KLAMilpitas, CA
Onsite

About The Position

KLA is a global leader in diversified electronics for the semiconductor manufacturing ecosystem. Virtually every electronic device in the world is produced using our technologies. No laptop, smartphone, wearable device, voice-controlled gadget, flexible screen, VR device or smart car would have made it into your hands without us. KLA invents systems and solutions for the manufacturing of wafers and reticles, integrated circuits, packaging, printed circuit boards and flat panel displays. The innovative ideas and devices that are advancing humanity all begin with inspiration, research and development. KLA focuses more than average on innovation and we invest 15% of sales back into R&D. Our expert teams of physicists, engineers, data scientists and problem-solvers work together with the world’s leading technology providers to accelerate the delivery of tomorrow’s electronic devices. Life here is exciting and our teams thrive on tackling really hard problems. There is never a dull moment with us. With over 40 years of semiconductor process control experience, chipmakers around the globe rely on KLA to ensure that their fabs ramp next-generation devices to volume production quickly and cost-effectively. Enabling the movement towards advanced chip design, KLA's Global Products Group (GPG), which is responsible for creating all of KLA’s metrology and inspection products, is looking for the best and the brightest research scientist, software engineers, application development engineers, and senior product technology process engineers. The RAPID division is the world leading provider of reticle inspection solutions for the semiconductor industry. The company provides inspection solutions to both the mask shops and the semiconductor fabs to ensure that lithography yields are consistently high thus enabling cost-effective manufacturing. We are seeking a highly motivated Embedded Software Engineer to join our team within the RAPID division. In this role, you will take end-to-end technical ownership of embedded software that powers our reticle inspection systems, with a strong focus on high-speed data capture pipelines, and low-level hardware interfaces. You will work hands-on across the stack—from Linux user space to Linux kernel drivers—including PCIe device bring-up and driver development, and you will influence design and implementation direction through strong engineering judgment and design reviews. This is a hands-on, Individual Contributor role. You will drive technical decisions, raise the bar on engineering quality, and collaborate closely with cross-functional teams to deliver reliable, production-grade embedded software.

Requirements

  • BS/MS in Electrical Engineering, Computer Science, Computer Engineering, or a related field (or equivalent practical experience).
  • 5+ years of embedded software development experience in an industrial or product-focused environment (Senior level).
  • Strong C/C++ skills and solid software engineering fundamentals (OOD/OOP, design patterns, testable design).
  • Strong experience with Linux and/or RTOS environments, multi-threading, synchronization, and embedded software architecture; familiarity with Linux kernel concepts (process context vs. interrupt context, basic memory management, sysfs/debugfs, etc.).
  • Hands-on experience developing and debugging Linux kernel drivers (preferred upstream-style workflow), including device-tree/ACPI exposure as applicable, and strong understanding of PCIe fundamentals (configuration space, BARs, interrupts/MSI/MSI-X, DMA, and link characteristics).
  • Experience with communication protocols such as Serial (RS-232), Ethernet, EtherCAT, and TCP/IP sockets/network programming.
  • Strong analytical and communication skills to present designs in reviews, work effectively across disciplines, and drive issues to closure in a collaborative team environment.
  • Self-motivated and curious; able to learn quickly and turn prototypes into quality, maintainable production code used in mission-critical applications.
  • Strong software debugging and troubleshooting skills are required.

Nice To Haves

  • Hands on experience and laboratory exposure to electrical, mechanical and optical measurement instruments
  • Experience in semiconductor fab operations/manufacturing technology.
  • Linux administration and debugging tools knowledge (e.g., perf, ftrace, trace-cmd, gdb) and familiarity with UML or similar modeling methods.
  • Experience with high-speed I/O subsystems and driver ecosystems (PCIe endpoints/switches, DMA engines, IOMMU concepts) and diagnosing throughput/latency issues.
  • Knowledge of Python or other scripting language
  • Systems thinking based on first principle and physics.
  • Project planning and management skills.

Responsibilities

  • Design, develop, and deploy complex embedded software/firmware for machine control in semiconductor inspection systems.
  • Build demanding quasi real-time applications in C/C++ for image capture systems running on environments such as real-time Linux or VxWorks.
  • Design and implement robust, scalable software for system control, high-speed data acquisition, image processing, and intricate hardware interaction.
  • Translate system-level requirements into well-partitioned user-space and kernel-space designs where appropriate.
  • Develop and debug Linux kernel drivers and related user-space components for custom hardware, including PCIe device enumeration/bring-up, DMA and interrupt handling, memory-mapped I/O, and performance tuning for high-throughput/low-latency data paths.
  • Partner with mechanical, systems, electrical, optics/opto-mech, algorithms, and applications teams to deliver integrated solutions from concept through production.
  • Share expertise through design reviews, debugging sessions, documentation, and lightweight coaching to help the team deliver consistently high-quality software.
  • Champion modern development practices (Agile, CI/CD, code reviews, automated testing).
  • Define and execute test plans to measure subsystem performance; document, analyze, and present results.
  • Troubleshoot complex system-level issues across hardware, kernel, and user space; optimize performance-critical software and improve system reliability.
  • Contribute to technical planning, estimation, and architectural tradeoffs.
  • Participate in all stages of development, including design, implementation, integration, deployment, testing, and field troubleshooting.

Benefits

  • medical
  • dental
  • vision
  • life
  • 401(K) including company matching
  • employee stock purchase program (ESPP)
  • student debt assistance
  • tuition reimbursement program
  • development and career growth opportunities and programs
  • financial planning benefits
  • wellness benefits including an employee assistance program (EAP)
  • paid time off
  • paid company holidays
  • family care and bonding leave
© 2026 Teal Labs, Inc
Privacy PolicyTerms of Service