Fintech-инжиниринг

Fintech-инжиниринг для команд платежей, комплаенса, on-chain и финансовых вычислений.

Стоимость должна двигаться с контролями; идентичность должна быть защитимой; интеграции должны пережить смену поставщика или аудит. Записи ниже делят эту работу так, как она реально ломается в продакшене: платёжные рельсы с риск-аналитикой, on-chain системы правил и солверы ценообразования, онбординг уровня комплаенса, обвязка open banking и операции со стабильными активами с моделированием казначейства — каждая со своим профилем риска.

Посмотреть области компетенцийОчертить технический проект
Фиксированная сметаОтвет в течение 1 рабочего дняЛюбой стек или языкВ ЕС · готовность к GDPR
listener.ts
import { createPublicClient, webSocket, parseAbiItem } from 'viem';const client = createPublicClient({ transport: webSocket(RPC_WS) });/** * Watches for settlement events. The hard part of chain integration is not * subscribing — it is that a block you already acted on can be reorganised out * from under you, and that your node will drop the socket at 03:00. */client.watchEvent({ address: SETTLEMENT_CONTRACT, event: parseAbiItem('event Settled(bytes32 indexed ref, address payer, uint256 amount)'), onLogs: async (logs) => { for (const log of logs) { // Never act on one confirmation. Record it, and let the confirmation // counter below decide when it is safe to treat as final. await db.settlement.upsert({ where: { txHash: log.transactionHash }, create: { ref: log.args.ref, amountMinor: log.args.amount, confirmations: 1 }, update: { confirmations: { increment: 1 }, removed: false }, }); } }, // A reorg replays logs with removed: true. Anything already released has to be // walked back, which is why release is a separate step from observation. onError: (error) => alerts.page('chain-listener', error),});// The socket will drop. Reconnect, then backfill the gap from the last block we// definitely processed — resubscribing alone loses everything in between.client.onDisconnect(async () => { const from = await db.cursor.get('settlement'); await backfill(from, await client.getBlockNumber());});
  • confirmations before finality
  • reorg-aware
  • backfills after a dropped socket
Reading a chain is easy for about a week. What makes it production software is the last two blocks: reorgs that undo a settlement you already acted on, and a websocket that drops overnight and quietly stops delivering events.

Какой слой ломается первым при масштабировании?

Платежи и риск, on-chain контракты и ценообразование, автоматизация комплаенса, банковские фиды и программируемые расчёты — каждый ломается по-своему и несёт разные грани поставщиков и регулирования.

FINTECH / ПЛАТЁЖНАЯ ИНФРАСТРУКТУРА И РИСК-АНАЛИТИКА

Платёжная инфраструктура и риск-аналитика

Платёжные потоки, маршрутизация, сверка, риск-моделирование Монте-Карло и финансовые пайплайны данных.

FINTECH / СМАРТ-КОНТРАКТЫ И СОЛВЕРЫ ЦЕНООБРАЗОВАНИЯ

Смарт-контракты и солверы ценообразования

Архитектура смарт-контрактов, on-chain логика, заказные солверы ценообразования на C++/Python и off-chain интеграция.

FINTECH / KYC AML АВТОМАТИЗАЦИЯ

KYC/AML-автоматизация

Автоматизация процессов вокруг онбординга, работы с доказательствами, движения дел и операций комплаенса.

FINTECH / ИНТЕГРАЦИЯ OPEN BANKING

Интеграция open banking

Работа над интеграцией банковских API вокруг абстракции поставщиков, логики фолбэка и поддерживаемости.

FINTECH / ИНФРАСТРУКТУРА СТЕЙБЛКОИНОВ

Инфраструктура стейблкоинов

Техническая работа вокруг расчётов по стейблкоинам, слоёв контроля, казначейских процессов и интеграций.