旧塩港電氣工業製造社 主页旧塩港電氣工業製造社 主页

嵌入式软件工程师

Embedded Software Engineer

科磊(KLA)

地点
米尔皮塔斯,美国
类型
全职
发布
2026-05-29
资历
senior
部门
RAPID
编号
2636490

半导体半导体设备

职责

  • 设计、开发和部署用于半导体检测系统机器控制的复杂嵌入式软件/固件。
  • 使用C/C++构建准实时应用程序,用于运行在实时Linux或VxWorks等环境下的图像采集系统。
  • 设计并实现稳健、可扩展的系统控制软件,用于高速数据采集、图像处理和硬件交互。
  • 开发和调试Linux内核驱动程序和用户空间组件,包括PCIe设备枚举/启动、DMA和中断处理、内存映射I/O以及性能调优。
  • 与机械、系统、电气、光学/光机、算法和应用团队合作,提供集成解决方案。
  • 通过设计评审、调试会议、文档编写和指导分享专业知识。
  • 倡导敏捷开发、CI/CD、代码审查、自动化测试等现代开发实践。
  • 排查硬件、内核和用户空间中的复杂系统级问题,优化性能关键型软件。
  • 参与技术规划、估算和架构权衡,参与开发全阶段。

必备要求

  • 电气工程、计算机科学、计算机工程或相关领域的学士/硕士学位(或同等实践经验)。
  • 5年以上嵌入式软件开发经验(高级)。
  • 精通C/C++和软件工程基础(OOD/OOP、设计模式、可测试设计)。
  • 精通Linux和/或RTOS环境、多线程、同步和嵌入式软件架构;熟悉Linux内核概念(进程上下文与中断上下文、内存管理、sysfs/debugfs等)。
  • 具备开发和调试Linux内核驱动程序的经验,包括设备树/ACPI知识,深刻理解PCIe基础知识(配置空间、BAR、中断/MSI/MSI-X、DMA和链路特性)。
  • 熟悉串行(RS-232)、以太网、EtherCAT和TCP/IP套接字/网络编程等通信协议。
  • 具备较强的分析和沟通能力,能够展示设计方案并跨学科协作。
  • 自我激励,能够快速学习并将原型转化为高质量、可维护的生产代码。
  • 具备较强的软件调试和故障排除能力。
  • 最低资格:博士学位无需经验;硕士学位3年经验;学士学位5年经验。

优先条件

  • 具备电气、机械和光学测量仪器的实际操作经验和实验室经验。
  • 具备半导体晶圆厂运营/制造技术方面的经验。
  • 具备Linux管理和调试工具知识(如perf、ftrace、trace-cmd、gdb),熟悉UML或类似建模方法。
  • 具备高速I/O子系统和驱动程序生态系统(PCIe端点/交换机、DMA引擎、IOMMU概念)方面的经验,并能诊断吞吐量/延迟问题。
  • 熟悉Python或其他脚本语言。
  • 基于第一性原理和物理学的系统思维。
  • 项目规划和管理技能。

Responsibilities

  • Design, develop, and deploy complex embedded software/firmware for machine control of semiconductor inspection systems.
  • Build demanding near-real-time applications in C/C++ for image acquisition systems running on real-time Linux or VxWorks.
  • Design and implement robust, scalable system control software for high-speed data acquisition, image processing, and complex hardware interaction.
  • Develop and debug Linux kernel drivers and user-space components, including PCIe device enumeration/bring-up, DMA and interrupt handling, memory-mapped I/O, and performance tuning.
  • Collaborate with mechanical, systems, electrical, optics/opto-mechanical, algorithms, and applications teams to deliver integrated solutions.
  • Share expertise through design reviews, debug sessions, documentation, and lightweight mentoring.
  • Advocate modern development practices (Agile, CI/CD, code reviews, automated testing).
  • Troubleshoot complex system-level issues across hardware, kernel, and user space; optimize performance-critical software.
  • Participate in technical planning, estimation, and architecture trade-offs throughout all development phases.

Must Have

  • Bachelor's/Master's degree in Electrical Engineering, Computer Science, Computer Engineering, or related field (or equivalent practical experience).
  • 5+ years of embedded software development experience in an industrial or product-oriented environment (senior).
  • Proficiency in C/C++ and solid software engineering fundamentals (OOD/OOP, design patterns, testable design).
  • Proficiency in Linux and/or RTOS environments, multithreading, synchronization, and embedded software architecture; familiarity with Linux kernel concepts (process vs. interrupt context, basic memory management, sysfs/debugfs, etc.).
  • Hands-on experience developing and debugging Linux kernel drivers (preferably upstream-style workflows), including device tree/ACPI knowledge, and deep understanding of PCIe fundamentals (configuration space, BARs, interrupts/MSI/MSI-X, DMA, and link characteristics).
  • Familiarity with communication protocols such as serial (RS-232), Ethernet, EtherCAT, and TCP/IP socket/network programming.
  • Strong analytical and communication skills, able to present design proposals and collaborate cross-functionally.
  • Self-motivated and curious; able to quickly learn and transform prototypes into high-quality, maintainable production code for mission-critical applications.
  • Strong software debugging and troubleshooting skills.
  • Minimum qualifications: PhD with no experience; Master's with 3 years; Bachelor's with 5 years.

Preferred

  • Hands-on lab experience with electrical, mechanical, and optical measurement instruments.
  • Experience with semiconductor fab operations/manufacturing technology.
  • Knowledge of Linux administration and debugging tools (e.g., perf, ftrace, trace-cmd, gdb), 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.
  • Familiarity with Python or other scripting languages.
  • First-principles and physics-based systems thinking.
  • Project planning and management skills.

公司简介

KLA 是半导体制造生态系统中多元化电子产品的全球领导者。世界上几乎所有电子设备都运用了我们的技术。如果没有我们,笔记本电脑、智能手机、可穿戴设备、语音控制设备、柔性屏、VR 设备或智能汽车都无法来到您手中。KLA 致力于晶圆和光罩、集成电路、封装、印刷电路板和平面显示器的制造,并提供相应的系统和解决方案。推动人类进步的创新理念和设备都源于灵感、研究和开发。KLA 比一般公司更注重创新,并将销售额的 15% 投入研发。我们由物理学家、工程师、数据科学家和问题解决专家组成的专家团队与世界领先的技术供应商携手合作,加速未来电子设备的交付。凭借超过 40 年的半导体工艺控制经验,全球芯片制造商信赖 KLA,确保其晶圆厂能够快速、经济高效地将下一代器件投入量产。KLA 全球产品集团(GPG)负责 KLA 所有计量和检测产品的研发。KLA 中央工程部是 KLA 最大的工程部门,由 9 个卓越中心(CoE)组成,涵盖公司所有产品组的各个领域,包括搬运与自动化、精密运动控制、传感器与图像采集、平台设计与封装工程等。KLA 在全球以色列、中国、印度和美国设有多个中心,拥有超过 500 名工程师。