Описание вакансии
Fullstack-разработчик / GenAI engineer
Python
Ищем Fullstack-разработчика, осваивающего GenAI ( RAG, LLM-оркестрация, интеграции и пр.)
/ Ai engineer с бэкграундом в fullstack-разработке.
Фарма-Перископ — это продуктовая AI-/data-компания, которая создаёт платформы для анализа коммуникаций фармкомпаний с врачами и автоматизации контент-процессов. Мы работаем с крупными международными и российскими производителями, развиваем собственные модули конкурентной аналитики, мониторинга, прогнозирования и AI-инструменты вокруг больших массивов медицинского и маркетингового контента. Команда небольшая, гибкая, инженерная, с быстрыми циклами разработки, высоким уровнем автономии и фокусом на реальную пользу: прозрачные данные, автоматизация рутины и умные сервисы для рынка здравоохранения. 5 лет на рынке. Растем.
Требования к опыту и стеку / что понадобится
1. LLM-инженерия и обработка естественного языка
Опыт решения задач:
- построение многоступенчатых LLM-воркфлоу;
- классификация запросов, маршрутизация, определение интента;
- генерация структурированных ответов под строгими правилами;
- построение guardrails, проверок политик и комплайнса;
- работа с prompt-архитектурами, системными ролями, инструкционными пайплайнами.
Знание LLM-API:
- OpenAI / Claude / Llama-локальные модели;
- умение работать с токен-лимитами, rate limits, логированием.
2. Retrieval-Augmented Generation (RAG)
Нужен уверенный опыт в создании RAG-систем:
- построение ETL-цепочек: загрузка → парсинг → нормализация → нарезка → эмбеддинги;
- работа с PDF/HTML/docx-документами, включая сложные структуры;
- генерация эмбеддингов (OpenAI, local, bge, Instructor и т.п.);
- построение поискового слоя: dense vectors, hybrid search, reranking;
- опыт оптимизации качества поиска: chunking strategy, context windows, indexing policies.
Хранилища:
- Qdrant / Elastic / Weaviate / Pinecone (любой векторный движок);
- Postgres + S3-подобные стораджи.
3. API-интеграции и работа с внешними источниками данных
Опыт интеграции крупного внешнего контента:
- загрузка больших массивов документов из API;
- соблюдение разных типов лицензий и правил доступа;
- кэширование, версионирование, периодическая репликация данных;
- парсинг сложных страниц и документов;
- работа с XML/JSON API (Entrez, REST, SOAP, custom endpoints).
4. Backend-разработка
Нужен уверенный инженерный подход:
- Python (FastAPI или аналогичный фреймворк);
- построение модульной архитектуры с отдельным Core API;
- асинхронные пайплайны и очереди (Celery, Redis streams, asyncio);
- авторизация/аутентификация, логирование, rate-limiting.
5. Автоматизация процессов и интеграционные оркестраторы
Опыт работы хотя бы с одним низко-кодовым/оркестрационным инструментом:
- n8n / Airflow / Make / Zapier self-hosted / Node-RED;
- создание кастомных нод или HTTP-коннекторов;
- обработка писем через IMAP/SMTP;
- вызовы к REST API сторонних систем;
- построение цепочек автоматизаций с учётом SLA, ошибок, ретраев.
6. Работа с базами данных и инфраструктурой
- уверенный SQL (Postgres);
- нормализация схем, индексы, миграции;
- Docker, docker-compose;
- базовый DevOps: деплой, логирование, мониторинг.
Плюсом будет:
- опыт self-hosted развёртывания сервисов (n8n, Qdrant, внутренние APIs);
- понимание distributed systems и масштабирования воркфлоу.
7. Опыт работы в среде Cursor (или аналогичных AI-IDE)
- умение вести разработку в AI-ориентированной среде: структурирование задач, работа с ветками, управление изменениями через AI-ассистентов;
- опыт построения длинных технических цепочек (ETL, RAG, интеграции) внутри Cursor с корректным разбиением на файлы и модули;
- понимание, как использовать Cursor для ускорения разработки: рефакторинг, автогенерация кода, создание тестов, поддержка документации;
- способность выстраивать чистую архитектуру, чтобы AI-IDE не “ломала” проект и не вносила ошибки.
8. Безопасность и комплайнс
Необходимо понимать базовые принципы:
- ограничения на вывод моделей (guardrails, policy enforcement);
- фильтрация опасных запросов;
- режимы ограниченного доступа к данным;
- строгий учёт источников в выводе;
- запрет на персональные данные и защита пользовательских входов.
В идеале еще:
- Опыт разработки Telegram-ботов
- Базовые frontend-компетенции
Обязанности
1. Архитектура и системный дизайн
- разработка архитектуры AI-модулей, RAG-поиска, ETL-конвейеров и backend-сервисов;
- проектирование структур данных, индексов, хранилищ и API-слоёв;
- выбор и обоснование технического стека, библиотек, моделей, инфраструктурных решений;
- постановка технических стандартов, схемы версионирования контента и принципов комплайнса.
2. Проектирование компонентной схемы и ключевых модулей
- декомпозиция проектов на подсистемы: Core API, оркестратор LLM, индексы, интеграции, Telegram-фронт;
- проектирование потоков данных: загрузка → обработка → индексация → inference;
- создание архитектуры автоматизации процессов (CMS ↔ n8n ↔ внешние сервисы);
- определение SLA, точек отказа, механизмов ретрая и мониторинга.
3. Полный цикл разработки и реализация
- разработка backend-логики (Python/FastAPI), ETL-пайплайнов, модулей RAG и векторных индексов;
- реализация Telegram-бота как фронтенда: меню, состояния, онбординг, ограничения доступа;
- интеграция с API внешних источников, почтовых серверов, CMS, n8n-воркфлоу;
- создание минимальных фронтенд-панелей для внутренних инструментов и админки.
4. Инфраструктура, развёртывание и поддержка
- подготовка Docker-окружения, self-hosted сервисов (n8n, векторные БД, API-сервисы);
- настройка логирования, мониторинга и стабильной работы пайплайнов;
- регулярное обновление индексов, обработка ошибок, оптимизация скорости и качества поиска;
- контроль соответствия проектных решений требованиям безопасности и лицензирования.
5. Контроль качества, валидация и улучшение моделей
- внедрение guardrails, проверок политик и корректной маршрутизации запросов;
- отладка и оптимизация RAG (chunking, embeddings, ranking, prompt-flows);
- тестирование модулей, аудит данных, корректность цитирования и ссылок;
- инициирование улучшений архитектуры и постоянная оптимизация всей системы.
Что важно в подходе
- системное мышление в архитектуре AI-проектов;
- умение работать с большим количеством документов и форматов;
- аккуратность в данных и соблюдение лицензионных ограничений;
- гибкость между высокоуровневым ML и практическим backend-кодом;
- готовность писать чистый, предсказуемый, читаемый Python.
Условия
- удаленка (без совмещений)
- з/п в рынке, бонусы и премии
- мы - трудоголики и достигаторы (ищем таких же)
- тестовое задание
Откликнуться
EditPublish
- arrow_right1–2 релевантных кейса (ссылки/скриншоты)
- arrow_rightСроки и формат работы (когда на связи)
- arrow_right2–3 уточняющих вопроса по задаче
- arrow_rightОпишите результат и критерии приёмки
- arrow_rightУкажите бюджет/вилку — это повышает качество откликов
- arrow_rightСразу обозначьте сроки и доступность по коммуникациям