{"id":54839,"url":"https://alion.io/job/transmashgaztoken-senior-python-engineer-payments-ledger-processor-integrations","title":"Python Tech Lead / Staff Backend Engineer (Payments)","company":{"id":1850,"name":"TMGT","domain":"transmashgaztoken.ru","url":"https://alion.io/company/transmashgaztoken","size_band":"11-50","is_staffing_agency":false,"employer_type":"direct","is_intermediary":false,"listed_via":null,"ats_vendor":"HeadHunter","truth_index":{"grade":"E","score":25,"open_postings":3,"ghost_share":1,"stale_share":0,"repost_share":1,"time_to_fill_p50_days":42,"computed_at":"2026-10-25T05:49:26Z"}},"role":"Backend","role_family":"Backend","seniority":"lead","employment_type":"full_time","work_mode":"on_site","remote_scope":null,"remote_scope_basis":null,"remote_working_hours":null,"hiring_geo_confidence":"structured","locations":["Moscow, Russia"],"countries":["RU"],"hiring_countries":[],"hiring_countries_total":0,"salary":{"min":300000,"max":350000,"currency":"RUB","period":"month","gross":false,"usd_annual":49740},"salary_estimate":null,"experience_years_min":null,"visa_sponsorship":false,"relocation_package":false,"has_equity":false,"technologies":[{"name":"Apache Kafka","optional":false},{"name":"Asyncio","optional":false},{"name":"Confluence","optional":false},{"name":"FastAPI","optional":false},{"name":"Jira","optional":false},{"name":"PostgreSQL","optional":false},{"name":"Python","optional":false},{"name":"Redpanda","optional":false},{"name":"SQLAlchemy","optional":false},{"name":"Amazon EKS","optional":true},{"name":"ArgoCD","optional":true},{"name":"AWS","optional":true},{"name":"Kubernetes","optional":true}],"status":"live","first_seen_at":"2026-09-29T19:32:20Z","employer_posted_date":"2026-09-29","last_verified_at":"2026-10-24T10:19:23Z","board_verified":true,"closed_at":null,"days_open":25,"trust":{"level":"ghost","repost_count":6,"flags":["repost"],"days_open":25},"description":"Python Tech Lead / Staff Backend Engineer - Payments\n О роли\n Ищем hands-on технического лидера, который возьмёт ownership критического транзакционного контура: payment execution, ledger, processor integrations и reconciliation. Это не чисто менеджерская позиция - основная ценность роли в архитектурных решениях, личной работе с кодом, разборе сложных инцидентов и повышении инженерной планки команды.\n Нам нужен человек, который способен самостоятельно уменьшать техническую нагрузку на команду: принимать решения в условиях неполных внешних контрактов, видеть системные риски до релиза и доводить money-critical изменения до проверяемого production-ready результата.\n О продукте\n Мы строим B2B fintech-платформу с event-driven backend на Python 3.14, FastAPI, PostgreSQL 17, SQLAlchemy 2.0 async, Kafka/Redpanda, Debezium CDC и Temporal.\n Платформа интегрируется с банковскими и платёжными рельсами, processors, custody/wallet infrastructure, KYC/KYT-провайдерами и FX-источниками. Ошибка в retries, concurrency, idempotency или учёте может привести к реальному финансовому эффекту, поэтому решения должны быть объяснимыми, наблюдаемыми и защищёнными детерминированными инвариантами.\n Чем предстоит заниматься\n - Проектировать и развивать payment state machine и полный lifecycle операции: authorization, reservation, provider execution, confirmation, settlement и reconciliation.\n- Развивать double-entry ledger, available/pending/hold balances, fees, refunds, reversals и FX postings.\n- Обеспечивать идемпотентность и защиту от duplicate execution, race conditions и TOCTOU через transaction boundaries, DB constraints и другие доказуемые guards.\n- Корректно обрабатывать timeout и неизвестный результат внешнего вызова без слепого повторного списания.\n- Проектировать durable workflows, safe retries, replay и обработку duplicated/out-of-order Kafka events.\n- Строить безопасные webhooks: HMAC/RSA verification, timestamp/anti-replay, persist-then-process и idempotent processing.\n- Разбирать расхождения между internal state и provider state, строить reconciliation и compensating entries без переписывания финансовой истории.\n- Принимать ключевые system-design решения, ревьюить критические изменения, задавать engineering patterns и помогать сильным разработчикам расти.\n- Оставаться hands-on: писать и ревьюить production-код, тесты, migrations и observability для money-path.\n Что мы ожидаем\n - Senior/Lead-level Python backend и подтверждённое production ownership критического сервиса или контура.\n- Глубокое понимание async/await, FastAPI или аналогичного framework и строгой типизации.\n- Сильный PostgreSQL: schema design, transactions, locking, isolation, constraints и безопасные migrations.\n- Опыт с Kafka/Redpanda или аналогичной event-driven системой; понимание at-least-once delivery, replay и idempotent consumers.\n- Production-опыт в payments, banking, ledger, transaction processing, reconciliation или другом stateful money-critical домене.\n- Опыт интеграции внешних financial APIs, processors или providers через API, webhooks и settlement/status flows.\n- Способность объяснять компромиссы, принимать решения и отвечать за результат, а не только выполнять готовые задачи.\n- Рабочий английский для документации, Jira/Confluence и инженерной коммуникации.\n Сильным плюсом будет\n - Temporal, Debezium CDC, FastStream, AWS EKS, Helm или ArgoCD.\n- Практический опыт double-entry accounting, custody/wallet infrastructure, KYC/KYT/AML или цифровых активов.\n- Опыт технического лидерства без ухода от кода: system design, code review, incident leadership и развитие общих стандартов.\n AI-driven engineering\n Agent tooling используется для декомпозиции, кода, refactoring, тестов, migrations и анализа логов. Для Tech Lead/Staff уровня важен системный workflow: качественный контекст и правила, review diff, детерминированные проверки и личная ответственность. Секреты, PII и чувствительные финансовые данные не передаются во внешние модели; ledger, reconciliation, authorization, migrations и security controls проверяются независимо от AI-generated output.\n Почему роль может быть интересна\n - Прямое влияние на архитектуру и инженерные стандарты критического ядра продукта.\n- Сложные задачи на стыке payments, distributed systems, PostgreSQL и внешних интеграций.\n- Небольшая команда около 20 человек и стадия prelaunch: решения можно доводить от design до результата без длинной цепочки согласований.\n- Возможность построить устойчивые patterns для money-path, а не поддерживать набор изолированных CRUD-сервисов.\n Формат работы\n Полная занятость. Основной формат - офис в Хамовниках, Москва. Ограниченный гибрид возможен по согласованию, но большинство рабочих дней команда проводит в офисе. Remote-only не рассматриваем.\n Детали продукта, юрисдикцию и чувствительный контекст раскрываем после NDA.\n Как проходит отбор\n - Короткое обсуждение опыта, office-fit и AI-driven процесса.\n- Техническое интервью: Python, PostgreSQL, event-driven architecture, idempotency, consistency и incidents.\n- System design на реальном money-critical кейсе.\n- Финальная калибровка роли и engineering fit.","description_format":"text","description_chars":5110,"description_truncated":false,"requirements":{"experience_years_min":null,"management_years_min":null,"team_size_min":null,"manages_managers":false,"education":null,"security_clearance":false,"languages":[]},"benefits":[],"hiring_locations":[],"hiring_excludes":[],"relocation_offered":false,"industries":["Manufacturing","Natural Resources","Industrial Machinery","Oil & Gas"],"lifecycle":[{"event":"open","at":"2026-08-13T06:43:49Z"},{"event":"open","at":"2026-09-08T12:10:24Z"},{"event":"open","at":"2026-09-11T10:01:41Z"},{"event":"6","at":"2026-09-14T06:29:35Z"},{"event":"close","at":"2026-09-14T10:07:32Z"},{"event":"restore","at":"2026-09-14T22:45:46Z"},{"event":"6","at":"2026-09-17T06:29:35Z"},{"event":"6","at":"2026-09-20T06:29:35Z"},{"event":"6","at":"2026-09-23T06:29:35Z"},{"event":"6","at":"2026-09-26T06:29:35Z"},{"event":"6","at":"2026-09-29T19:32:20Z"}],"visa":[],"liveness":{"score":27,"band":"fade","label":"Fading","p_open":1,"p_active":0.3,"p_room":0.9,"age_days":25,"expected_fill_days":42,"reasons":["conf:19","repost:6","velocity","ghost","win:mid"],"computed_at":"2026-10-25T05:49:26Z"},"pay":{"stated_usd_annual":49740,"is_top_pay":false},"html_url":"https://alion.io/job/transmashgaztoken-senior-python-engineer-payments-ledger-processor-integrations","json_url":"https://alion.io/job/transmashgaztoken-senior-python-engineer-payments-ledger-processor-integrations.json","meta":{"generated_at":"2026-10-25T06:03:56Z","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":8307,"day_limit":null,"remaining_today":null,"minute_limit":300,"resets_at":"2026-10-26T00:00:00Z"}},"offers":[{"id":"company.slices","title":"One company in depth, by slice","status":"live","price":{"credits":0.02,"usd":0.002,"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":1850},"rest":"https://alion.io/mcp/rest/get_company?id=1850"},"human":"https://alion.io/catalog?offer=company.slices&for=job%2Ftransmashgaztoken-senior-python-engineer-payments-ledger-processor-integrations"},{"id":"market.stats","title":"A market slice: pay, demand and time to fill","status":"live","price":{"credits":1,"usd":0.1},"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%2Ftransmashgaztoken-senior-python-engineer-payments-ledger-processor-integrations"},{"id":"job.search","title":"Open jobs by role, technology, place, pay and visa","status":"live","price":{"credits":0.02,"usd":0.002},"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%2Ftransmashgaztoken-senior-python-engineer-payments-ledger-processor-integrations"},{"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/transmashgaztoken-senior-python-engineer-payments-ledger-processor-integrations\", \"note\": \"what you need it for\"}"},"human":"https://alion.io/catalog?offer=company.verify&for=job%2Ftransmashgaztoken-senior-python-engineer-payments-ledger-processor-integrations"}]}