staff software engineering Staff Engineer tech_leadership 3+ yrs · Posted Mar 31, 2025

About this role

Perplexity is hiring a staff-level Staff Engineer in the software engineering function based in Belgrade. The posting calls out experience with Python, Rust, C, AWS and roughly 3+ years of relevant work.

Role
Staff Engineer
Function
software engineering
Level
staff
Track
Tech leadership
Employment
Full-time
Location
Belgrade
Experience
3+ years
Department
Search
Posted
Mar 31, 2025
AI Summary
Design and build core search engine components including indexing pipelines, retrieval algorithms, and ranking systems at billion-page scale. Requires 3+ years systems programming in Rust/C++/C, deep knowledge of multithreading, distributed systems, Linux internals, and low-level optimization techniques.

More roles at Perplexity

People Ops Generalist (8 Month Maternity Cover, London)
London, United Kingdom · mid
Compliance
Member of Technical Staff (Software Engineer, Security)
San Francisco, CA · staff
Python TypeScript AWS
Engineering Manager (Agents)
San Francisco, CA · manager
Python TypeScript Rust
Member of Technical Staff (AI Software Engineer, Agents)
San Francisco, CA · staff
Python TypeScript Rust
Internship - Search Machine Learning Engineer
Belgrade · mid
Python Rust TensorFlow
All Perplexity jobs →

Job description

from Perplexity careers

Perplexity is looking for a highly skilled Senior or Expert Systems Engineer to join our Search Core team. This role is critical to building next-generation search products and technologies. You will help drive key decisions around the architecture, design, and implementation of foundational components in our technical stack.

Responsibilities

  • Design and build core search engine components, including indexing pipelines, retrieval algorithms, and ranking systems that operate at the scale of billions of pages

  • Develop streaming and batch data processing systems for search index construction in a high-load environment

  • Push the limits of hardware performance through low-level optimizations and systems-level tuning

  • Tackle challenges in multithreading, concurrency, and system-level optimization

Qualifications

  • 3+ years of hands-on experience in systems programming (Rust, C++, C, or similar)

  • Ownership of full project lifecycle — you don't just write a fast inner loop, you care about how the system is built, deployed, operated, and scaled in production

  • Knowledge of Python or other scripting languages

  • Passion for writing clean, efficient, and scalable systems-level code

  • Strong knowledge of algorithms and data structures, and the ability to apply them effectively

  • Deep understanding of multithreading, including various approaches, challenges, and trade-offs

  • Experience building high-load, distributed, and hardware-adjacent services

  • Solid understanding of Linux internals (syscalls, networking stack, memory model, kernel tuning)

    This is an excerpt. Read the full job description on Perplexity careers →
All software engineering jobs software engineering salaries software engineering career path
All Perplexity Jobs Browse software engineering roles staff positions