Помню Ванкувер, 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 как поэзия: Экран = строфа. Лишняя кнопка = лишнее слово.
Совет: Раз в квартал «нарисуй» продукт. Углём, акварелью, на салфетке. Правое полушарие покажет дисгармонию.
Заключение:
Тридцать лет научили:
Любопытство – главный актив.
Рутина – убийца тише бага в продакшене.
Эксперименты – воздух.
На завтра:
Купи блокнот.
Нарисуй самый больной сервис. Как чертёж двигателя.
Задай ему 3 вопроса: «Почему хрипит? Чего боится? Что сделает счастливым?»
Запланируй один «бесполезный» эксперимент.
Через месяц:
Баги станут головоломками;
Техдолг – полем для раскопок;
Ты – снова почувствуешь себя инженером, а не винтиком.
P.S. Бонусом цитата бывшей: «Гибель экипажа начинается с хреново заправленной койки».
Комментарии (3)
Zulu0
04.07.2025 14:43Разделил для себя день на блоки. Утром 15 минут для планирования, в это время можно пить чай, разбирать почту и писать список задач. Потом несколько блоков по 1,5 час с перерывами. Они могут быдь, для кодинга, митингов и всего что связано с работой. В конце дня 1 час на чтение книги. Утром тоже в перерыве чтение худржественной литературы. И самое мое любимое: рисовать блок схемы проекта в drawio.
А дома иногда рисунки от руки, карандашем
Забыл: спасибо за пост, дополню свою практику.
MVN63
Отличный глоток свежего воздуха, спасибо!