Разработка
Что такое Resume-driven разработка
Resume-driven разработка часто критикуется за поверхностный подход, но иногда использование новых технологий оправдано, если это соответствует стратегическим целям компании.
Resume-driven разработка (Resume-driven development, RDD) — это ироничный термин, обозначающий подход к разработке программного обеспечения, при котором выбор технологий, инструментов или архитектурных решений больше определяется желанием разработчика «украсить» свое резюме, чем реальными потребностями проекта.
Основные черты RDD
Приоритет модным технологиям: Разработчики выбирают новые или популярные инструменты и языки, даже если они не подходят для задачи, чтобы потом добавить их в резюме.
Игнорирование бизнес-логики: Вместо выбора оптимального решения для бизнеса акцент делается на внедрение сложных и современных подходов.
Рискованность: Использование незрелых технологий может привести к проблемам в разработке, особенно если команда не имеет достаточного опыта работы с ними.
Фокус на личной выгоде: Основной мотив разработчика — не успех проекта, а улучшение своей карьеры.
Примеры RDD
- Внедрение микросервисной архитектуры в небольшой проект, где монолитный подход был бы более оправдан.
- Использование новых библиотек, которые еще не проверены временем, вместо стабильных решений.
- Переписывание работающего кода на другой язык программирования «для тренировки» или ради тренда.
Возможные последствия:
- Для проекта: Увеличение сроков, сложности и затрат из-за неуместного выбора технологий.
- Для команды: Рост напряженности, если навыки сотрудников не соответствуют выбранным технологиям.
- Для разработчика: Позитивный эффект на карьеру в случае успешного внедрения, но риск испортить репутацию при провале.
Как избежать RDD
- Ориентироваться на задачи бизнеса и потребности проекта, а не только на популярность технологий.
- Учитывать опыт команды и возможности технической поддержки.
- Внедрять новые технологии постепенно и наименее критичных компонентах.
Resume-driven разработка часто критикуется за поверхностный подход, но иногда использование новых технологий оправдано, если это соответствует стратегическим целям компании.