Posted in

Senior Software Engineer

Senior Software Engineer

CompanyKLA
LocationMilpitas, CA, USA
Salary$130400 – $221700
TypeFull-Time
Degrees
Experience LevelSenior, Expert or higher

Requirements

  • Have domain knowledge in one of the following areas: Instrument Control SW (Robotics, Optics, MEMS), Image Processing, Image Computing.
  • Have demonstrated experience building highly scalable software systems.
  • Have deep conceptual understanding of multi-threaded, multi process and distributed software systems.
  • Previous technical lead experience is a required.
  • Object Oriented Design & Programming in Java, C# or C++
  • Distributed systems
  • Scripting languages like Python
  • Data Structures and algorithms
  • Interface protocols for cross language software (example: CORBA, Apache Thrift, gRPC)
  • Asynch programming in Java, C++ or C+

Responsibilities

  • Candidate will be responsible for the design, development, testing and roll out of software solutions that enhance the capabilities of the KLA inspection machines.
  • Candidate must possess good communication skills to work with several hardware and software interdisciplinary teams to understand the system/marketing requirements and to map them to software requirements and design.
  • Candidate should (over time) develop deep understanding of how the system works and be able to provide software solutions for critical customer gaps or issues.
  • Candidate should develop and evaluate concepts and designs for the next generation systems by conducting trade-off studies, identifying risk items and suggest mitigation plans. This calls for interest and domain knowledge beyond software in the fields of hardware and systems engineering.
  • Candidate must work in a geographically distributed team to develop and deliver software solutions. The candidate should be influential in architectural and technology decisions made by senior members of the team and help drive adoption of best industry practices in code health, testing, and maintainability.
  • Candidate must be comfortable working in a fast-paced environment where communication and collaboration with a large multi-disciplinary team is a significant part of the job. That is, coding is not the only skill needed for this job. The candidate is expected to communicate with a variety of stakeholders to understand the requirement and map out a software solution to meet the requirement before implementing the solution.
  • The candidate needs to be instrumental in working closely across sites and building strong partnerships to understand the requirements, as well as validate system design and work with resources to implement and deliver solution.
  • The candidate should mentor junior team members in coding, cross functional interactions with hardware and systems engineers and assisting with proactive unblocking efforts, etc.

Preferred Qualifications

    No preferred qualifications provided.