Senior ML Backend Engineer - Search & Recommendations
This is the employer's own posting, not a copy on a job board.
What we know
Is it still open?
Confirmed still open
Last checked 3h ago — checked against the employer's own applicant tracking system, which is the company answering directly.
We re-read the employer's own applicant tracking system and the posting was still there. That is the company answering directly.
How old is it?
Posted 18h ago
The date the source published, not the day we noticed it (2026-10-14). Last seen at its source just now.
Is it remote?
Marked remote on the employer's board
Their board carries a remote setting on this posting — a field they filled in, not wording we read. The location field names somewhere specific, which is usually where the team or the entity sits.
Who may apply?
Saudi Arabia
The description states no restriction of its own. This is the source's own tag.
Pay not stated
Similar roles pay €80.3k–115k/yr
Middle 50% of 74 listings that do state pay — Engineering · Senior · EMEA · EUR/year. This employer has published no salary; this is what comparable listings we hold disclose, never converted between currencies or periods. How this is calculated.
Skills named in the ad
Recognised terms only, from a fixed vocabulary — this is what CV matching compares against.
Carried by 1 source
-
Workable employer's own board first seen 3h ago · last seen just now
The listing
You'll own the online systems that take a catalogue change to a ranked result in front of a shopper: search, retrieval and recommendation serving, the streaming data that keeps them fresh, and the experiments that ship them.
Salla is the leading e-commerce platform in MENA, serving about 68,000+ merchants. Our AI team is building a self-owned discovery stack across our marketplace and merchant stores: hybrid lexical and vector search, Arabic-first query understanding, and learned ranking shared between search and recommendations. Data scientists own the relevance and ranking models. You own the platform that makes them fast, fresh, reliable and shippable.
The work is roughly half online serving, a third streaming data, and the rest integration into product surfaces. You sit on the ML Platform team spending time between search and serving for our recommendation systems and work day to day with search data scientists and the ranking lead
What you'll do
Online serving
- Build and run query and recommendation serving: retrieval, score fusion, filtering, caching.
- Hold tight latency budgets, including double-digit-millisecond p95 for search-as-you-type.
- Design graceful degradation, so serving holds up when a model or vector path is slow or down.
- Build experiment plumbing: shadow traffic, A/B assignment, guardrail metrics, rollback.
Streaming data
- Build change-data-capture from source systems into search indexes and feature stores, with measured freshness.
- Keep embeddings fresh for new and updated items.
- Run zero-downtime reindexing of multi-million-document collections.
- Build feature logging that turns production traffic into training data for ranking models.
Integration
- Ship changes into product teams' backends and clients: new endpoints, cutovers, experiment flags.
- Work with product engineering teams on reviews, release windows and production ownership.
Operability, throughout
- Monitoring, alerting, runbooks, and your share of on-call for what you ship.
Requirements
- 5+ years building backend or platform systems in production.
- 2+ years operating a production search engine (Elasticsearch, OpenSearch, Solr, Typesense, Vespa or similar): index lifecycle, analyzers, reindexing at scale, debugging relevance issues with data scientists.
- Low-latency services under real traffic, and the ability to explain where the p95 goes.
- Streaming ingestion: Kafka, Debezium or similar change-data-capture, plus idempotent backfills.
- Strong Python. Comfortable shipping in TypeScript.
- Shipped changes through A/B tests and staged rollouts.
- Daily use of agentic coding tools such as Claude Code. We expect one engineer plus agents to cover what used to take a team.