Applied Materials

C++ Linux - Software Engineer

Applied Materials
Apply
1 day ago
Bengaluru, IndiaStaff+

Responsibilities

  • Design and implement high-performance computing software solutions.
  • Collaborate with software engineers, product managers, and business stakeholders to translate requirements into architectural and software designs.
  • Serve as an HPC subject matter expert and unblock software engineers.
  • Profile systems, identify bottlenecks, and optimize workflows, code, and processes for improved cost of ownership.
  • Identify and mitigate technical risks throughout the software development lifecycle.
  • Lead the design and implementation of complex software components and systems.
  • Ensure software systems are scalable, reliable, maintainable, and extensible.
  • Mentor and coach junior software engineers.
  • Develop, debug, document, and test software solutions for semiconductor equipment components and devices.
  • Troubleshoot software problems and communicate with internal customers about project requirements.

Requirements

  • 5–10 years of experience designing and coding in C/C++, preferably in a Linux environment.
  • Strong knowledge of data structures, algorithms, and complexity analysis.
  • In-depth experience with multithreading, thread synchronization, interprocess communication, and distributed computing fundamentals.
  • Strong knowledge of operating-system internals, networking, and storage systems.
  • Experience with application- and system-level performance profiling.
  • Experience with low-level optimization techniques including vectorization, intrinsics, cache-aware programming, and lock-free data structures.
  • Bachelor’s degree or higher in computer science or a related discipline.
  • Experience with GPU programming using CUDA, OpenMP, OpenACC, or OpenCL is an additional qualification.
  • Knowledge of workflow orchestration software such as Apache Airflow, Apache Spark, Apache Storm, or Intel TBB flowgraph is an additional qualification.
  • Experience developing distributed HPC software with parallel programming frameworks such as MPI or UCX is an additional qualification.
  • Experience with HPC job scheduling and cluster management software such as SLURM, Torque, or LSF is an additional qualification.
  • Knowledge of low-latency and high-throughput data transfer technologies such as RDMA, RoCE, or InfiniBand is an additional qualification.
  • Familiarity with microservices, containerization technologies, and low-latency message queues is an additional qualification.
  • Experience with Java and Python is an additional qualification.
  • Strong problem-solving, analytical, communication, collaboration, mentoring, and coaching abilities.

Benefits

  • Full-time regular employment in Bangalore, India.
  • Supportive work culture with learning, development, and career-growth opportunities.
  • Health and wellbeing programs and employee support.
  • No relocation eligibility is stated.

Tech Stack

Apache AirflowApache SparkApache StormCC++DockerJavaLinuxPython

Categories

Applied Materials

About Applied Materials

10,000+ employees

Applied Materials builds semiconductor and display manufacturing equipment and related materials engineering technologies used by chip and flat-panel makers. It sells capital tools, process technology, and lifecycle services and software to support high-volume wafer fabrication and display production worldwide. Founded in 1967 and headquartered in Santa Clara, California, the company is publicly traded on NASDAQ under the ticker AMAT.

Contact me