Обновить
4K+
6
Дмитрий Попов@dixmod

Head of Backend

5
Рейтинг
1
Подписчики
Отправить сообщение

Почему я требую увидеть новый тест красным

Уровень сложностиСредний
Время на прочтение7 мин
Охват и читатели5.8K

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

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

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

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

Читать далее

Индекс как алфавитный указатель: как база ищет и почему иногда не находит

Уровень сложностиСредний
Время на прочтение6 мин
Охват и читатели10K

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

Статья для тех, кто индексы ставил, но EXPLAIN читал по диагонали.

Читать далее

Почему O(1) проигрывает O(n): структуры данных в Go на реальном железе

Уровень сложностиСредний
Время на прочтение11 мин
Охват и читатели12K

Объясню структуры данных через очередь в поликлинике, а потом покажу, где эта аналогия ломается: почему связный список с «вставкой за O(1)» в прикладном Go обычно проигрывает обычному массиву.

Спойлер: асимптотика здесь не ошибается. Ошибается вывод, который мы из неё делаем.

Статья для тех, кто асимптотику знает, но не проверял её замером.

Читать далее

Кэш — это холодильник: TTL, инвалидация и cache stampede

Уровень сложностиСредний
Время на прочтение6 мин
Охват и читатели7K

Объясню кэш через холодильник, а потом покажу, где эта аналогия ломается, и что с этим делают в проде.

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

Читать далее

Информация

В рейтинге
1 108-й
Откуда
Москва, Москва и Московская обл., Россия
Дата рождения
Зарегистрирован
Активность

Специализация

Бэкенд разработчик, Архитектор программного обеспечения
Ведущий