Principal Software Engineer - High Performance Computing

JPMorgan Chase JPMorgan Chase · Banking · Seattle, WA +1 · Corporate Sector

Principal Software Engineer focused on High-Performance Computing (HPC) to optimize AI/ML model training and inference. The role involves creating scalable coding frameworks, developing production code, advising cross-functional teams, and publishing patterns for ML model optimization on various architectures. Requires deep experience in HPC, accelerators, deep learning (LLMs), and AI/ML frameworks, with a focus on performance and scalability for financial services.

What you'd actually do

  1. Provide expertise and engineering excellence as an integral part of an agile team to enhance, build, and deliver trusted market-leading technology products in a secure, stable, and scalable way.
  2. Lead virtual and direct teams of developers, teaching them best practices in high-performance computing (HPC) practices that intersect with AI/ML.
  3. Infuse the JPMorgan developer community with an appreciation of the impact that HPC can have by delivering software that consistently outperforms other platforms.
  4. Using telemetry, create measurable frameworks for deciding amongst hardware and software options
  5. Publish and support re-usable patterns to optimize training and inference of ML models on various architectures

Skills

Required

  • Formal training or certification on software engineering concepts and 7+ years applied experience
  • Hands-on practical experience delivering system design, application development, testing, and operational stability
  • Advanced knowledge of software application development and technical processes with considerable in-depth knowledge in one or more technical disciplines (e.g. LLMs, High-performance computing (HPC), etc.)
  • Experience applying expertise and new methods to determine solutions for complex technology problems in one or more technical disciplines
  • Ability to present and effectively communicate with Senior Leaders and Executives
  • Master’s Degree in Computer Science
  • 8+ years of experience in high-performance computing software
  • 5+ years of experience with at least one type of accelerator
  • 3+ years of experience in deep learning, particularly large language models
  • Deep familiarity with HPC software (e.g., NCCL, MPI) and resource schedulers (e.g., Kubernetes, SLURM)
  • Strong programming skills in Python, scripting, C, C++ with experience in AI/ML frameworks like PyTorch and LangChain

Nice to have

  • Formal training or certification on software engineering concepts
  • PhD preferred (Computer Science, Computer Engineering, Mathematics, or related discipline).
  • Practical cloud native experience
  • Experience in large organizations and regulated industries is a plus
  • Hands-on experience with CUDA for GPU programming and performance optimization preferred.
  • Excellent communication skills and the ability to work collaboratively in a dynamic team environment
  • Publish and support re-usable patterns to optimize training and inference of ML models on various architectures
  • Experience in high‑performance computing within national labs or academic research environments, including large‑scale distributed systems and accelerator‑based workloads.

What the JD emphasized

  • high-performance computing software
  • deep learning, particularly large language models
  • optimize training and inference of ML models

Other signals

  • high-performance computing
  • ML model optimization
  • training and inference