Okko is an online cinema where recommendations and search directly depend on user experience: the relevance of the storefront on a person's devices depends on what they see on the main page and how quickly they find a movie or series.
We are looking for a Senior Engineer in the personalization platform domain — for a team that develops the integration layer between recommendation and search services and Okko's client storefronts.
Our task is to ensure that product teams can launch new recommendation and search scenarios faster, without lengthy manual integrations, fragile agreements between teams, and constant client application adjustments for each new scenario.
What you will be doing:
- Building the platform layer that determines the speed of launching recommendation events in Okko. A good solution reduces manual work, decreases coupling between teams, and helps to test hypotheses in recommendations and search faster;
- Simplifying the execution of recommendations and hypothesis testing;
- Reducing time-to-market for product teams when launching new events;
- Designing and developing Go services, interfaces, and contracts between teams, representatives of recommendations/search, and storefronts;
- Working with PostgreSQL, caching, and data streams (Kafka);
- Participating in architectural decisions, technical decomposition, and planning;
- Improving the reliability and observability of services;
- Optimizing services for high load.
What is important to us:
- The ability not only to write quality code but also to think of the system as a product for users;
- Experience with Go (idiomatic Go, concurrency, race detector usage, golangci-lint, Docker) in high-load products;
- Experience with Kubernetes/Helm and applying resilience patterns (retries, circuit breaker, etc.);
- API design and service contract skills, experience in inter-team collaboration;
- Ability to understand complex domains and simplify them gradually;
- Experience interacting with product backend/frontend teams;
- Ability to independently lead a feature: from problem identification and decomposition to launch and support;
- Willingness to influence technical decisions and processes;
- Willingness to dive into existing Java/Kotlin code (Spring Boot — MVC/WebFlux, Resilience4j, Kafka/Redis), and sometimes Python. Deep expertise in these languages is not required; the desire and ability to understand others' code and relevant services are important.
Will be a plus:
- Experience in recommendation systems, search, or other ML products;
- Experience with Java/Kotlin/Python;
- Internal platform development experience.
What we offer:
- Necessary equipment and software for work;
- Official employment;
- Voluntary medical insurance with dentistry, an office doctor, sick leave compensation, corporate discounts;
- Preferential mortgage terms within the salary project;
- Free subscriptions to partner services;
- Corporate sports;
- Rich corporate life;
- Electronic library of the MIF publishing house, which includes almost 2,000 content items on business, self-development, healthy living, and other relevant topics;
- IT accreditation.