Pull to refresh
32K+
23
Sergey Proshchaev@sproshchaev

Tech Lead | Java | Kotlin developer

67
Rating
59
Subscribers
Send message

Платёж списывается дважды. Найдите причину в коде, который прошёл ревью

Level of difficultyMedium
Reading time28 min
Reach and readers9.9K

Платёжный сервис прошёл ревью, тесты зелёные, в базе один успешный платёж — а с карты списали деньги дважды. Причём в двух инцидентах к дублю привели разные сценарии. Разбираемся по коду и логам, откуда взялись повторные списания и как построить идемпотентность, которая закрывает оба случая.

Проверить решение

Как настроить параллельное согласование договоров в Битрикс24 и не получить зависший процесс

Level of difficultyMedium
Reading time22 min
Reach and readers5.1K

Параллельные ветки могут сократить путь договора вдвое, но одна ошибка в логике слияния — и процесс останется «в работе», хотя согласовывать уже некому. Разберём маршрут от запуска веток до итогового решения и покажем, как обработать отказы, таймауты и повторные раунды так, чтобы договор действительно дошёл до конца.

Настроить процесс

Kafka гарантирует порядок? Разбираем 3 инцидента с Outbox

Level of difficultyMedium
Reading time22 min
Reach and readers5.2K

Один ключ на все события заказа — и кажется, что порядок гарантирован. А потом клиенту приходит «Ваш заказ собран» раньше, чем «Оплата получена», витрина откатывает статус назад, а после планового перезапуска одно событие пропадает навсегда.

В статье разбираем три таких инцидента из одной системы на transactional outbox, PostgreSQL и Kafka 4.2. Попробуйте сами определить, где сломалось: в источнике, в relay, в продюсере или у потребителя.

Читать далее

Переход на Java 27: гайд по GC, флагам и памяти в контейнере

Level of difficultyHard
Reading time14 min
Reach and readers10K

Переход на новый JDK может изменить поведение сервиса даже без изменений в коде: JVM по-другому выбирает GC, расходует память и обрабатывает старые флаги запуска.

В статье разбираем, что меняет Java 27 внутри рантайма и как проверить готовность сервисов к обновлению.

Изучить изменения

Почему инференс LLM становится дорогим и как снизить расходы на GPU без покупки новых карт

Level of difficultyHard
Reading time18 min
Reach and readers7.9K

Высокая загрузка GPU ещё не означает, что инфраструктуре не хватает ресурсов. В продакшене значительная часть времени может уходить на повторный расчёт одинаковых промптов, неэффективное распределение кэша или неверные параметры сервинга.

Разберём шесть шагов оптимизации инференса LLM на стеке vLLM и Kubernetes: от поиска узкого места и расчёта KV‑кэша до настройки prefix caching и проверки квантования.

Читать гайд

Переход на 1С 8.5 за выходные: найдёте 3 причины сбоя?

Level of difficultyMedium
Reading time12 min
Reach and readers11K

Переход на новую версию 1С часто выглядит проще, чем оказывается на практике: обновление платформы, новый интерфейс и изменения в окружении могут одновременно повлиять на пользователей, разработку и процессы доставки.

В статье разобрали сценарий миграции на 1С:Предприятие 8.5, где несколько незаметных проблем привели к сбоям после выхода в прод, и показано, какие технические и процессные решения помогают избежать таких ситуаций.

Читать разбор

Оценка AI‑агентов: 7 ошибок, из‑за которых тесты врут

Level of difficultyHard
Reading time15 min
Reach and readers7.5K

Зелёный статус eval‑тестов ещё не гарантирует, что AI‑агент работает корректно: он может выдавать правильный ответ, но выполнять неверные действия или не выполнять их вовсе.

В статье разбираем семь ошибок оценки AI‑агентов и показываем, какие подходы помогают измерять реальное качество системы.

Разобрать ошибки

Open‑weight LLM догнали закрытые? Проверка на продакшене

Level of difficultyHard
Reading time21 min
Reach and readers5.5K

Открытые LLM уже близки к закрытым моделям по многим бенчмаркам, но в продакшене разрыв проявляется в качестве, стоимости и эксплуатации. В статье разбирается, когда open‑weight модели действительно подходят для задач бизнеса и какие ограничения важно учитывать при внедрении.

Узнать детали

Запустить LLM локально: что считать до покупки видеокарты?

Level of difficultyHard
Reading time13 min
Reach and readers9.9K

Мощная видеокарта не всегда означает быстрый локальный запуск LLM. Разбираемся, почему GPU может простаивать, как на производительность влияют память, KV‑кэш и движок инференса, и что учитывать перед сборкой собственного стенда.

Разобраться в LLM

Как проверить ML‑модель перед продом и избежать утечки данных в scikit‑learn

Level of difficultyMedium
Reading time18 min
Reach and readers8.3K

Высокая метрика на кросс‑валидации ещё не означает, что модель покажет такой же результат после запуска. Разрыв между офлайном и продакшеном часто появляется из‑за ошибок в подготовке данных, неправильного разбиения выборки или признаков, которые недоступны в момент предсказания.

Разберём практический подход к проверке качества ML‑модели: от временного сплита и настройки Pipeline до подбора порога решения и подготовки артефакта для инференса.

Проверить модель

Как пересобрать метрики команды после внедрения AI‑агентов без ложного роста velocity

Level of difficultyMedium
Reading time15 min
Reach and readers6.4K

После внедрения AI‑агентов дашборд разработки может показать красивую картину: больше PR, выше velocity, быстрее закрываются задачи. Но за этими цифрами иногда скрываются новые узкие места — перегруженное ревью, рост переделок и снижение прозрачности процесса.

Разберём практический маршрут, как за четыре недели настроить атрибуцию AI‑изменений, сегментацию по риску и метрики полного цикла поставки, чтобы оценивать реальный эффект от использования агентов.

Открыть гайд

LLM зацикливается: как найти причину, не трогая параметры?

Level of difficultyHard
Reading time14 min
Reach and readers10K

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

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

Разобрать кейс

ML‑датасет для Data Scientist: практический гайд по проверке качества данных перед обучением модели

Level of difficultyMedium
Reading time14 min
Reach and readers8.8K

Даже хороший алгоритм не спасёт модель, если признаки приходят с нарушенной семантикой или содержат информацию из будущего. Одна лишняя колонка может поднять метрику на тестах и полностью исчезнуть в проде.

Разберём рабочий подход к валидации датасета: от контрактов схемы и проверки таргета до point‑in‑time корректности и фиксации артефактов, чтобы результаты обучения можно было воспроизвести и объяснить.

Разобрать проверки

Как убрать логин из UI‑тестов на Java без лишних секунд и флака

Level of difficultyMedium
Reading time15 min
Reach and readers8.5K

Когда 180 тестов каждый раз проходят форму входа, авторизация начинает съедать десятки минут и ломаться на рейт‑лимитах, SSO и редиректах. Разберём рабочую схему: получить токен по API, закэшировать состояние и передать его браузеру до старта приложения.

Читать гайд

Тестовое задание на аналитика DWH: 4 задачи с разбором

Level of difficultyHard
Reading time21 min
Reach and readers12K

В статье разбираем реальное тестовое задание на позицию аналитика DWH: четыре коротких SQL-запроса. Все синтаксически корректны, все дают верный результат на контрольных данных. И в каждом спрятана предпосылка, при нарушении которой цифры в витрине становятся неверными — без ошибок, без предупреждений, просто другие числа в отчёте

Найти ошибки

AI‑агент снёс прод и отчитался, что всё в порядке

Level of difficultyMedium
Reading time12 min
Reach and readers11K

AI‑агенты уже ускоряют написание кода, но вместе с этим растёт нагрузка на ревью, усложняется контроль изменений и появляется новый класс рисков — вплоть до доступа агента к продакшену. Разбираемся на реальных инцидентах и исследованиях, как выстроить работу с агентами через человеческие гейты, ограничения прав и метрики, по которым можно понять, стало ли команде действительно лучше.

Изучить подход

Код‑ревью в эпоху ИИ: 7 ошибок, ведущих к инцидентам

Level of difficultyMedium
Reading time17 min
Reach and readers7.3K

ИИ уже умеет за минуты генерировать сотни строк кода, но скорость ревью от этого не выросла. Разбираем семь ошибок, из‑за которых AI Code Review пропускает реальные дефекты, создаёт ложное чувство безопасности и постепенно превращает проверку кода в формальность.

Разобрать ошибки

Цена за успешный результат: почему дешёвая модель может обойтись дороже дорогой

Level of difficultyMedium
Reading time15 min
Reach and readers7.4K

Дешёвая LLM легко превращается в дорогую, если агент чаще ошибается, уходит в повторные прогоны и требует внимания инженера.

В статье разберём, как считать стоимость закрытой задачи, учитывать кэш и человеко‑время и почему прайс за миллион токенов почти ничего не говорит об итоговой экономике.

Посчитать стоимость

DS‑собеседование в 2026 году: 6 ошибок, из‑за которых отказывают даже сильным кандидатам

Level of difficultyMedium
Reading time13 min
Reach and readers7.6K

На DS/ML‑собеседовании можно уверенно пройти теорию и всё равно получить отказ. Часто решение принимается позже — когда становится видно, умеет ли кандидат работать с данными, продакшеном и реальными ограничениями. Разбираем шесть ошибок, на которых сыпятся даже сильные специалисты.

Читать далее

Как провести gap‑анализ казначейства в 1С и не заложить лишние доработки в бюджет

Level of difficultyMedium
Reading time13 min
Reach and readers6.6K

Список требований к казначейству легко превращается в десятки строк со статусом «закрывается частично». Для бюджета такая оценка почти бесполезна: за одним «частично» может скрываться настройка на пару дней, за другим — отдельная интеграция с банком.

Разберём рабочий способ классифицировать эти разрывы, проверить спорные требования на данных и понять, что действительно придётся дорабатывать в конкретной конфигурации 1С.

Читать гайд

Information

Rating
93-rd
Location
Россия
Registered
Activity

Specialization

Бэкенд разработчик
Ведущий
Java
Kotlin