Время - деньги. Создание команды разработчиков программного обеспечения - [19]
Можно выделить три основных категории технических специалистов: ведущий разработчик (программист), ведущий программист, отвечающий за реализацию определённой функции и рядовой программист (рис. 3-2).
Рис. 3-2. Связи между ведущим разработчиком, ведущими программистами, ответственными за реализацию определённых функций ПО, и рядовыми программистами.
Это главный специалист по разработке ПО. Эту должность, как правило, занимает один человек. Поскольку он играет ключевую роль в разработке ПО, занимающий эту должность специалист должен быть достаточно зрелым и квалифицированным, чтобы справиться со сложными техническими и кадровыми проблемами, постоянно возникающими во время цикла разработки. В число его обязанностей входит:
• наблюдение за соблюдением архитектурных и технических спецификаций продукта;
• подбор ключевых технологических инструментов и стандартов;
• диагностика и разрешение всех технических проблем;
• выполнение роли технического инструктора и консультанта для участников проекта;
• наблюдение и контроль за работой групп разработчиков документации, тестировщиков и технологов;
• мониторинг состояния (ведение списка обнаруженных ошибок);
• подбор инструментов разработки, метрик и стандартов и наблюдение за их использованием;
• ну и, конечно, программирование, программирование и ещё раз программирование.
Отвечают за реализацию отдельных функций продукта, часто на основе конкретной технологии. Обычно определение функций формулируют довольно широко, например, «интеграция с IDE» или «разработка API доступа к БД». Обязанностями ведущих программистов, отвечающих за создание отдельных функций ПО, являются:
• согласование архитектурных вопросов с коллегами, ответственными за разработку других функций;
• формулирование требований к функциям и их критический анализ;
• проектирование функций;
• снабжение тестировщиков и разработчиков документации техническими материалами;
• ну и, конечно, программирование, программирование и ещё раз программирование.
Работают над реализацией определённой функции ПО обычно под руководством ведущего программиста, ответственного за эту функцию. Они отвечают за реализацию конкретных аспектов этой функции, например, за «интеграцию в IDE окон X, Y и Z» или «написание для API баз данных методов create, update и delete». В круг их обязанностей входит:
• реализация функции;
• её тестирование;
• исправление ошибок в реализованной функции;
• помощь техническим писателям в документировании реализованной функции;
• помощь тестировщикам в испытаниях этой функции.
Отвечают за составление и исполнение плана тестирования программы, создаваемой в рамках проекта. Чтобы обеспечить истинное партнёрство между теми, кто пишет код и теми, кто его тестирует, роли и обязанности группы тестировщиков должны быть «параллельны» обязанностям разработчиков.
Традиционно группы тестировщиков и разработчиков функционируют раздельно, обладая независимыми полномочиями в отношении качества ПО, иначе велика вероятность того, что события пойдут по сценарию хорошо известной сказки про лису, которой доверили охранять курятник. С другой стороны, наличие группы тестировщиков со своим менеджером, обладающим равными полномочиями с менеджером проекта, может привести к конфронтации. Со временем группы могут отдалиться друг от друга, и между ними могут возникнуть натянутые отношения, отравляющие любые начинания.
В NuMega удалось избежать обеих проблем, передав право окончательного решения вопросов о качестве ПО в руки менеджера проекта. Он должен предоставить качественный продукт, и именно с него спросят за любые проблемы с продуктом. Принимая решение о готовности продукта, ему приходится полагаться на результаты испытаний, проведённых группой тестировщиков. Такая структура организации (рис. 3-3) позволяет группе тестировщиков оставаться независимой, так как она является самостоятельным подразделением под руководством своего ведущего специалиста. Однако, будучи подотчётными тому же менеджеру, что и разработчики, они ощущают, что их воспринимают так же, как любых других участников группы, и обращаются с ними соответственно. Подробнее о тестировании будет сказано в главе 6.
Рис. 3-3. Связи между группами разработчиков и тестировщиков.
Отвечает за организацию и исполнение тестирования ПО в период разработки. Он сам должен обладать хорошими навыками тестирования и быть способен возглавить других тестировщиков и направить их усилия в нужное русло. Его обязанности таковы:
• Составление плана тестирования продукта
План тестирования регламентирует работы по испытанию программы, т.е, что, как и когда будет протестировано. Ведущий тестировщик также занимается решением дополнительных проблем, обеспечением возникающих потребностей и необходимых ресурсов.
• Исполнение плана тестирования
Ведущий тестировщик отвечает за исполнение плана тестирования на протяжении всего цикла разработки. Он сравнивает результаты тестирования продукта со спецификациями базовых уровней и промежуточных этапов, определённых в графике разработки продукта, а также следит за тем, чтобы тестирование новых функций программы проводилось своевременно.
Кем ты хочешь стать, когда вырастешь? Каждый из нас отвечал на этот вопрос в детстве. Удивительно, но ответ всегда предполагал одну-единственную возможность. Один-единственный вектор развития. Помните, как взрослые не понимали и даже сердились, если вы хотели освоить сразу несколько профессий? В нашем обществе не принято быть мультипотенциалом – человеком, совмещающим в своей деятельности множество интересов и творческих устремлений. Эксперименты воспринимаются как неразборчивость и непостоянство. Однако Эмили Вапник убеждена, что не обязательно концентрировать все свои силы и способности, чтобы реализоваться лишь в одной сфере.
Эта книга – продолжение первой части, вышедшей в 2015 г. Во второй части анализируются 100 дел ФАС России против малого и среднего бизнеса за 2016—2018 гг. Несмотря на принятие 3.07.2016 закона об «иммунитетах» для малого бизнеса от антимонопольного контроля, подходы ФАС изменились незначительно. По основным объектом преследования остаются н самые крупные игроки на рынке. В книге предлагается реформа антимонопольного регулирования, предусматривающая полное прекращение преследования МСП.
Патрик Эдблад показывает, как можно формировать стойкие привычки, не обливаясь потом от напряжения. Когда вы освоите эти навыки, в вашем распоряжении окажется секретный рецепт, позволяющий добиваться целей, не испытывая разочарований и желания махнуть на все рукой. Для широкого круга читателей.
Что общего между дирижером оркестра и руководителем компании? Хороший дирижер, как и хороший руководитель, знает, как добиться правильного взаимодействия членов команды и их блестящей игры. Но что именно делает настоящий маэстро, чтобы его оркестр создавал великолепную и незабываемую музыку? «Несведущий маэстро» – это рассказ о стилях лидерства шести великих дирижеров XX века, о шести подходах к решению вопроса, как совмещать контроль и творческую свободу. Идеи Итая Талгама помогут вам по-новому взглянуть на самые распространенные проблемы, с которыми сталкиваются все руководители, научиться слышать звучание бизнес-процессов и стать лучшим лидером для своей команды. На русском языке публикуется впервые.
Проект-менеджерам (и тем, кто мечтает стать начальником) посвящается.Писать тонны кода сложно, а управлять людьми еще сложнее! Так что вам просто необходима эта книга, чтобы научиться делать и то, и другое. Можно ли объединить прикольные истории и серьезные уроки? Майклу Лоппу (также известному в узких кругах как Рэндс) это удалось. Вас ждут выдуманные истории о выдуманных людях, обладающих невероятно полезным (хотя и выдуманным) опытом. Именно так Рэндс делится своим разнообразным, порой странным опытом, полученным за годы работы в крупных IT-корпорациях: Apple, Pinterest, Palantir, Netscape, Symantec и др.
Старейший в мире и лучше всего организованный конгломерат раскрывает свои тайны менеджмента перед всеми, кто готов ими воспользоваться. В отличие от других бизнес-пособий, данная книга избавлена от теоретического пустословия и представляет вниманию читателей философию лидерства, на которой основана и в соответствии с которой на протяжении многих веков успешно управляется Империя мафии, неуклонно раздвигающая свои границы. Для широкого круга читателей.