Principal AI Software Engineer

Microsoft
Redmond, WA, United States
2 days ago
Apply on www.careerjet.com
Prepare application

Role details

Contract type
Permanent contract
Employment type
Full-time (> 32 hours)
Experience level
Expert
Experience required
6 years minimum
Working hours
Regular working hours

Tech stack

C (Programming Language) Java (Programming Language) JavaScript (Programming Language) Artificial Intelligence C Sharp (Programming Language) C++ (Programming Language) Computer Clusters Nvidia CUDA Data Deduplication Extract Transform Load (ETL) Distributed Systems Dynamic Random-Access Memory
+15 more
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. 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

Requirements

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. 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. 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

Apply for this position

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

Apply on www.careerjet.com
Prepare application

Good distractions

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

2:33 min

Architecting CUDA and the AI software stack

Michael Kagan Michael Kagan +1 · World Congress 2026 Europe

4:52 min

Essential phases in building and refining language models

Anshul Jindal Anshul Jindal +1 · World Congress 2025

2:05 min

Finding product boundaries using lack of cohesion metric grouping

Pratishtha Pandey Pratishtha Pandey · World Congress 2024

6:21 min

Previewing upcoming hardware acceleration capabilities for Python environments

Chris Heilmann +2 · LIVE

2:32 min

Core libraries driving inference engines and multi-GPU networking

Adolf Hohl Adolf Hohl · World Congress 2024

3:30 min

Transitioning from CUDA software architect to user

Stephen Jones · Coffee With Developers

Videos

See all

Related articles

See all