TGViewer
ITKatya: культурные паттерны в IT ITKatya: культурные паттерны в IT @valuegoalsddd · 1.77K subscribers
Post #771 434
Функции-мутанты: рассмотрим на практике

Теория была вот 👉 тут

Продолжим «раскручивать» дубликаты!

KYC: поиск + запрет регистрации нового аккаунта

Нашли совпадение по имени, дате рождения и частично документу → запретили создание нового аккаунта или подклеили аккаунты друг к другу.

При запрете:
— продуктовое ограничение пользователей: я не могу на tel_1 иметь один кабинет под один вид деятельности, а на tel_2 - под другой
— версии поиска будут меняться, значит будут те, кого «незаконно» не пропустили или кого «зря» пропустили

При склеивании:
— к новому пользователю «переезжают» старые ограничения
— флаги и доступы наследуются
— история операций смешивается

Везде:
1️⃣ В аудите невозможно понять, где была ошибка.
2️⃣ Система «оптимизировала», но потеряла управляемость.

Платежи: поиск + дедупликация транзакций

Похожие платежи → «это дубликат» → один отменяем.

А если:
— клиент реально платит дважды (представьте, как бесит, когда терминал продает ток по одному билетику, а у вас одна карточка с собой (Apple pay не работает в стране), а банк отбивает как дубликат)
— автосписание и ручной платеж совпали
— разные мерчанты с похожими атрибутами

Ну и самое интересное: нахождение дубликата до проведения платежа и после его проведения базируется на одних и тех же проверках, но вызывает абсолютно различные действия!
А вы уже вмешались в финансовую операцию на основании вероятности.

Уползем с уровня процесса на уровень реализации.
Для примера про KYC удобно запрятать поиск дубликатов на уровень Conplience платформы и результаты поиска: с кем и на сколько совпало и по каким параметрам и по какой версии алгоритма хранить в одной табличке. Но, если дубликаты понадобятся для внешнего к платформе сервиса — выдать API, с методом который ищет, по переданным снаружи данным, но не сохраняет результат (пример, когда надо: у вас есть мерчант, который хочет понят объем пакета, собираемого с пользователя по одному документу и номеру телефона).

💬 Стало ли на примерах понятнее?
Telegram ITKatya: культурные паттерны в IT «Возьму Найду и не отдам…» Про протекание домена говорят много. Но есть вещь менее очевидная — и гораздо более коварная: размытие границ функций. Не домен протек. Протекла функция. Давайте продолжим с дубликатами. Что же такое поиск дубликатов? Поиск —…
  • 👍 3
  • ❤ 2
More from @valuegoalsddd
  1. Aug 4, 2026Последние несколько дней читаю книгу про коллективную и личную вину, геройство и молчание…
  2. Jul 30, 2026Ладно, раз уж последние дни мы снова говорим про языки и нейминг, то хочу зайти немного с…
  3. Jul 29, 2026У кого какие романтические вечера или сцены из супружеской жизни 👩‍❤️‍👨 Легли вчера с му…
  4. Jul 29, 2026Нейминг — это не про красоту. Иногда это про очень дорогие баги. Один из моих любимых прим…
  5. Jul 26, 2026Ну а вот сами дизайны! И если вам лень лезть и голосовать или у вас нет возможности прогол…
  6. Jul 26, 2026Нуууууу... Возвращаться после затяжного отсутвия сложно, но попробую! Начнем с простой нов…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →