Привет! Мы – команда разработки продукта Атом.Око. Это OCR-продукт с использованием машинного обучения. Его особенностью является не просто извлечение текстового содержимого документа, но еще и последующая интеллектуальная постобработка: создание краткого содержания, вопросно-ответная система к документу и многое другое. Само приложение создано на основе микросервисной архитектуры и основано на трех столпах: Python, JS и контейнеризация. Сейчас мы находимся на активном этапе разработки (с кучей клиентов, к слову), но нам очень сильно нужен профессионал, который бы смог вести общую архитектуру продукта, становящуюся все сложнее и сложнее.
Задачи:
- Ведение общей архитектуры проекта
- Обеспечивать своевременную и качественную реализацию бизнес-требований
- Консультирование команды по архитектуре проекта
- Участие в развитии функционала продукта с технической точки зрения
- Поиск узких мест и способов их «расширения»
- Обеспечивать производительность, безотказную работу и масштабируемость приложений
Ожидаем от кандидата:
- Знания Python;
- Стаж работы Senior/ТeamLead не менее трех лет;
- Наличие опыта в web-разработке;
- Опыт работы в должности архитектора;
- Знание архитектурных паттернов;
- Опыт разработки структуры хранения данных и модели данных;
- Понимание общего процесса разработки программного обеспечения;
- Умение обеспечивать баланс между стоимостью разработки и гибкостью решения для быстрого внедрения будущих требований;
- Умение выбирать и обосновывать выбор технологий;
- Умение контролировать реализацию;
- Понимание работы: HTTP, WebSockets, REST, GraphQL;
- Авторизация и безопасность: jwt, keycloak, LDAP;
- Знание принципов и инструментов DevOps, CI/CD, автоматизация процессов;
- Локализация и безопасность веб приложений;
- Понимание особенностей горизонтального масштабирования сервисов, использующих GPU;
- Знание как минимум одного фреймворка управления ML-проектом (Data Driven Scrum, CRISP-DM, TDSP, Domino Live Cycle, SEMMA и т.д.);
- Понимание основных этапов присущих задачам машинного обучения
Будет плюсом:
- Опыт работы на проектах с применением OCR, CV или NL;
- Знание TS;
- Понимание MLOps и знание инструментов автоматизации MLOps;
- Понимание принципов работы OCR;
- Знание основных типов задач ML (чем отличается обучение без учителя и обучение с учителем, что такое детекция объектов на изображении и чем она отличается от сегментации и т.д.)