Олег Букатчук · надёжность и инциденты
20 subscribers
78 photos
53 links
DevOps/SRE, 19 лет в эксплуатации: cian.ru, aliexpress.ru, mos.ru — каждый 1 млн+ пользователей в день.
Как находить причину аварии, а не тушить симптом. И как сделать, чтобы это умела команда, а не один человек.
Иногда про жизнь и музыку.
Download Telegram
Теперь мои 18 подписчиков знают, как я выгляжу🤣
🔥1
Нашел очень крутой ресурс с уроками по AI:
AI Engineering from Scratch
503 урока. 20 этапов. Каждый алгоритм построен на основе чистых математических вычислений, прежде чем будет импортирован какой-либо фреймворк.
https://aiengineeringfromscratch.com/
Прежде, чем решать когото спасать. Подумайте хорошенько. Потому что вероятность того, что вас утащат в низ гораздо выше, чем вероятность того, что у вас получиться вытащить спасаемого наверх.


©️Жизнь.
❤2
Когда встерчаешь препятствие не жалей об этом, потому что это открывает большие возможности.


(из серала про компанию WeWork).
🔥1
Channel name was changed to «Олег Букатчук · надёжность и инциденты»
Меня зовут Олег Букатчук, я DevOps/SRE-инженер. Девятнадцать лет в
эксплуатации: держал инфраструктуру cian.ru, aliexpress.ru и mos.ru —
каждый из этих проектов обслуживает больше миллиона уникальных
пользователей в день. Это места, где простой считается не в неудобстве,
а в деньгах, и считается сразу.

Этот канал — про одну мысль, которая мне кажется важнее остальных.

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

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

Что здесь будет:

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

Проверить меня можно, не спрашивая разрешения: код и проекты —
github.com/olegbukatchuk, а как я думаю и разговариваю — в интервью
«Как хорошо больше не писать код: куда уходит айтишность» на «Мы
обречены»: https://youtu.be/UruvjXoRFZw?si=ADRNDOQc5jFClvuv&t=556
Десять минут с нужного места.

Чего здесь не будет: новостей о релизах, пересказов чужих статей,
вакансий и подборок «10 команд Linux, которые вы не знали».
Олег Букатчук · надёжность и инциденты pinned «Меня зовут Олег Букатчук, я DevOps/SRE-инженер. Девятнадцать лет в эксплуатации: держал инфраструктуру cian.ru, aliexpress.ru и mos.ru — каждый из этих проектов обслуживает больше миллиона уникальных пользователей в день. Это места, где простой считается не…»
Очень приятная новость в субботний вечер! 😁
Я уже честно говоря и подзабыл, что подал статью на модерацию.
👍2
А вот и сама статья...

Все компоненты зелёные, а продакшн лежит: разбор аварии, которую нашли в git
https://habr.com/ru/articles/1078876/
🔥1
Kaiban: канбан-доска, где в каждой колонке сидит ИИ-агент

Открытый проект, которому две недели. Задача идёт по шести колонкам: продакт, бизнес-аналитик, системный аналитик, разработчик, QA, Auto QA. В каждой работает отдельный агент, а дальше карточку пропускает только человек — кнопкой Approve.

Что в коде сделано хорошо:
— у каждого прогона есть бюджет: 40 шагов модели, 80 вызовов инструментов, 200 000 токенов, 5 долларов, 30 минут;
— этапу можно задать обязательные поля результата, без них апрув недоступен;
— колонка может требовать непустой diff: отчёт «всё реализовано» без изменённых строк не пройдёт;
— на каждый прогон сохраняются модель, хеш промпта, токены и причина остановки.

Что стоит знать до запуска:
— ветка main на 4 октября не собирается, нужен предыдущий коммит;
— агенту-разработчику из коробки нечем менять файлы: он коммитит и пушит, но не пишет код;
— токены интеграций лежат в базе открытым текстом, у API нет авторизации.

Разбор по исходному коду, с командами для запуска:
https://bukatchuk.ru/blog/2026/10/04/kaiban-kanban-doska-s-ii-agentami/
👍1
Всем, привет! Я давно планировал это сделать и вот наконец-то у меня дошли руки 😁

У меня на сайте появился полный каталог моей музыкальной коллекции винила 🎵

На сайте открыт раздел «Винил» — коллекция пластинок с отдельной страницей на каждое издание. Сейчас в каталоге 300 релизов: 480 пластинок, 134 лейбла, альбомы с 1973 по 2026 год.

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

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

Больше всего пластинок у Schiller — 20. Дальше Moby — 16, The Prodigy — 14, Scorpions — 12, Daft Punk — 11, по десять у Jean-Michel Jarre, The Chemical Brothers и Metallica. Отдельно собраны сборники и саундтреки — 44 релиза. Рядом с электроникой стоят русский рок, хип-хоп, метал и классика.

https://bukatchuk.ru/vinyl/
🔥1
Dashi PPT: skill для ИИ-агента, который собирает презентацию из документа

Dashi PPT — открытый проект с девятью тысячами звёзд. Агент получает документ и отдаёт HTML-презентацию, в которой у каждого слайда своя панель настроек. Модель не рисует слайды, а заполняет текстом готовые макеты; вёрстку, проверки и экспорт делает обычный код.

Что подтверждается исходниками:
- 12 тем, 1020 макетов и 8576 элементов управления — цифры сходятся с каталогом макетов;
- на каждую страницу генерируются четыре варианта: три шаблонных и один авторский;
- правки сохраняются прямо в файл презентации через локальный сервер;
- PPTX собирается из живой страницы: текст остаётся текстом, сложная графика уходит картинкой.

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

О чём стоит знать заранее: движок экспорта и компоненты тем закрыты, PDF выходит без текста, зависимости по умолчанию берутся с китайского зеркала npm.

https://bukatchuk.ru/blog/2026/10/06/dashi-ppt-skill-prezentaciya-iz-dokumenta/
👍1
OpsDeck: терминал, Kubernetes, базы и KeePass в одном окне — разбор по исходникам

OpsDeck — настольное приложение на Rust и Tauri 2, которое собирает в одно окно терминал, Kubernetes, базы данных, Grafana с ArgoCD, алерты, KeePass и SSH. Проекту две недели, а доступ он просит ко всему ценному. Я прочитал исходники версии 0.6.1, чтобы понять, можно ли ему доверять.

Что сделано хорошо:
— своё хранилище kubeconfig, ~/.kube/config не трогается
— встроенные веб-панели не имеют доступа к командам приложения
— автологин привязан к адресу коннектора
— обновления подписаны, телеметрии нет

Что стоит знать заранее:
— режим «только чтение» закрывает кнопки, но не kubectl в соседней вкладке
— TLS-режим require шифрует, но не проверяет сертификат
— два локальных порта открыты с первого запуска
— движок локальной модели проверяется слабее, чем сами модели
— один автор и 8 релизов за 11 дней

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

https://bukatchuk.ru/blog/2026/10/09/opsdeck-rabochaya-panel-devops-inzhenera/
👏1
Harness: один набор правил Claude Code для всех проектов и серверов

Я открыл код harness — обвязки для Claude Code. Это каталог, из которого запускается агент: проекты лежат внутри обычными клонами, и в каждом он работает по одним правилам. Версия 1.0.0, лицензия MIT.

Что умеет:
- коммит, push и PR от имени владельца: хук отклоняет чужого автора и Co-Authored-By
- реестр проектов: добавить по ссылке, склонировать и обновить все разом, таблица состояния клонов
- реестр серверов: проверка входа по SSH-ключу, чтение свободно, изменения только после подтверждения
- связи «репозиторий → сервер → сервис»: одна команда показывает, откуда настраивается сервер
- удаление проекта, сервера и связи с резервной копией реестра; сброс сначала печатает план
- Docker для тестов: всё запущенное помечается и убирается одной командой
- интеграции с Plane, n8n, GitGuardian и Yandex Cloud
- диагностика окружения и обновление прямо в сессии
- русский и английский, переключение одной командой

Внутри 7 правил, 14 skills и один bash-скрипт.

В статье — как это устроено и какие у проекта ограничения.

https://bukatchuk.ru/blog/2026/10/10/harness-odin-nabor-pravil-claude-code-dlya-vseh-proektov/
❤1
Pake: сайт в настольное приложение одной командой

Pake заворачивает любой сайт в приложение на Rust и Tauri 2. Вместо своего Chromium используется системный webview, поэтому пакеты получаются лёгкими. Я прочитал исходники версии 3.17.6 и сверил обещания README с кодом и файлами релизов.

Что я нашёл:
- «Одна команда» — это компиляция Rust-проекта на твоей машине. По оценке самого CLI, первая сборка занимает 5–15 минут.
- ChatGPT из последнего релиза: .msi весит 3,6 МБ, .deb — 4,6 МБ, .dmg — 9,5 МБ. AppImage весит 76,7 МБ, потому что везёт WebKitGTK с собой.
- С V3.0.0 до V3.17.2 команды приложения мог вызывать любой HTTPS-сайт, открытый в окне. Исправили 5 октября 2026 года.
- Обновлений у собранных приложений нет: исправление доходит до пользователя только через пересборку.
- Без --icon CLI отправляет домен сайта пяти сервисам иконок, в том числе внутренний.

Вывод: для личных обёрток Pake годится, если собирать на 3.17.3 или новее и указывать иконку локальным файлом. Обёртки, установленные до октября, стоит пересобрать.

https://bukatchuk.ru/blog/2026/10/20/pake-sayt-v-nastolnoe-prilozhenie-razbor-po-ishodnikam/
👍1