11 сентября 2026 · Томск · воркшоп «Города IT»

Расследование, которое можно повторить

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

Для инженеров18–20 участниковКоманды по 3–560% времени — практика
Забронировать место
14 990 ₽билет на конференцию 12–13 сентября включён
diagnostics/mtu_blackhole.rule
# свидетельство: то, что произошло
when tcp.retransmit_rate > 0.05 for 30s
# свидетельство: то, чего НЕ произошло
and icmp.frag_needed absent within 30s
then verdict = "path MTU blackhole"
# правило обязано молчать здесь
not_when wifi.channel_utilization > 0.7
# чего это НЕ доказывает
limits: "не указывает на конкретный узел"
Вот что вы напишете. 10–20 строк, синтаксис — за пять минут.
проблема

Пять инженеров смотрят одни данные
и выдают пять версий

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

Тикет «не воспроизводится» висит третий месяц. Тест падает раз в неделю — команда жмёт Retry и идёт дальше.
Сетевики винят эфир, разработчики — буферы ядра. Спор тянется неделями и повторяется каждый релиз.
Пороги живут в головах: «задержка большая», «часто ретраится». У каждого своё «большая».
Алерт сработал снова. Все знают, что он врёт, но выключить страшно.
Постмортем написан и одобрен. Через полгода те же пункты открыты, тот же сбой повторился.
Инженер, который один понимал эту подсистему, уволился. Знание ушло с ним.

Если узнали хотя бы два пункта — это ваш воркшоп.

84%падений тестов в CI Google — не настоящие баги, а нестабильность
16%всех тестов Google из 4,2 млн ведут себя нестабильно
73%команд информационной безопасности называют ложные срабатывания проблемой номер один

Источники: Google, «The State of Continuous Integration Testing» (84% и 16%); SANS Detection & Response Survey 2025 (73%).

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

аудитория

Для кого воркшоп

Backend-разработчикамКоторые ловят баги на стыке сервисов и не могут доказать, где именно он живёт
Техлидам и архитекторамКоторые отвечают не только за то, чтобы сбой починили, но и за то, чтобы он не повторился
QA-инженерамКоторые воюют с нестабильными тестами и тикетами «не воспроизводится»
Эксплуатации и SREКто первым видит инцидент и должен быстро понять, чей он и куда эскалировать
Инженерам распределённых системГде отказ почти никогда не в одном месте, а на стыке нескольких условий
Системным аналитикамЕсли описываете требования к диагностике, мониторингу и правилам оповещения
программа

Семь блоков по 40–45 минут

Каждый блок: короткое объяснение → практика в команде → разбор результата. Разбор идёт на базе сервиса для анализа сетевых проблем — он используется как пример архитектурных решений, а не как предмет изучения.

блок 01 · 40–45 минКак проводить инженерное расследование

Разбираем: чем наблюдение отличается от вывода; как формулировать проверяемую гипотезу; почему совпадение во времени не доказывает причину; как работать с неполными данными и искать альтернативные объяснения.

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

Результат: карта свидетельств и гипотез.

блок 02 · 40–45 минКак превратить экспертное знание в правило

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

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

Результат: паспорт диагностического правила.

блок 03 · 40–45 минКак спроектировать границы между компонентами

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

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

Результат: схема взаимодействия компонентов и перечень контрактов.

блок 04 · 40–45 минКак переносить правила без потери поведения

Разбираем: сравнительные тесты старого и нового обработчиков; эталонные наборы; искусственные и реальные данные; категории расхождений; почему исчезнувший результат опасно считать улучшением.

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

Результат: таблица решений по расхождениям и перечень допустимых изменений.

блок 05 · 40–45 минКак строить убедительную проверку качества

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

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

Результат: минимальная стратегия проверки правила.

блок 06 · 40–45 минПеренос метода в собственный проект

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

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

блок 07 · 40–45 минПредставление решений и разбор

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

Разбор: остальные участники выступают независимыми проверяющими и задают вопросы по чек-листу.

отличия

Чем это отличается от того,
что вы уже делаете

Хранить правила в репозитории и тестировать алерты — уже норма. Мы этого не изобретали. Отличие в трёх вещах.

01
Отсутствие события — улика

Работаем с тем, чего не произошло, так же строго. В сложных сбоях это и есть ключ.

02
Правило обязано молчать

Половина практики — не «сработало на аварии», а «не сработало на похожей». Негативные тесты с первой минуты.

03
Явная декларация границ

Раздел «чего правило НЕ доказывает» — обязательная часть артефакта. Защита от главной ошибки: принять корреляцию за доказательство.

формат

Как устроен день

Семь блоков по 40–45 минут. В каждом ведущий коротко объясняет метод, команда работает руками, потом общий разбор результата.

Работаете не в одиночку: группа делится на команды по 3–5 человек. Внутри команды распределяются роли — кто держит границы доказательств, кто пишет правило, кто ищет ложные срабатывания, кто представляет результат. Финал дня — короткие питчи и вопросы от соседних команд.

18–20 человекмаксимум 24
3–5 человекв команде
60%+времени — практика
артефакты

Что команда соберёт

Всё это делается на своей задаче в шестом блоке и защищается в седьмом.

Карта свидетельств — что наблюдали и что не пришло
Возможные объяснения с логикой отбора
Формализованное правило в исполняемом виде
Набор тестов — где вердикт есть и где обязан молчать
Критерии выпуска — когда правило можно применять
Список ограничений — чего правило не доказывает
ведущий

Кто ведёт

Ведущий воркшопа

Александр Лошкарев

Техлид Eltex · 15+ лет в телекоме

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

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

Был тренером по телеком-технологиям в Nokia и Huawei: учил инженеров искать причину, а не назначать виноватого. Преподаёт в СибГУТИ, выступает на конференциях.

вопросы

Коротко о важном

Придётся писать код?

Не прикладной. Правила на 10–20 строк, по форме ближе к YAML. Знание языка не требуется.

Что взять с собой?

Ноутбук, можно один на команду. Интернет и софт не нужны. Полезно описание своей нерешённой проблемы.

Можно принести свой инцидент?

Да. Без реальных логов и имён клиентов — только описание симптомов. Если своего нет, ведущий выдаст кейс.

Это только про сети?

Нет. В кейсах отказ микросервиса, потеря записей в ETL, подбор паролей, нарушение SLA. Методика работает везде, где виновника ищут спором.

Вы утверждаете, что причина одна?

Нет. Отказ обычно требует нескольких совпавших условий. Правило формулируется не как «виноват X», а как проверяемое утверждение — и что оно не доказывает.

Чем это отличается от AI-инструментов?

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

участие

Расследование, которое переживёт
увольнение автора

11 сентября 2026, Томск. Группа 18–20 человек, максимум 24.

Полный день практики в командахРазбор после каждого блока и обратная связь ведущего.
Билет на конференцию «Город IT Pro» 12–13 сентябряОтдельно стоит от 4 990 ₽ и уже включён в стоимость.
Четыре рабочих шаблонаКарта свидетельств, спецификация правила, матрица тестов, критерии выпуска.
Пять разобранных кейсовgRPC, безопасность, MTU, потеря данных в очереди, Wi-Fi против буферов ядра.
Чек-лист рецензента: 20 вопросовПлюс каталог типовых ошибок формализации.
Справочник по языку правилИ готовая структура папки diagnostics/ для переноса к себе.