ЦРТ - российская аккредитованная продуктовая IT-компания. Являемся лидерами в разработке систем для распознавания и синтеза речи, идентификации личности по голосу и изображению. Наши продукты внедрены в крупных корпорациях по всей России. 75+ стран присутствия продукта на стороне клиента.
Ключевые задачи:
- Разрабатывать и оптимизировать высоконагруженные сервисы и потоковые компоненты обработки данных;
- Работать с пайплайнами на Python или /.NET, Kafka и связанными интеграциями;
- Проектировать обработку событий с учетом задержек, пропускной способности, отказоустойчивости и идемпотентности;
- Встраивать в производственный контур компоненты LLM и компьютерного зрения;
- Оптимизировать потребление ресурсов (CPU, памяти, сети), процессов сериализации, пакетирования данных, а также параллельного выполнения и асинхронной обработки;
- Участвовать в проектировании сквозных потоков данных (end-to-end): от приема данных до их обогащения, инференса, агрегации и доставки в аналитический контур;
- Исследовать и устранять узкие места в коде и архитектуре;
- Внедрять наблюдаемость: метрики, профилирование, трассировку, нагрузочное тестирование;
- Совместно с архитектором подбирать технологические решения под разные режимы обработки.
Что для нас важно:
- Опыт промышленной разработки на Python и/или .NET;
- Практический опыт построения потоковых систем и событийно-ориентированной архитектуры;
- Глубокое понимание Kafka: работа с группами потребителей, семантиками доставки, механизмами повторов и очередей ошибок (Retry/DLQ), гарантией порядка сообщений и принципами партиционирования;
- Умение писать производительный код и разбираться в его поведении под нагрузкой;
- Опыт работы с Linux, контейнеризацией и отладкой систем в продуктивной среде;
- Понимание многопоточности, асинхронности, профилирования и тонкой настройки производительности;
- Опыт интеграции внешних ML/AI-компонентов или готовность быстро освоить специфику работы с нагрузками LLM и CV;
- Умение думать не только на уровне отдельного сервиса, но и на уровне архитектуры всего потока обработки (end-to-end).
Будет плюсом - Опыт с Apache Flink, Spark Structured Streaming, Faust, Ray, Akka, Orleans или похожими инструментами;
- Опыт оптимизации инференса, работы с GPU-нагрузками и развертывания моделей ML и компьютерного зрения (CV);
- Понимание обработки геопространственных данных;
- Опыт в сериализации (Protobuf, Avro), управлении совместимостью схем и обеспечении гарантий обработки exactly-once;
- Навыки разработки платформенных библиотек и переиспользуемых компонентов обработки данных.