Applied Materials

C++ Linux - Software Engineer

Applied Materials
Apply
4 days ago
Bengaluru, IndiaSenior / Staff+

Responsibilities

  • Design and implement high-performance computing software solutions.
  • Translate requirements into architectural and software designs with cross-functional teams.
  • Serve as an HPC subject-matter expert and unblock software engineers.
  • Profile systems, identify bottlenecks, and optimize code, workflows, and processes for improved cost of ownership.
  • Lead the design and implementation of complex, scalable, reliable, and maintainable software components and systems.
  • Identify and mitigate technical risks throughout the software development lifecycle.
  • Develop high-quality, maintainable, and extensible software features.
  • Mentor and coach junior software engineers.

Requirements

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

Benefits

  • Full-time regular employee position in Bangalore, India.
  • Relocation eligible.
  • Approximately 10% travel required.
  • Supportive work culture with learning, development, wellbeing, and employee support programs.

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