TGViewer
(Не)Системная аналитика by Андрей Царев (Не)Системная аналитика by Андрей Царев @notsystemanalysis · 7.57K subscribers
Post #452 4.88K
Айтиха на самом деле очень маленькая

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

3 года назад я работал в «Банки.ру». Один из лучших опытов: крутая команда, крутые технические решения - до сих пор вспоминаю с теплом на душе. Много раз рассказывал об этом в постах и видосах, поэтому не буду останавливаться надолго. Ребята, если вы это читаете, передаю привет и спасибо вам.

Одной из последних задач, которые я решал, была разработка API-контракта для приёма статусов по заявкам. Если не вдаваться в дебри, то взаимодействие с партнёрами происходило через polling, когда ты опрашиваешь принимающую сторону, чтобы понять статус выдачи. А затем мы реализовали callback - то есть принимающая сторона сама возвращает статус, когда он изменяется. Polling работал, но создавал лишнюю нагрузку и задержки. Callback выглядел очевидным решением, но сразу встал вопрос: как сделать контракт, который не развалится от 10 разных партнёров.

Цель - создать универсальный контракт, который будут использовать все желающие партнёры. То есть не перегрузить его, при этом не упустить ничего важного. Я сразу же выкинул все поля, без которых можно жить. Не пытался предугадать будущее, то есть закладывать возможности, которые могут никогда не понадобиться. Правильно ли это? Вопрос спорный, ведь если очень сильно упростить, то придётся постоянно допиливать. А если сделать супер универсально, то поддержка франкенштейна пойдёт через боль.

Проходит 3 года, я меняю несколько работодателей и попадаю к текущему. Узнаю, что одной из последних задач в том году была интеграция с банками. Ради интереса залезаю посмотреть, как там всё работает. И каково же было моё удивление, когда в методе отправки статуса по заявке я увидел тот самый URL, который спроектировал в то время! А в качестве ответственных лиц со стороны банков были коллеги из моей команды.

Недолго думая пишу одному в телегу - и да, спроектированный мной сервис всё ещё работает! Правда, его уже миллион раз усложнили, и по факту от «моего» там осталось только название, но сам факт. И это, кстати, нормально, ведь ни один контракт не создаётся на века. Появляются новые задачи, которые нужно закрывать, а с ними - и дополнительная логика.

Необычное чувство, когда видишь результат своей работы с другой стороны. И понимаешь, что айтиха-то на самом деле крошечная. А твои решения могут нагнать тебя спустя столько лет.
  • ❤ 64
  • 🔥 33
  • 🐳 3
  • 🍌 1
More from @notsystemanalysis
  1. Sep 21, 2026Цикл работы агента «Напиши мне в сваггере три метода», попросил я как-то агента, который в…
  2. Sep 18, 2026Друзья, нужна ваша помощь У нашего ученика Вадима нашли рак ободочной кишки в 19 лет. Несм…
  3. Sep 18, 2026Почему тебе не нужно перегружать контекст лишней инфой Ситуация: работаешь себе с нейронко…
  4. Sep 16, 2026Обучение с куратором в октябре 5 октября стартует очередной групповой поток с куратором, в…
  5. Sep 15, 2026Покидайте курсы по ИИ для чайников (не себе, честное слово, подруга попросила)
  6. Sep 14, 2026Агент vs Чат «Я составил реально грамотный промпт, закинул его в чат и получил результат.…
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 →