Principal AI Software Engineer

Microsoft
San Francisco, CA, United States
5 days ago
Apply on www.dice.com
Prepare application

Role details

Contract type
Permanent contract
Employment type
Full-time (> 32 hours)
Experience level
Expert
Experience required
6 years minimum
Compensation
$142,800.0 - $274,800.0
Working hours
Regular working hours
Job source

Tech stack

C (Programming Language) Java (Programming Language) JavaScript (Programming Language) Artificial Intelligence Microsoft Azure Microsoft Online Services C Sharp (Programming Language) C++ (Programming Language) Computer Clusters Nvidia CUDA Data Deduplication Extract Transform Load (ETL)
+17 more
Distributed Systems Dynamic Random-Access Memory Memory Management Python (Programming Language) Linux Kernel Peer-To-Peer (P2P) Performance Tuning Remote Direct Memory Access Data Driven Tests Software Engineering Subsystems Systems Architecture System Software Virtualization Technology Large Language Models Information Technology TensorRT

Job description

  • Lead full system software prototyping to develop capable proof-of-concepts to evaluate hardware/software co-designed capabilities for memory TCO reduction such as through memory tiering/pooling and overcommit solutions for Azure usages and deployment scenarios.
  • Develop deep insights through workload characterization and correlation to identify systems optimization opportunities.
  • Collaborate with diverse workload experts across Microsoft and partner ISVs to engineer TCO-optimized solutions for Azure general-purpose and specialized compute fleet.
  • Influence and shape hardware architecture and industry alignment, targeting three-to-six-year timeframe, with data-driven analysis, insights and recommendations.
  • Lead characterization and optimization of Large Language Model (LLM) inference workloads with focus on KV Cache capacity, placement, migration, and utilization across GPU HBM, host DRAM, CXL memory expansion/pooling, SSD, and emerging memory tiers.
  • Develop proof-of-concepts and evaluation frameworks to assess memory-tiering architectures for AI inference, including CXL pooled memory, memory expansion solutions, context-memory platforms, SSD-backed cache tiers, and hardware/software co-designed approaches for reducing inference TCO.
  • Design and execute workload characterization studies for agentic, multi-turn, coding, reasoning, and long-context AI workloads to quantify memory consumption, latency, throughput, token efficiency, and system utilization.
  • Analyze end-to-end data movement across GPU, CPU, storage, and networking subsystems, identifying optimization opportunities within GPU Direct Storage (GDS), GPU Direct RDMA (GDR), peer-to-peer memory transfers, and distributed inference pipelines.
  • Develop software prototypes, framework extensions, and instrumentation to evaluate KV Cache offload, prefetching, migration, compression, deduplication, and memory-overcommit techniques.
  • Build performance models and simulation frameworks to predict the impact of memory hierarchy innovations on large-scale inference deployments.

Requirements

  • Bachelor’s Degree in Computer Science or related technical field AND 6+ years technical engineering experience with coding in languages including, but not limited to, C, C++, C#, Java, JavaScript, or Python OR equivalent experience., * Ability to meet Microsoft, customer and/or government security screening requirements are required for this role. These requirements include but are not limited to the following specialized security screenings: Microsoft Cloud Background Check: This position will be required to pass the Microsoft Cloud Background Check upon hire/transfer and every two years thereafter., * 12+ years of experience in systems software (OS kernel, memory management, I/O stacks, Virtualization) with demonstrated track record of success, guiding architecture and software enabling.
  • 10+ years of experience leading significant hardware/software co-design projects involving CPU and/or systems architecture and influencing technical direction.

  • Deep expertise in Linux kernel internals, memory management, I/O subsystems, NUMA, DMA, and GPU/CPU/storage/network data paths.
  • Hands-on experience with NVIDIA GPU software stacks including CUDA, NCCL, GPUDirect Storage (GDS), and GPUDirect RDMA (GDR).
  • Understanding of AI inference infrastructure, large GPU clusters, inference serving architectures, and workload performance optimization.
  • Experience characterizing and optimizing KV Cache intensive workloads including long-context, agentic, multi-turn, coding, and reasoning workloads.
  • Experience with inference frameworks such as vLLM, SGLang, and TensorRT-LLM.
  • Familiarity with KV Cache technologies including LMCache, SGLang HiCache, cache offload, cache sharing, and memory tiering approaches.
  • Experience designing or extending inference runtimes, scheduling systems, memory management components, or KV Cache subsystems.
  • Understanding of disaggregated prefill/decode architectures, distributed inference serving, and multi-node cache-sharing topologies.
  • Experience with CXL memory expansion, memory pooling, and memory tiering solutions in large-scale deployments.
  • Software development skills in C/C++, Python, CUDA, and distributed systems.
  • Skilled in partnering and influencing architects, hardware engineers, and software leads
  • Ability to manage through ambiguity, bringing clarity and results orientation to engage and energize collaborators and stakeholders
  • Collaboration skills, teamwork, and sense of presumed responsibility
  • Verbal and written communication skills, and ability to articulate and engage with both technical and non-technical stakeholders at all levels.
  • Experience leading and driving complex projects with respect and integrity, including those with multiple workstreams spanning different business and technical disciplines.
  • Intellectual curiosity and passion about learning and deploying new technologies.
  • Problem-solving skills, analytical capabilities, and attention to detail

Software Engineering IC5 - The typical base pay range for this role across the U.S. is USD $142,800 - $274,800 per year. There is a different range applicable to specific work locations, within the San Francisco Bay area and New York City metropolitan area, and the base pay range for this role in those locations is USD $188,000 - $304,200 per year.

About the company

Do you want to be at the forefront of innovating the latest hardware and systems designs to propel Microsoft’s cloud growth? Are you seeking a unique career opportunity that combines technical capabilities, cross team collaboration, with business insight and strategy?

The SPARC organization is responsible for strategy, planning and architecture pathfinding, and manages Azure’s hardware roadmap from architecture concept, through production for Microsoft’s current and future offerings. The CSA team within SPARC is at the forefront of systems architecture and technology pathfinding spanning compute, memory, storage, and system interconnects. Drawing on deep insights of workloads, emerging technology trends, and focused industry engagements, CSA team’s charter is to define and evaluate novel systems architecture innovations through hardware/software co-design and advance them through technical readiness for productization.

Join our Compute System Architecture (CSA) team within the System Planning and Architecture (SPARC) organization in Azure Hardware Systems & Infrastructure (AHSI). AHSI is the team behind Microsoft’s expanding cloud business, responsible for delivering the hardware systems and infrastructure for cloud computing across Microsoft Azure, Bing, MSN, Office 365, OneDrive, Skype, Teams and Xbox Live.

Apply for this position

This job is hosted externally. Click below to view the full posting and apply.

Apply on www.dice.com
Prepare application

Good distractions

Talks and stories from around this role — technically off-topic, practically not.

2:14 min

Exploring internal AI product initiatives and global engineering roles

Maria Apazoglou · Coffee With Developers

6:21 min

Previewing upcoming hardware acceleration capabilities for Python environments

Chris Heilmann +2 · LIVE

2:05 min

Finding product boundaries using lack of cohesion metric grouping

Pratishtha Pandey Pratishtha Pandey · World Congress 2024

4:52 min

Essential phases in building and refining language models

Anshul Jindal Anshul Jindal +1 · World Congress 2025

2:18 min

Redefining developer roles and software architecture requirements

Laurie Voss Laurie Voss · Coffee With Developers

1:37 min

Accelerating compute with focused developer tools

Julia Koch Julia Koch +1 · World Congress 2026 Europe

Videos

See all

Related articles

See all