Member of Technical Staff (Search Core, Indexing & Data Pipeline Stream)
- Belgrade, Serbia
- Lead/Staff
- 3+ years
- Posted
Skills
Required
- multithreading
- Data processing systems
- YT / Kafka / Hadoop
- algorithms
- systems programming
- Rust
- C++
- Python
- scripting languages
- data structures
- Linux internals
- syscalls
- networking stack
- memory model
- kernel tuning
Preferred
- search
- indexing
- databases / information retrieval
- query parsing
- trading systems
- cloud services
- Kubernetes
- AWS infrastructure
Perplexity is looking for a highly skilled Expert Systems Engineer to join our Search Core team. For the indexing and data processing stream. This role is critical to building next-generation search products and technologies.
Responsibilities
- Design and build core search engine components, especially indexing pipelines, data storage formats that operate at the scale of billions of pages
- Develop streaming and batch data processing with YT 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
- 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
Requirements
- 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
Knowledge of Data processing systems (YT/Kafka/Hadoop)
- 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
- 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
