Requirements
Joblaze summary
In this role, the individual will focus on designing and developing essential components of a search engine, including indexing pipelines and retrieval algorithms, while ensuring optimal performance in a high-load environment. Proficiency in systems programming languages like Rust or C++ is crucial, along with a solid grasp of algorithms, multithreading, and Linux internals. This position is ideal for experienced engineers who have a strong background in building scalable systems and a passion for optimizing performance. Perplexity's Search Core team is dedicated to advancing search technologies, making this a pivotal role in a forward-thinking company.
Joblaze insights
Quick facts
From the original posting
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)
Familiarity with low-level optimization techniques (memory management, cache efficiency, SIMD, profiling)
Preferred Qualifications
Experience developing core components of search engines, databases, or information retrieval systems
Understanding of search fundamentals: indexing, query parsing, ranking, and relevance
Experience with trading systems or other latency-sensitive real-time systems
Familiarity with cloud services, Kubernetes, and AWS infrastructure