Помню Ванкувер, 2005 год. Сижу над монолитом на Java в команде того самого автора книги, которую швыряют в каждого джуна. Баги, дедлайны, бессонные ночи. И ловлю себя на мысли: я перестал видеть лес за деревьями. Вернее, систему за строчками кода. Стал «исполнителем»: получил таску → закрыл → получил следующую. Творчество? Инновации? «Да кому это надо, когда прод падает!».

Так вот, брат: это смерть. Ты либо растешь, либо ржавеешь. За 30 лет я выработал правила, как не дать мозгу засохнуть. И да, один мой «соавтор» из XV века шептал на ухо: «Рисуй, сомневайся, разбирай на части». Но об этом – в скриптах.

1. Твой главный враг: «Так надо». Оружие: «А почему?»

Рутина начинается, когда перестаёшь спрашивать.

  • Вместо: «Оптимизируем запрос»
    Спроси: «Почему он тормозит? Может, проблема в кривой схеме БД из 2010-го?»

  • Вместо: «Делаем фичу, как сказал продакт»
    Спроси: «Какую боль снимет пользователь? Есть ли путь проще?»

Как внедрить:

  • Каждый день задавай один "бесполезный" вопрос о системе. Пример из моего блокнота:

    «Почему лог такой уродливый? Как сделать его... красивым?»

  • Раз в неделю – «Сессия почемучек». Правило: запрещены слова «надо», «так принято». Только: «Почему?», «А что, если?», «Как это связано с...?».

Результат: Нашли root cause бага, который годами латали. Проблема была в том, что при первом открытии задач системы выгружала сначала весь список в девять миллионов записей. Сэкономили команде месяц работы и кучу железа.


2. Препарируй чужие системы, как хирург

Чтобы понять свою — сначала вскрой чужую. Иначе будешь латать симптомы вслепую.

  • Не ныряй в свой легаси сходу: Найди аналогичную систему в open source (Kafka, Kubernetes, PostgreSQL).

  • Препарируй её в скетчбуке:

    • Как течёт кровь (данные)?

    • Где нервные узлы (блокировки, буферы)?

    • Как органы давят друг на друга (конкуренция ресурсов)?

  • Укради гениальное: Автобалансировка нагрузки как кровеносная система, кеширование как лимфатические узлы, ретраи — как иммунный ответ.

  • Только потом — к своему коду: Сравни схемы. Найди где твоя «аорта» пережата (и почему в PostgreSQL это решено иначе).

Инструмент: Дешёвый блокнот + смелость вскрывать GitHub, как труп в анатомичке.
Пример: Изучение архитектуры Kafka объяснило 80% наших проблем с очередями.


3. Эксперименты или смерть. Заведи «час безумия»

«Нет времени на R&D» – отмазка бюрократа. Помни: даже Сталин в 1929 году вводил непрерывную рабочую неделю (четыре дня труда + пятый на учебу), чтобы вырваться из рутины индустриализации.

  • Выдели 10% времени на «бредовые» POC (proof of concept):

    • Мой пример: Визуализация логов как танцующих частиц. «Зачем?» – спросил коллега. А потом увидели паттерн сбоев, скрытый годами.

  • Твори «треш-кодинг»:

    • Задача: За 2 часа создать самый идиотский (но рабочий!) инструмент для боли команды.

    • Результат: Бот, превращающий Jira-таски в хокку (стресс ↓ 30%).

  • Демонстрируй провалы: Раз в месяц – «Митап провальных экспериментов». Расскажи, почему не взлетело.

Правило: Не провалил эксперимент за месяц? Мало рисковал!


4. Укради идею у других дисциплин (мое любимое)

Сильные разработчики смотрят за пределы IDE.

  • Биология: Авто-исцеление инфраструктуры как иммунитет?

  • Городское планирование: API = улицы, сервисы = районы, latency = пробки?

  • Музыка: Онбординг как симфония (от allegro к adagio)?

Как внедрить:

  • Каждый месяц читай статью из нетехнической сферы. Спроси: «Что стащить для моего кода?»

Результат: Подсмотрел у нейробиологов → event-driven уведомления адаптируются под юзера. Конверсия +15%. (чем чаще пользователь взаимодействует с чем -то в системе, тем более глубокая реклама ему приходит по теме, чем меньше - соответственно реже. как нейронные связи в его же мозгу.)


5. Не красиво = не работоспособно

Элегантность – индикатор здоровья системы.

  • Красивый код:

    • Чёткие абстракции;

    • Ритм именования;

    • Баланс гибкости и простоты.

  • Инфраструктура как сад камней: Минимум элементов – максимум смысла (Terraform infrastructure as code).

  • UX как поэзия: Экран = строфа. Лишняя кнопка = лишнее слово.

Совет: Раз в квартал «нарисуй» продукт. Углём, акварелью, на салфетке. Правое полушарие покажет дисгармонию.


Заключение:

Тридцать лет научили:

  • Любопытство – главный актив.

  • Рутина – убийца тише бага в продакшене.

  • Эксперименты – воздух.

На завтра:

  1. Купи блокнот.

  2. Нарисуй самый больной сервис. Как чертёж двигателя.

  3. Задай ему 3 вопроса: «Почему хрипит? Чего боится? Что сделает счастливым?»

  4. Запланируй один «бесполезный» эксперимент.

Через месяц:

  • Баги станут головоломками;

  • Техдолг – полем для раскопок;

  • Ты – снова почувствуешь себя инженером, а не винтиком.

P.S. Бонусом цитата бывшей: «Гибель экипажа начинается с хреново заправленной койки».

Комментарии (3)


  1. MVN63
    04.07.2025 14:43

    Отличный глоток свежего воздуха, спасибо!


  1. Zulu0
    04.07.2025 14:43

    Разделил для себя день на блоки. Утром 15 минут для планирования, в это время можно пить чай, разбирать почту и писать список задач. Потом несколько блоков по 1,5 час с перерывами. Они могут быдь, для кодинга, митингов и всего что связано с работой. В конце дня 1 час на чтение книги. Утром тоже в перерыве чтение худржественной литературы. И самое мое любимое: рисовать блок схемы проекта в drawio.

    А дома иногда рисунки от руки, карандашем

    Забыл: спасибо за пост, дополню свою практику.


  1. Dhwtj
    04.07.2025 14:43

    Одни поучения и нет примеров