DEV Community

Cover image for Overengineering
Arif Balaev
Arif Balaev

Posted on

1

Overengineering

Over engineering - проблема каждого.
Термин подразумевает создание более сложных вещей, чем этого требовалось. Ресурсы тратятся на менее важные вещи. Время проходит неэффективно. Ожидания не оправдываются, и ты огорчаешься. Узнаешь себя?

Откуда это берется?

  • Задача нечетко определена. Нет ясности, зачем ты это делаешь. Какую проблему решаешь? Решаются другие проблемы или тратится время на ненужное.
  • Плохая коммуникация. Бизнес меняется. Завтра появляются новые требования или задача устаревает. Если мы вовремя не получим обратной связи, мы потеряем время.
  • Перфекционизм. Все готово, но не идеально. Мы тратим время на поиск ошибок и задерживаем сроки.
  • Иррациональное мышление Мы пытаемся предвидеть будущее и облегчить работу. "Один раз сделаю и больше не буду трогать годами." Но мы смотрим слишком далеко и тратим время на "что если".

Последствия

  • Тратим больше времени. Время = деньги. Потеряли время - потеряли деньги.
  • Наше "Изобретение" нужно поддерживать. Чем дальше от даты создания, тем меньше помним, как это работает.
  • Не уложились в сроки. Задача устарела. Снижается мотивация и эффективность.

Выход

  • Не выдумывай и не планируй слишком далеко. Разработка решает проблемы бизнеса. Сделай требования прозрачными. Дай бизнесу, что он хочет, в кратчайшие сроки и получи обратную связь. Думай над оптимизацией, если это актуально. Почитай про Закон Парето.
  • Обзаведись критическим мышлением. Что мы решаем? Какой самый важный сценарий? Можно ли сделать решение проще и выполнить требования? Почему мы выбрали этот подход? Какие альтернативы мы могли бы выбрать?

Sentry blog image

How I fixed 20 seconds of lag for every user in just 20 minutes.

Our AI agent was running 10-20 seconds slower than it should, impacting both our own developers and our early adopters. See how I used Sentry Profiling to fix it in record time.

Read more

Top comments (0)

A Workflow Copilot. Tailored to You.

Pieces.app image

Our desktop app, with its intelligent copilot, streamlines coding by generating snippets, extracting code from screenshots, and accelerating problem-solving.

Read the docs

👋 Kindness is contagious

Please leave a ❤️ or a friendly comment on this post if you found it helpful!

Okay