Когда мы разрабатываем программное обеспечение мы думаем о многих его характеристиках — будет ли оно быстрым (efficiency)? будет ли оно надежным (reliability)? будет ли пользователю удобно его использовать (user experience)? Но одна из характеристик практически всегда остается неназванной вслух — будет ли удобно разрабатывать это ПО? Это свойство ПО можно назвать Developer Experience.
Представьте, что вы выходите на работу в новый перспективный стартап. В такой, где есть личный бариста ☕️. Бариста есть, а вот онбординга толком нет. Вам дали доступ в
git, вы нашли там пять вроде бы нужных репозиториев. Что-то на Java, где-то React , а этим вы разобрались, а вот как все это запустить вместе — нет. В итоге вы ловите коллег и просите их помочь. Чтобы запустить проект локально вам понадобилась неделя. Это плохой DX.Чтобы улучшить DX можно сделать следующее:
*
README.md с описанием того как запустить проект локально, как настроить среду, как запустить тесты* документация о технических процессах в команде — какая конвенция работы с
git; как работаем с merge request — кто проверяет, какой врем ожидания проверки; как происходит релиз на продакшен* в самом коде проекта минимальное количество неочевидных вещей. Время разработчика стоит дороже чем облачные вычисления. Оптимизировать DX, а не скорость.
* использование распостраненных стандартов, технологий и зависимостей, а не своих “велосипедов”. Здесь дополнительный плюс — документацию на эти модули за вас пишут люди в интернете.
Чем проще начать работать с вашим проектом, тем больше вероятность что кто-то захочет его улучшить. Даже если ваш проект проприетарный, вы можете относиться к нему как к open-source проекту, представьте, что с ним будут работать случайные люди в интернете.
⬛️ Еще раз — чем проще работать с вашим проектом, тем большая вероятность, что вам кто-то поможет. А когда кто-то помогает, это прекрасно, потому что это значит, что вам надо работать меньше. Хороший разработчик любит работать меньше, т.е. эффективно.
Как еще можно улучшить DX? Пишите в комментариях.
#софтскиллы, 🌄Instagram |🤝Patreon