Maximin —
инженерия
худшего случая.
Я проектирую системы так же, как решают платёжную матрицу: сначала предполагаю худший возможный исход, затем строю решение, которое гарантирует лучший результат даже в этом худшем случае. Backend, распределённые системы, интерфейсы, которые не падают под нагрузкой.
Меньше оптимизма, больше гарантий.
GrVF — рабочий псевдоним бэкенд-разработчика, который последние годы занимается системами, где цена отказа выше цены лишней недели разработки: очереди с гарантией доставки, шлюзы с бюджетами задержки, пайплайны данных, которые не должны терять события даже при падении половины кластера.
Пишу на Go и Python, реже на TypeScript — когда нужен интерфейс или инструмент для внутренней команды. Из инфраструктуры чаще всего Kubernetes, Terraform и Redis. Люблю задачи на стыке распределённых систем и данных: там, где нужно одновременно думать и про консистентность, и про то, что произойдёт, если сеть моргнёт в самый неподходящий момент.
Подход к любой задаче один и тот же: сначала находим худший реалистичный сценарий, потом проектируем так, чтобы именно в нём система вела себя предсказуемо. Всё остальное — уже оптимизация сверху этого фундамента.
-
max
Гарантированный минимум
Каждый сервис обязан предсказуемо работать в худшем из реалистичных сценариев, а не только на happy path в демо.
-
min
Наблюдаемость по умолчанию
Метрики, трейсинг и структурированные логи закладываются на этапе дизайна, а не добавляются после первого инцидента в проде.
-
=
Простые решения масштабируются лучше
Сложность — это стоимость, которую платит вся команда. Она должна быть осознанным выбором, а не унаследованной по умолчанию привычкой.
Выборка работ
Floorline
01API-шлюз с бюджетами задержки на основе SLA: отслеживает деградацию бэкендов в реальном времени и перераспределяет трафик так, чтобы p99 не выходил за согласованный потолок.
Ratchet
02Очередь задач поверх Redis с гарантированным минимальным throughput под обратным давлением: если часть воркеров падает, оставшиеся автоматически перенимают приоритетные задачи по заранее просчитанной схеме.
Signal
03Пайплайн наблюдаемости для распределённых сервисов: сбор трейсов и метрик через OpenTelemetry, хранение в ClickHouse, алерты на аномалии латентности до того, как их заметят пользователи.
Cohort Atlas
04Внутренняя платформа RFM-сегментации и анализа оттока: витрины данных на DuckDB, пересчёт когорт по расписанию, дашборд для продуктовой команды без похода к аналитику.
Инструменты
| Языки | GoPythonTypeScriptRust (учу) |
| Данные | PostgreSQLRedisClickHouseDuckDB |
| Инфраструктура | DockerKubernetesTerraformGitHub Actions |
| Практики | Test-firstObservabilityChaos testingCode review |
Обсудим худший случай вашей системы?
Открыт для интересных backend- и распределённых задач. Отвечаю быстро, обычно в течение дня.