Опубликовано вчера

Senior Python-разработчик / инженер платформы (внутренний фреймворк) в Сёрф Санкт-Петербург

Building iconв офис
Person iconmiddle
Money bag iconне указана

Сопроводительное письмо под эту вакансию

Софи напишет его под твоё резюме. Бесплатно — 5 писем в день.

Мы в Сёрф уже 15 лет делаем мобильные приложения и веб-сервисы для крупных компаний: Росбанк, Т-Банк, Mars, KFC, Магнит и ещё 200+ клиентов.

Сейчас мы строим собственный фреймворк на Python для заказной разработки. Около 70 тысяч строк ядра, больше 30 пакетов, генерируемая из описания ресурсов админка, архитектурный линтер и семантический гейт изменений. Код продуктов пишут кодинг-агенты — фреймворк задаёт правила, внутри которых сложно ошибиться.

Решения здесь сразу действуют во всех проектах: контракт будет годами жить в чужом коде, правило линтера сэкономит десятки ревью.

Что нужно делать:

  • Вести одну-две подсистемы фреймворка целиком: проектирование, код, тесты, ADR, документация ит.п.

  • Отвечать за обратную совместимость: версионирование публичных контрактов, депрекейшны, миграции между релизами. Проекты не должны чинить код на каждом минорном релизе.

  • Развивать durable-выполнение: лизы, реаперы, семантика доставки, дедупликация, повторы, наблюдаемость — ядро платформы и частая причина инцидентов.

  • Решать, что входит в ядро, а что остаётся в проекте, — и отказывать, когда особенность “разовая”.

  • Писать и поддерживать правила архитектурного линтера.

  • Развивать слой инструкций для кодинг-агентов: контракты, скиллы, правила.

  • Довести фреймворк до стабильной версии 1.0.

Что ждём от тебя:

  • Ты делал библиотеку, фреймворк или внутреннюю платформу, которой пользовались другие команды. Не «писал микросервисы», а продукт для разработчиков — с версиями и потребителями.

  • Ломал публичное API и проводил потребителей через миграцию (депрекейшн, окно, автоматика, коммуникация).

  • Прод-опыт с распределённым выполнением задач: воркеры, повторы, идемпотентность, at-least-once, дедупликация. Не на уровне «настраивал Celery».

  • Python на уровне метапрограммирования: дескрипторы, метаклассы, типизация, декларативные DSL.

  • SQLAlchemy и PostgreSQL как инженер: границы транзакций, блокировки, уровни изоляции, пул, планы запросов, миграции на живой базе. Alembic — миграции с данными, обратимость, изоляция по схемам.

  • Готовность писать ADR и объяснять решения письменно.

Будет плюсом:

  • Статический анализ и работа с AST / libcst.

  • Кодогенерация: TypeScript- и Flutter-SDK, OpenAPI.

  • Prometheus и OpenTelemetry с пониманием кардинальности метрик.

  • React / TypeScript — иногда нужно править админку.

  • Опыт работы с LLM-агентами как автор контекста: инструкции, скиллы, гейты.

Технологии:

Python, FastAPI, SQLAlchemy 2.x, PostgreSQL, Alembic, uv, архитектурный линтер, семантический гейт, AST / libcst, Prometheus, OpenTelemetry, React / TypeScript, кодинг-агенты (Claude Code, Codex). Опционально — Kafka, Redis, S3.

Чего в этой работе нет: переписывания с нуля, архитектуры только в диаграммах, споров про синхронный SQLAlchemy (это осознанное решение). Половина роли — говорить «нет» проектам.

Почему у нас хорошо:

— От твоих решений зависит как будет выглядеть фреймворк и дальнейшая разработка в компании.

— Удалёнка с гибким графиком.

— Официальное оформление, прозрачные условия.

— AI-инструменты за счёт компании.

— Переработки не приветствуем, но если случаются — оплачиваем.

— Поддерживаем конференции и выступления.

Откликайся, если хочешь строить платформу, а не просто писать код.

Эту вакансию мы нашли в HH.ru
СЁ

Сёрф

Санкт-Петербург

Получить оффер

Зарплата vs рынок

Зарплата не указана. Обычно на такой позиции платят 150 000 – 280 000 ₽, медиана 200 000 ₽.

50k200k300k

обычно платят (p25–p75): 150 000 – 280 000 ₽

Когорта Python, Middle · 430 вакансий за 90 дней

Зарплаты Python

Похожие вакансии

Это единственная вакансия по вашему фильтру

Не то, что искал?

вакансии джуниор
как откликнуться на вакансию
примеры вакансий junior
вакансии по Python
стажировки по Python
Автоотклики