Java Developer (AI / GenAI)
Employment type: Полный рабочий день
Grade: Middle
Skills: JavaScript
Description:
О проекте: Мы развиваем платформу, в ядро которой встраиваются возможности генеративного ИИ. Нам нужен сильный бэкенд-разработчик уровня Middle/Senior, который не просто пишет на Java, но и глубоко понимает механику работы LLM, умеет строить RAG-пайплайны и проектировать сложных агентов.
Задачи:
Проектирование и разработка микросервисной архитектуры на Java 17+ с использованием Spring Boot (MVC, Data JPA, Security).
Построение пайплайнов Retrieval-Augmented Generation (RAG): от парсинга сырых данных до индексации эмбеддингов.
Разработка и поддержка векторных баз данных Qdrant: проектирование схем шардирования, настройка гибридного поиска (BM25 + Dense Vectors) и оптимизация запросов к векторному пространству.
Создание мультиагентных систем на базе LangChain/LangGraph для автоматизации бизнес-процессов (классификация, извлечение сущностей, принятие решений).
Глубокий промт-инжиниринг: написание промптов с нуля под разные user-case'ы одного агента, внедрение техник Few-shot, Chain-of-Thought (CoT) и структурированного вывода (JSON mode).
Отладка семантики моделей: снижение энтропии ответов, управление вариативностью через параметры инференса (temperature, top_p, штрафы), реализация механизмов самовосстановления (self-healing) при деградации внешних провайдеров LLM.
Оптимизация производительности PostgreSQL: тюнинг сложных SQL-запросов, работа с индексами (B-tree, GIN/GIST, триграммы), проектирование транзакционной изоляции.
Вынос вычислений в контейнерную среду: Docker, Kubernetes (Helm), построение отказоустойчивых CI/CD-конвейеров в GitLab CI/Jenkins.
Наши ожидания от кандидата:
Уверенное владение Java 17+. Понимание многопоточности (CompletableFuture, виртуальные потоки Project Loom — будет плюсом).
Экспертный уровень владения стеком Spring: глубокое понимание жизненного цикла бинов, аспектно-ориентированного программирования, тонкая настройка пулов соединений БД и параметров безопасности.
Опыт проектирования реляционных моделей в PostgreSQL, умение читать EXPLAIN ANALYZE, бороться с блокировками и писать эффективные миграции (Liquibase/Flyway).
Практический опыт работы с векторными СУБД (Qdrant) или Weaviate/Pinecone/Milvus. Понимание метрик близости (Cosine Similarity, Dot Product, Euclidean Distance).
Опыт разработки с библиотеками LangChain и/или LangGraph. Навык построения графов состояний (State Machines) и интеграции внешних инструментов (tool calling).
Навык написания эффективных промптов (Prompt Engineering) и управления поведением LLM без изменения весов модели.
Опыт работы с Docker и Kubernetes (написание манифестов, Helm-чартов). Знание Linux shell на уровне уверенного пользователя.
Настроенные процессы CI/CD (GitLab CI или Jenkins): сборка Maven/Gradle, покрытие тестами (JUnit 5, Testcontainers), статический анализ кода.
Анонимная аналитика
Мы используем анонимную аналитику, чтобы улучшать поиск вакансий и работу сайта.