Код, который не нужен бизнесу

Andrew Neverov
CTO hints

--

Уровень: ★☆☆☆☆ (начинающие инженеры)

Представьте себе, 10x разработчики действительно существуют. Только это не те ребята, которые сидят по 80 часов, питаясь энергетиками, и не те, которые знают все самые потаенные алгоритмы из учебника Кнута и могут написать их с завязанными глазами одной рукой на С. Это просто люди, которые решают правильную проблему правильным способом.

Допустим, ваша задача — реализовать отправку нотификаций на телефон пользователя. Очевидно, что решение — запилить микросервис на GO для отправки сообщений, тогда и унылое легаси не надо будет трогать, и масштабировать можно будет под любую нагрузку.

Как только такое происходит — задумайтесь. Задача ведь на самом деле не сервис написать и не сто тысяч нотификаций отправить. Код — это только побочный результат решения продуктовой проблемы.

Есть три проблемы:

  1. Начать с технологии

Первое что пошло не так — мы сразу решили запилить сервис. А какую проблему это решит? Напишите понимание задачи. Опишите, какую проблему вы решаете и возможное решение, стараясь как можно меньше упоминать техническое решение.

2. Построить космический корабль

Начните с прототипа (например, отправлять только текст на один номер и все). Покажите описание задачи и прототип кому-нибудь еще и выслушайте фидбек.

3. Сказка о потраченном времени

Универсальное решение придется поддерживать — в будущем новые фичи будут долго делаться из-за необходимости встраивания в космический корабль. Делайте ревью проблемы и решения каждый раз при изменениях.

По мотивам https://blog.intercom.com/does-your-solution-solve-the-right-problem/.

--

--

Andrew Neverov
CTO hints

Helps smart people get things done with technology.