{"id":4150641,"url":"https://alion.io/job/kupibilet-python-tech-lead","title":"Python Tech Lead","company":{"id":1043539,"name":"Kupibilet","domain":"kupibilet.pro","url":"https://alion.io/company/kupibilet-2","size_band":null,"is_staffing_agency":false,"employer_type":"direct","is_intermediary":false,"listed_via":null,"ats_vendor":"HeadHunter","truth_index":null},"role":"Backend","role_family":"Backend","seniority":"lead","employment_type":null,"work_mode":"remote","remote_scope":"stated_regions","remote_scope_basis":"inferred_board_market","remote_working_hours":null,"hiring_geo_confidence":"inferred","locations":["Saint Petersburg, Russia"],"countries":["RU"],"hiring_countries":["RU","BY","KZ","KG","AM"],"hiring_countries_total":5,"salary":null,"salary_estimate":null,"experience_years_min":5,"visa_sponsorship":false,"relocation_package":false,"has_equity":false,"technologies":[{"name":"AI Agents","optional":false},{"name":"CI/CD","optional":false},{"name":"Docker","optional":false},{"name":"FastAPI","optional":false},{"name":"PostgreSQL","optional":false},{"name":"Pydantic","optional":false},{"name":"Python","optional":false},{"name":"Redis","optional":false},{"name":"Rest API","optional":false},{"name":"Alembic","optional":true},{"name":"Asyncio","optional":true},{"name":"ElasticSearch","optional":true},{"name":"GitLab CI","optional":true},{"name":"Grafana","optional":true},{"name":"Kibana","optional":true},{"name":"Prometheus","optional":true},{"name":"SQLAlchemy","optional":true}],"status":"live","first_seen_at":"2026-11-12T09:00:38Z","employer_posted_date":"2026-11-12","last_verified_at":"2026-11-09T10:31:45Z","board_verified":false,"closed_at":null,"days_open":0,"trust":{"level":"ok","repost_count":null,"flags":[],"days_open":0},"description":"Купибилет - не просто тревел-сервис. Мы - инженеры лазеек в мире путешествий. С 2011 года мы ловко комбинируем технологии и тревел, ежесекундно собираем пазл из тысячи маршрутов, преобразовываем сложные алгоритмы в простые возможности для путешествий.\n Вероятно, ты уже был(а) нашим пользователем, но сейчас мы предлагаем стать частью команды! Мы ищем сильного Python-бэкендера уровня senior/lead, который живет в архитектуре и интеграциях. Твоя зона - платформа поиска и бронирования отелей, подключение поставщиков, PMS-системы и связка с платежными и внутренними сервисами. Ты понимаешь, как проектировать границы модулей и контракты API, почему повторный запрос без идемпотентности - это двойное бронирование, и как таймаут на внешнем API превращается в потерянную конверсию. Осознанно применяешь AI-агентов в разработке - с проверкой результата и личной ответственностью за решения.\n Что мы предлагаем:\n Интересный продукт с большой пользовательской аудиторией.\n\n Высокую автономность, минимум бюрократии, быстрые релизы и возможность напрямую влиять на архитектурные решения.\n\n Конкурентную заработную плату, которая отражает твой профессиональный уровень и ценность.\n\n Гибридный или удаленный формат работы: работай там, где тебе удобнее.\n\n Комфортные условия труда в нашем стильном офисе в центре Санкт-Петербурга, если захочешь поработать в оффлайне.\n\n Гибкое начало дня, позволяющее планировать свой график и управлять временем.\n\n Пятничные вечеринки, тимбилдинги, онлайн квесты, чтобы расслабиться и от души пообщаться с коллегами.\n\n Задачи:\n Разрабатывать новые функции и критичные части Hotels-продукта на Python.\n Подключать новых поставщиков отелей и развивать существующие интеграции.\n Интегрировать PMS-системы, унифицировать их данные и бизнес-процессы с моделью продукта.\n Интегрировать Hotels-продукт с платежными, пользовательскими и другими внутренними сервисами\n Проектировать технические решения для новых продуктовых сценариев и роста нагрузки: определять границы модулей, контракты API, модели данных и асинхронные процессы.\n Обеспечивать отказоустойчивость интеграций: таймауты, повторные запросы, идемпотентность и корректную деградацию.\n Повышать производительность, тестируемость и качество кодовой базы.\n Развивать мониторинг, метрики и алерты, участвовать в разборе инцидентов и устранении их системных причин.\n Декомпозировать сложные задачи, проводить code review и развивать инженерные практики команды.\n Что мы от тебя ожидаем?\n Релевантный опыт backend-разработки на Python - от 5 лет.\n\n Сильное знание Python: async/await, типизация, профилирование и оптимизация.\n\n Опыт разработки сервисов на FastAPI и Pydantic.\n\n Уверенное владение PostgreSQL: схемы, транзакции, индексы, оптимизация запросов, миграции.\n\n Практический опыт с Redis: кэширование, TTL, состояние асинхронных процессов.\n\n Опыт проектирования REST API, версионирования контрактов и обратной совместимости.\n\n Опыт интеграции с внешними API: таймауты, ретраи, rate limits, идемпотентность, обработка частичных отказов.\n\n Сильные знания системного дизайна: декомпозиция, границы модулей, консистентность данных, масштабирование, отказоустойчивость.\n\n Опыт построения наблюдаемых систем: логи, метрики, алерты, диагностика инцидентов.\n\n Опыт написания unit-, integration- и contract-тестов, работа с Docker и CI/CD.\n\n Опыт технического лидерства: декомпозиция решений, code review, развитие инженерных стандартов.\n\n Практический опыт использования AI-инструментов в разработке - с пониманием ограничений, проверкой результата и личной ответственностью за решения.\n\n Опыт построения архитектуры на сложных проектах - обязателен.\n\n Будет плюсом:\n Опыт интеграции с гостиничными PMS (Property Management Systems), channel manager или booking-системами.\n Понимание гостиничного домена: номерной фонд, тарифы, доступность, ограничения, бронирования и отмены.\n Опыт в travel, e-commerce или fintech.\n Опыт работы с платежами и другими критичными бизнес-сценариями.\n Опыт развития модульных монолитов и интеграционных платформ.\n Текущий стек:\n Python 3.12+, FastAPI, asyncio, Pydantic, SQLAlchemy, asyncpg, Alembic, PostgreSQL, Redis, Elasticsearch, Docker, GitLab CI, Prometheus, Grafana, Kibana.","description_format":"text","description_chars":4190,"description_truncated":false,"requirements":{"experience_years_min":5,"management_years_min":null,"team_size_min":null,"manages_managers":false,"education":null,"security_clearance":false,"languages":[{"language":"Russian","level":"Advanced (C1)","optional":false}]},"benefits":[],"hiring_locations":[{"name":"Russia","iso":"RU","kind":"country"},{"name":"Belarus","iso":"BY","kind":"region"},{"name":"Kazakhstan","iso":"KZ","kind":"region"},{"name":"Kyrgyzstan","iso":"KG","kind":"region"},{"name":"Armenia","iso":"AM","kind":"region"}],"hiring_excludes":[],"relocation_offered":false,"industries":["Travel Agencies","Travel Technology"],"lifecycle":[{"event":"open","at":"2026-11-12T09:04:25Z"}],"visa":[],"liveness":{"score":86,"band":"hot","label":"Hiring now","p_open":1,"p_active":0.86,"p_room":1,"age_days":0,"expected_fill_days":28,"reasons":["conf:1","win:early"],"computed_at":"2026-11-12T10:31:41Z"},"pay":null,"html_url":"https://alion.io/job/kupibilet-python-tech-lead","json_url":"https://alion.io/job/kupibilet-python-tech-lead.json","meta":{"generated_at":"2026-11-12T10:31:41Z","cache_seconds":300,"methodology":"https://alion.io/methodology","terms":"https://alion.io/terms","contact":"https://alion.io/contact","api":"https://alion.io/developers","about":"Alion is a live layer of people, companies and AI agents: who they are, whether they are real and active right now, what they do and how to work with them, readable by people and by agents and paid per call.","catalog":"https://alion.io/catalog.json","usage":{"tier":"crawler_verified","counted_by":"address","units_charged":1,"used_today":21537,"day_limit":null,"remaining_today":null,"minute_limit":300,"resets_at":"2026-11-13T00:00:00Z"}},"offers":[{"id":"company.slices","title":"One company in depth, by slice","status":"live","price":{"credits":0.1,"usd":0.01,"plus_per_slice":{"credits":0.05,"usd":0.005}},"unit":"per company, plus each slice with data","note":"the employer in depth","call":{"mcp_tool":"get_company","arguments":{"id":1043539},"rest":"https://alion.io/mcp/rest/get_company?id=1043539"},"human":"https://alion.io/catalog?offer=company.slices&for=job%2Fkupibilet-python-tech-lead"},{"id":"market.stats","title":"A market slice: pay, demand and time to fill","status":"live","price":{"credits":2,"usd":0.2},"unit":"per slice","note":"pay, demand and time to fill for this role and place","call":{"mcp_tool":"market_stats"},"human":"https://alion.io/catalog?offer=market.stats&for=job%2Fkupibilet-python-tech-lead"},{"id":"job.search","title":"Open jobs by role, technology, place, pay and visa","status":"live","price":{"credits":0.1,"usd":0.01},"unit":"per posting in a list","note":"similar open postings","call":{"mcp_tool":"search_jobs"},"human":"https://alion.io/catalog?offer=job.search&for=job%2Fkupibilet-python-tech-lead"},{"id":"company.verify","title":"Is this company real and active right now","status":"pilot","price":null,"unit":"per company","request":{"url":"https://alion.io/catalog/request","method":"POST","body":"{\"offer\": \"company.verify\", \"for\": \"job/kupibilet-python-tech-lead\", \"note\": \"what you need it for\"}"},"human":"https://alion.io/catalog?offer=company.verify&for=job%2Fkupibilet-python-tech-lead"}],"agent":{"mcp":"https://alion.io/mcp/jobs","mcp_open":"https://alion.io/mcp/open","next":[{"tool":"get_job","arguments":{"id":4150641}},{"tool":"search_jobs","arguments":{"company":"kupibilet.pro","detail":"compact"}},{"tool":"match_people","arguments":{"job_id":4150641},"note":"people open to offers who fit this vacancy"}],"note":"The same data through MCP tools: https://alion.io/mcp/open needs no sign-in (compact searches, postings, people); https://alion.io/mcp with an Alion account has everything. Docs: https://alion.io/developers"}}