День добрый, друзья! :) Как-то, работая над довольно крупным web-проектом и в который раз переписывая часть кода из-за того, что структуру новых разделов приходилось как-то сочетать со старыми, ко мне пришла мысль о том, что изначальное продумывание архитектуры проекта могло бы реально съэкономить не один десяток человеко-часов. Однако, чтобы сделать это, нужно достаточно хорошо разбираться как в самом проекте, так и в имеющихся технических средствах (CMS, framework’ах, ajax-библиотеках и т. п.), чтобы суметь понять, какие инструменты будут оптимальными для решения данных задач и как именно должна быть построена структура системы с тем, чтобы всё в результате работало без «костылей» и каких-то вынужденых компромисов. По идее, подобную роль должен выполнять team-lead, отвечающий за проект, но не всегда он будет достаточно компетентен или знаком с конкретной системой для того, чтобы всё досканально продумать и принять верное решение. Соответственно, возможно, будет целесообразным привлечение на начальном этапе стороннего человека, способного, зная ТЗ (в которым, будь оно хоть на 500 страницах, всё равно будет описана система со стороны пользователя, а не со стороны программиста) и имеющиеся в наличии инструменты спроектировать архитектуру будующей системы, накидав каркас и детализировав наиболее важные и ответственные узлы, а также описав технологии, которые целесообразней использовать в решении данной задачи. Ну, а дальше уже можно программировать и быть более-менее уверенными, что в конечном итоге система будет успешно запущена и её можно будет легко доработать или расширить (что порою не менее важно). Понятно, что до всего можно дойти самостоятельно, но это будет стоить потеряных времени (а для фирмы, соответственно, денег) и нервов. Полагаю, подобный подход совсем не исключает личное творчество и саморазвитие, но при этом помогает сделать это быстрее за счёт использования успешных идей (как те же паттерны, но в ещё более глобальном смысле). Если при этом архитектор чётко и доходчиво объясняет всю идею команде, и, в случае чего, выступает консультантом — то вложения в него должны быть вполне оправданы. В связи с этим хотелось бы узнать ваше мнение по данному вопросу: может ли вам понадобиться такой человек или вы всегда обходитесь своими силами? P. S. Заметил, что на субботним phpDev также будет подниматься подобный вопрос, тем более интересно его немного обсудить заранее ;)
Читайте также
«Белорусский мидл здесь может претендовать на сеньора». Архитектор EPAM о переезде из Гомеля в Гонконг
«Белорусский мидл здесь может претендовать на сеньора». Архитектор EPAM о переезде из Гомеля в Гонконг
Архитектор EPAM Олег Суравнёв работает в Гонконге: переехал из Гомеля около года назад — так было выгодно и его работодателю, и ему самому. Перевёз с собой семью.
2 комментария
«Меня собеседовали 6 директоров и вице-президент». Архитектор 4-го уровня EPAM про то, как разработчику вырасти до архитектора решений (+список книг)
«Меня собеседовали 6 директоров и вице-президент». Архитектор 4-го уровня EPAM про то, как разработчику вырасти до архитектора решений (+список книг)
Как, наконец, исправить баги конечных пользователей
Как, наконец, исправить баги конечных пользователей
Правила жизни Solution-архитектора
Правила жизни Solution-архитектора
Обсуждение
Релоцировались? Теперь вы можете комментировать без верификации аккаунта.