Системный программист. Техлид-консультант для арбитражного торгового бота (Дистанционная работа)

Бюджет не указан

Задание: Системный программист. Техлид-консультант для арбитражного торгового бота (Дистанционная работа)

## О проекте **Тип проекта:** Автоматизированный арбитражный торговый бот **Технологии:** Python 3.9+, SQLite, FIX API, REST API, MT4/MT5 API **Стадия:** Активная разработка **Команда:** 1 основной программист + планируется расширение ### Текущая ситуация и проблемы **Что уже сделано:** - Базовая архитектура системы (модульная структура) - Подключения к брокерам (HAPI FIX, MOEX API) - Сбор данных и расчет спредов - Интерфейсы для работы команды (API Contracts) - База данных и документация **Проблемы:** - Низкая скорость выполнения задач (один программист) - Много параллельных задач разной сложности - Необходимость масштабирования команды - Требуется правильная организация процессов разработки - Нужна помощь в определении блоков задач и создании ТЗ --- ## Задачи для техлида-консультанта ### 1. Анализ проекта и процессов **Цель:** Получить полную картину проекта, выявить узкие места, предложить улучшения **Что нужно сделать:** - Изучить текущую кодовую базу и архитектуру - Проанализировать существующие интерфейсы и процессы разработки - Оценить качество кода и документации - Выявить технический долг и риски - Оценить масштабируемость текущего решения **Результат:** - Отчет с анализом архитектуры и процессов - Рекомендации по улучшению - Оценка рисков и узких мест ### 2. Настройка процессов разработки **Цель:** Организовать эффективную работу команды разработки **Что нужно сделать:** - Настроить систему учета задач - Организовать процесс code review - Создать шаблоны для Pull Requests - Настроить систему мониторинга и логирования - Организовать процесс планирования задач - Создать чеклисты для проверки качества кода **Результат:** - Настроенная система управления задачами - Документация по процессам разработки - Шаблоны и чеклисты ## 4. Обучение владельца проекта **Цель:** Научить владельца проекта контролировать и анализировать процессы разработки **Что нужно сделать:** - Провести обучение по: - Анализу архитектуры проекта - Оценке качества кода - Контролю выполнения задач - Анализу метрик разработки - Управлению техническим долгом - Создать руководство для владельца проекта - Научить читать и понимать техническую документацию - Научить оценивать сложность задач **Результат:** - Владелец проекта может самостоятельно: - Контролировать качество кода - Анализировать процессы разработки - Оценивать прогресс команды - Принимать технические решения --- ## Формат работы ### Режим: Консультант **Формат:** 2 консультации в неделю (по 1-2 часа каждая) **Режим:** Удаленно **Длительность:** Начальный период 4-6 недель, затем долгосрочное сотрудничество рассматривается **Расписание:** - Консультация 1: Анализ и настройка процессов (еженедельно) - Консультация 2: Определение блоков задач, создание ТЗ, обучение (еженедельно) **Коммуникация:** - Еженедельные консультации (2 раза в неделю) - Ответы на вопросы между консультациями (по необходимости) - Документирование всех решений ### Долгосрочное сотрудничество **Рассматривается после начального периода:** - Контроль качества системы - Регулярный code review - Консультации по архитектурным решениям - Помощь в планировании задач - Обучение команды **Формат:** 1-2 консультации в неделю, по необходимости --- ## Требования к кандидату ### Обязательные требования - **Опыт работы техлидом/архитектором** от 3 лет - **Опыт работы с Python** (системы реального времени, финансовые системы) - **Опыт работы с торговыми системами** (Forex, биржи, FIX API, MT4/MT5) - **Опыт организации команд разработки** (2-5 человек) - **Опыт настройки процессов разработки** (Git workflow, code review, управление задачами) - **Умение писать техническую документацию** (ТЗ, архитектурные решения) - **Опыт анализа и рефакторинга кода** - **Понимание финансовых рынков** (арбитраж, спреды, лимитные ордера) ### Желательные требования - Опыт работы с FIX API - Опыт работы с MT4/MT5 API - Опыт работы с SQLite/PostgreSQL - Опыт работы с системами реального времени - Опыт настройки мониторинга и логирования - Знание Docker, CI/CD - Опыт работы с системами управления задачами (Jira, Trello, GitHub Issues) ### Личные качества - Системное мышление - Умение объяснять сложные технические концепции простым языком - Аналитический склад ума - Внимание к деталям - Ответственность - Готовность обучать и передавать знания