Давайте представим себе, что вы хотите построить дом. Конечно, можно построить и в одиночку, в принципе. Но это долго и требует перенапряжения сил физических и душевных. Поэтому что? Поэтому мы наймем кого-нибудь. Команду профессионалов. Постройка дома - это проект. А команда строителей - это наша команда проекта. А вы - заказчик.
Строить можно по-разному. Есть умное такое слово - методология разработки - Agile или Waterfall. Но мы сейчас не об этом. А о команде. Итак. Нужно, чтобы кто-то сделал проект дома перед самим строительством. Это по сути Фаза предпроектного исследования (Discovery phase). На этом этапе у нас присутствует архитектор, заказчик, проектировщик, дизайнер.
Архитектор придумал, как дом должен выглядеть в плане своей конструкции - тут всё просто - в IT это Архитектор решения (или Solution architect). Он продумывает "конструкцию" будущего IT решения.
Проектировщик - по сути это Бизнес-аналитик. Он расписывает решение - каким функционалом и какими качествами решение (а в нашем случае - дом) должно обладать.
Дизайнер - он и в Африке дизайнер, а в IT - UX/UI дизайнер. Он отвечает за удобство использования дома и за то, как дом выглядит.
Архитектурный проект у нас есть. Мы понимаем, как дом должен выглядеть. Мы понимаем, что в нем есть: какие комнаты, для кого и т.д. Осталось посчитать и выкатить заказчику смету - собственно Оценку (Estimate) и Коммерческое предложение (Proposal). Дискавери-фаза сдана.
Приступаем к стройке.
Собираем бригаду тех, кто дом будет строить. У бригады обязательно есть руководитель - бригадир, в случае с IT это Проджект-менеджер (PM) или руководитель проекта. Он отвечает за смету, сроки, качество, а также, если что-то пойдет не так, тоже все шишки его.
В бригаде есть, само собой, строители, которые, собственно, руками кладут кирпич и заливают фундамент - это Разработчики (Developers). Одна маленькая нестыковка. Строители точно получают меньше бригадира, а вот разработчики высокого уровня совсем даже не факт, что меньше ПМа.
Разработчики могут быть разными по специализации - кто-то отвечает за ядро дома, его "базу", фундамент, стены, подводку коммуникаций - то есть за все, что позволяет дому выполнять его функцию жилища без красивостей. За это в IT-проекте отвечают Backend-разработчики. Кстати, подводка коммуникаций - вода, свет, газ - это интеграции с внешними системами - и это тоже работа backend разработчиков.
А еще есть штукатуры-маляры, которые, так сказать, "мордочку красивую" на дом натягивают. Это Frontend-разработчики.
Идем дальше. Мы строим-строим, а выходит не совсем по плану. Фундамент кривой, стена просела. Задача - найти и зафиксировать эти огрехи (баги - bugs) - это задача специалиста по качеству (Тестировщик или QA). В случае со стройкой это может быть приглашенный ревизор, который пристально посмотрит на строение и "попытается его сломать" - ну то есть все-все облазит и выкатит свой отчёт о найденных неудовлетворительных моментах (Bug report).
Кто ещё у нас есть. Есть ещё DevOps-инженер. По сути, он отвечает за развертывание системы на месте и обеспечение интеграции системы в окружающую экосистему. Но он есть не в каждом IT-проекте. В стартап, с которым можно сравнить самостоятельную стройку дома “для себя”, DevOpsa не приглашают, потому что в малобюджетных проектах главное - выпустить жизнеспособный продукт, а с качеством уж как-нибудь своими силами разбираться. Точно также и на стройке - у вас не будет “DevOpsa” в бригаде на вашем участке. Но если вы вдруг вдохновитесь идеей строительства, откроете свою строительную компанию и начнете возводить многоквартирные дома, тут уж без так называемого DevOpsa не обойтись. DevOps в процессе крупной стройки - это представитель технадзора, который контролирует все этапы возведения дома. А вот в процессе эксплуатации уже готового дома его можно сравнить с управляющей компанией, которая следит за инфраструктурой во дворе, порядком на территориях общего пользования, а также принимает претензии от жильцов и решает возникающие проблемы.
Только работая равноправно вместе все они могут запустить по-настоящему ценный продукт.
Такие аналогии можно провести не только со строительством, на самом деле. Да и в целом, могу сказать, что IT — штука, которая очень классно описывается примерами из жизни. Поэтому ставьте “лайки”, кому понравился такой “жизненный” формат подачи теории, и мы будем продолжать рассказывать просто о, казалось бы, сложных вещах.
Мы забыли какую-то роль?
#УправлениеПроектами #ITКоманда #СтроимIT #Строительство