Perplexity

Member of Technical Staff (AI Inference Engineer)

San Francisco, US

Role snapshot

Perplexity is hiring a Member of Technical Staff (AI Inference Engineer) on a full-time basis. This is a role based in San Francisco, US. The listing highlights AI Research & Systems.

Company
Perplexity
Location
San Francisco, US
Job type
Full-time
Experience
3+ years
Posted
Oct 2, 2026

Who this role suits

Practitioners with a few years behind them who can work independently, make trade-offs and help newer teammates.

How to prepare your application

  • Check your résumé against the listed skills (AI Research & Systems) and give each one a concrete example: what you built or achieved, not just that you used it.
  • Prepare examples of decisions you drove, how you measured the result, and how you worked with other teams.
  • Be ready to discuss trade-offs and scope, not only the tools you have used.
  • Read what Perplexity publishes about its product or team, so you can say clearly why this role and this company.

Apply only on Perplexity's own site. A genuine employer never asks candidates for money, deposits or bank details to apply, interview or “secure” a job. If something looks wrong, use Report a problem with this listing and we will review it. Read how we check listings.

About the role

We build and run the inference engine behind every Perplexity query and deploy dozens of model architectures at scale with tight latency and cost budgets. Our stack is Rust, Python, CUDA, and CuTe DSL - and we need another engineer to join us.

What you will work on

Examples of real work the team does:

  • New models support. Support transformer-based retrieval, text-generation, and multimodal models in our inference infrastructure, from weight loading, request scheduling and KV-cache management to support in API Gateway.

  • GPU kernels migration to CuTe DSL. Port our in-house CUDA kernels to NVIDIA's CuTe DSL so they run on GB200 today and are portable to Vera Rubin racks tomorrow.

  • Rust-native serving runtime. Develop our internal Rust-based inference server to solve all Python pains and keep up with rapidly growing traffic.

  • Performance optimisation. Profile and fix bottlenecks from network ingress through continuous batching and GPU kernel interleaving.

  • Reliability and observability. Build dashboards, alerts, and automated remediation so we catch regressions before users do. Respond to and learn from production incidents.

Who we're looking for

  • Deep experience with GPU programming and performance work (CUDA, Triton, CUTLASS, or similar). Any other deep systems programming experience is a plus.

  • You understand modern LLM architectures and are able to bring them up reliably in a production environment.

  • You've built and operated production distributed systems under real load - ideally performance-critical ones.

  • Comfortable working across languages and layers: Rust for the serving runtime, Python for model code, CUDA/CuteDSL for kernels.

  • You own problems end-to-end. You can read a research paper on Monday, write a kernel on Wednesday, and debug a production incident on Friday.

  • Self-directed. You do well in fast-moving environments where the path forward isn't laid out for you.

Good if you touched any of

  • ML compilers and framework internals: PyTorch internals, torch.compile, custom operators.

  • Distributed GPU communication: NCCL, NVLink, InfiniBand, RDMA libraries, model/tensor parallelism.

  • Low-precision inference: INT8/FP8/FP4 quantization, mixed-precision serving.

  • Profiling and debugging tools: Nsight Compute/Systems, CUDA-GDB, PTX/SASS analysis.

  • Container orchestration: Kubernetes, GPU scheduling, autoscaling inference workloads.

Qualifications

  • 3+ years of professional software engineering experience with meaningful work on ML inference or high-performance systems.

  • Familiarity with at least one deep learning framework (PyTorch, JAX, TensorFlow).

  • Understanding of GPU architectures (memory hierarchy, warp scheduling, tensor cores).

  • Understanding of common LLM architectures and inference optimization techniques (e.g. quantization, speculative decoding, prefill-decode disaggregation).