Expoint - all jobs in one place

מציאת משרת הייטק בחברות הטובות ביותר מעולם לא הייתה קלה יותר

Limitless High-tech career opportunities - Expoint

Applied Materials Senior Software Architect 
India, Tamil Nadu 
516233035

25.03.2025

About Applied

As an architect, you will get the opportunity to grow in the field of high-performance computing, complex system design and low-level optimizations for better cost of ownership.

Roles and Responsibility

  • As a Software Architect, you will be responsible for designing and implementing High performance computing software solutions for our organization.
  • You will work closely with cross-functional teams, including software engineers, product managers, and business stakeholders, to understand requirements and translate them intoarchitectural/softwaredesigns that meet business needs.
  • You will be coding and developing quick prototypes to establish your design with real code and data.
  • You will be a subject Matter expert to unblock software engineers in the HPC domain.
  • You will be expected to profile systems to understand bottlenecks, optimize workflows and code and processes to improve cost of ownership.
  • Conduct technical reviews and provide guidance to software engineers during the development process.
  • Identify and mitigate technical risks and issues throughout the software development lifecycle.
  • Evaluate and recommend appropriate technologies and frameworks to meet project requirements.
  • Lead the design and implementation of complex software components and systems.
  • Ensure that software systems are scalable, reliable, and maintainable.
  • Mentor and coach junior software architects and engineers.
  • Your primary focus will be on ensuring that the software systems are scalable, reliable, maintainable and cost effective.

Qualifications

  • 7 to 15 years of experience in Design and coding in C/C++ preferably in Linux Environment.
  • Very good knowledge Data structure and Algorithms and complexity analysis.
  • Experience in developing Distributed High Performance Computing software using Parallel programming frameworks like MPI, UCX etc.
  • In depth experience in Multi-threading, Thread Synchronization, Inter process communication, and distributed computing fundamentals.
  • Very Good knowledge of Computer science fundamentals like, Operating systems internals (Linux Preferred), Networking and Storage systems.
  • Experience in performance profiling at application and system level (e.g. vtune, Oprofiler, perf, Nividia Nsight etc.)
  • Experience in low level code optimization techniques using Vectorization and Intrinsics, cache-aware programming, lock free data structures etc.
  • Experience in GPU programming using CUDA, OpenMP, OpenACC, OpenCL etc.
  • Familiarity with microservices architecture and containerization technologies (docker/singularity) and low latency Message queues.
  • Excellent problem-solving and analytical skills.
  • Strong communication and collaboration abilities.
  • Ability to mentor and coach junior team members.
  • Experience in Agile development methodologies.

Additional Qualifications:

  • Experience in HPC Job-Scheduling and Cluster Management Software (SLURM, Torque, LSF etc.)
  • Good knowledge of Low-latency and high-throughput data transfer technologies (RDMA, RoCE, InfiniBand)
  • Good Knowledge of Work-flow orchestration Software like Apache Airflow, Apache Spark, Apache storm or Intel TBB flowgraph etc.
QualificationsBachelor's Degree

7 - 10 Years

Full time

Assignee / Regular