Загрузка данных
### Оптимальный состав команды: **5 человек**
---
#### **1. ML Engineer (NLP/LLM) — 1 чел.**
**Ядро компетенций:**
- Глубокое понимание архитектур трансформеров (BERT, GPT, T5)
- Практический опыт с фреймворками: **LangChain/LlamaIndex**, HuggingFace Transformers, PyTorch
- Работа с **RAG** (Retrieval-Augmented Generation) и векторными БД (Chroma, Pinecone, Qdrant)
- **Prompt engineering** и оценка качества генерации (ROUGE, BLEU, custom metrics)
- Опыт с классификацией текстов и эмбеддингами (Sentence Transformers)
**Зоны ответственности:**
- Пайплайн суммаризации и тегирования статей
- Система персонализации дайджестов по профилям сотрудников
- Интеграция LLM (GPT-4/open-source модели) в процесс обработки
- Оптимизация качества и стоимости генерации
---
#### **2. Backend Developer — 1 чел.**
**Ядро компетенций:**
- **Python** (FastAPI/Flask) + асинхронное программирование
- **Web scraping**: Scrapy, BeautifulSoup, Playwright (для источников без API)
- Работа с API: arXiv, Google Scholar, PubMed, корпоративные источники
- **Базы данных**: PostgreSQL (метаданные) + векторная БД (Chroma/Pinecone)
- **Очереди задач**: Celery/RQ + Redis для планирования рассылок
- Docker, базовый **CI/CD**, работа с облачными сервисами
**Зоны ответственности:**
- Архитектура сервиса сбора публикаций (парсеры, API интеграции)
- Разработка API для фронтенда и ML сервисов
- Хранение и версионирование данных
- Планировщик автоматических рассылок
- Интеграция ML моделей в production-ready сервисы
---
#### **3. Frontend Developer — 1 чел.**
**Ядро компетенций:**
- **React + TypeScript** (или Vue 3) — полноценный SPA
- **UI/UX дизайн**: Tailwind CSS, Material UI, shadcn/ui
- Работа с **Rich Text Editor** (для корректировки дайджестов)
- Опыт с **Admin Dashboard** и data visualization (Recharts, D3)
- WebSocket/SSE для превью генерации в реальном времени
**Зоны ответственности:**
- Интерфейс управления рассылками (группы, тематики, расписание)
- Превью дайджестов с функцией ручной корректировки
- Редактор тематик и профилей сотрудников
- Визуализация статистики (просмотры, клики, релевантность)
---
#### **4. ML Engineer / Researcher (Code Generation) — 1 чел.**
**Ядро компетенций:**
- Опыт с **генерацией кода** (CodeT5, StarCoder, GPT-4 Code Interpreter)
- Сильные знания **ML алгоритмов** и их реализации на Python
- Умение читать и понимать **научные статьи** (архитектуры, метрики, датасеты)
- Опыт с **Jupyter**, тестированием моделей, прототипированием
- Библиотеки: PyTorch, scikit-learn, pandas, numpy
**Зоны ответственности:**
- Пайплайн извлечения **концепции, метрик, архитектуры** из статей
- Генерация **рабочего кода** на основе описаний (Python notebooks)
- Тестирование сгенерированных подходов на синтетических данных
- Создание **адаптивных шаблонов** для разных доменов (риски, OCR и т.д.)
- Помощь в суммаризации технических деталей
---
#### **5. Team Lead / DevOps Engineer — 1 чел.**
**Ядро компетенций:**
- **Управление проектом**: Agile/Scrum, планирование спринтов, приоритизация
- **Архитектурное проектирование**: микросервисы, масштабируемость
- **MLOps**: Docker Compose, CI/CD (GitHub Actions), модельный реестр
- **Мониторинг**: Prometheus + Grafana для отслеживания качества генерации
- Базовые знания **Backend** (Python) для координации
**Зоны ответственности:**
- **Архитектура** всей системы (сбор → обработка → рассылка)
- Планирование и контроль выполнения задач (12 недель)
- Деплой MVP и управление инфраструктурой
- Обеспечение **репродуцируемости** экспериментов
- Коммуникация с заказчиком и презентация результата
---
### **Почему именно 5 человек?**
- **Без избыточности**: каждая роль покрывает критический функционал MVP
- **Запас прочности**: при потере одного участника проект не остановится
- **Специализация**: студенты МФТИ могут глубоко погрузиться в свою область
- **Параллельная разработка**: ML, Backend и Frontend работают одновременно без блокировок
- **Качество**: достаточно ресурсов на тестирование и отладку сложных компонентов (генерация кода, персонализация)
**Альтернатива**: Если ресурсы ограничены, можно сократить до **4 человек**, объединив роли 4 и 5 (ML Researcher + Team Lead), но это повышает риски перегрузки и снижает качество управления проектом.