Developer
Это – человек, который работает 40 часов в неделю, постоянно общается с клиентом, эффективно располагает задачи по приоритетам, выделяет время, чтобы рассмотреть все уровни проекта, программирует экономно и эффективноо, постоянно проверяя и тестируя свою работу. Этот человек наделен способностью получать лучшие результаты в заданное время с наименьшим количеством конфликтов с заинтересованными лицами. Единственное, что ему может помешать – так это слабый менеджер.
Но некто Джастин Джеймс (Justin James) провел специальное исследование, призванное выяснить, все ли программеры таковы, и в результате определил целых десять различных типов. Он, правда, оговаривается, что это только те типы, которые известны лично ему. Возможно, вы сможете добавить в этот паноптикум еще кое-кого из своих знакомых. А может, кто-то узнает и себя.
#1: Гэндальф
Обычно у него борода до пояса и идиотская шляпа. Он может даже зимой ходить в бейсболке и легком плаще, поскольку погода его интересует меньше всего. К счастью для команды разработчиков, в обращении с кодом такая личность искусна не менее, чем Гэндальф в волшебстве. Этот тип – ваше самое мощное оружие, но из-за личностных особенностей к ним обычно обращаются только тогда, когда дело – труба.
#2: Мученик
В любой другой профессии Мученик – это просто трудоголик. Но в области разработки ПО работают Мученики особого вида. Трудоголики, по крайней мере, иногда уходят домой, чтобы принять душ и поспать. Мученик гордится сном за столом среди пустых коробок от пиццы. Собственно, никто и никогда не просил его работать в таком режиме. Но он с напускным равнодушием говорит: «Да, конечно, идите, идите домой и наслаждайтесь своим ужином. А я пока сегодня к вечеру закончу работу, намеченную на следующие три недели». Боже, как всем стыдно (к полному удовлетворению Мученика).
#3: Фанат
Внимательно следите за Фанатом. Если он загонит вас в угол, вам придется прослушать трехчасовую лекцию о превосходстве Dragonball Z над Gundam Wing или о том, почему Playstation 3 лучше Xbox 360. Рабочее место Фаната обклеено постерами, уставлено фигурками персонажей игр и другими безделушками, связанными с его навязчивой идеей (последнее – обязательный элемент). Как правило, с ними трудно иметь дело и они не слишком приятны в общении. Мало того, от них ничего нельзя добиться, когда надо делать работу, для выполнения которой их, собственно, наняли.
#4: Переросток
Если кто не знает Винса Нейла, пусть прочтет о нем в Википедии. Программер этого типа – 40-летний переросток, все еще живущий в 80-х. Характерные черты: длинные нечесаные волосы, драные грязные джинсы и пестрый платок на какой-либо части тела. Винс сидит в офисе, фальшиво напевая мелодии Bon Jovi и Def Leppard. В целом Винс – забавный человек и имеет тонну опыта. Просто он так и не вырос. И еще трудновато работать с ним, когда он на день-другой принимает образ жизни своих кумиров – похмелье мешает.
#5: Нинзя
Нинзя – MVP (Most Valuable Professionals - Двигатель) вашей команды, и, представьте, никто не знает об этом. Вы не знаете, находится ли он на своем рабочем месте, в отделе, в здании, или вообще на территории компании. Только утром вы вдруг обнаруживаете, что в 04:00 Нинзя залогинился и начал писать код, решающий возникшие текущие проблемы. Он настолько засекречен, что вы можете не знать его имени и никогда не видеть лица. Но каждый проект, в котором они принимают участие, идет более чем гладко. И все же Нинзя – одинокий воин. Не пытайтесь вынудить его работать с рутинными задачами и плечом к плечу с остальным коллективом.
#6: Теоретик
Теоретик знает о программировании все. Он может часами читать лекции по истории какого-нибудь смутного языка программирования или доказывая, что код, написанный вами, недостаточно оптимален и можно выгадать по крайней мере еще три наносекунды. Проблема в том, что Теоретик не знает простых вещей о методах разработки ПО. Когда Теоретик пишет код, это настолько «изящно», что простые смертные не могут понять его смысла. Любимый прием Теоретика – рекурсия, а каждый блок программы идеален (разумеется, за счет нарушения графика работ и удобочитаемости кода). Кроме этого, Теоретик легко отвлекается. Простая задача, на решение которой отведен час, занимает у Теоретика три месяца, поскольку он уверен, что существующие инструменты разработки недостаточно хороши. Т.е., нужно сначала разработать новое, «правильное» инструментальное ПО, чтобы написать новые библиотеки, чтобы построить новую систему, которая отвечает их высоким стандартам. В принципе, Теоретик может стать одним из ваших лучших игроков – если, конечно, вы сможете удержать его в рамках проекта и убедить не разрабатывать на работе Окончательный Алгоритм Сортировки.
#7: Кодовый Ковбой
Кодовый Ковбой – это стихия, сила природы, которая не может быть остановлена. Он почти всегда отличный программист и может сделать работу два в три в три раза быстрее чем кто-либо еще. Проблема в том, что, по крайней мере, половина этой скорости достигается срезанием углов. Кодовый Ковбой уверен, что проверка кода исходников – это слишком долго, сохранение конфигурационных данных вне самого кода – это слишком долго, общение с кем-либо – слишком долго… Кодовый Ковбой по определению не взаимодействует ни с кем. Например, если два Ковбоя будут работать в одном и том же проекте, то можете не сомневаться, что проект будет провален, поскольку изменения одного будут изменены другим и т.д. (если, конечно, они раньше не перестреляют друг друга). Лучшее использование Кодового Ковбоя – проект, где срок исполнения важнее качества конечного продукта – можно не сомневаться, что нужный код всегда будет закончен за час до конца этапа. Можно сказать, что Кодовый Ковбой – это громкая и неистовая версия Нинзя. Но, в то время как Нинзя выполняет все с хирургической точностью, Кодовый Ковбой – это разъяренный бык, который забодает все, что ему мешает.
#8: Десантник
Видели кино, где один-единственный коммандос забрасывается глубоко в тыл врага и срывает все его амбициозные планы? В разработке ПО это – Парашютист, последнее средство, чтобы спасти умирающий проект. У них не хватает терпения работать день за днем, но они обладают удивительной способностью изучить незнакомый код не за недели и месяцы, а за пару дней и исправить огрехи «на ощупь», совершенно не представляя себе программного комплекса в целом.
#9: Посредственность
О Посредственности можно сказать только то, что он «достаточно хорош». Для чего? Не позволяйте себя дурачить – для того, чтобы не спеша, без повреждений и ни с кем не соревнуясь добраться в гонке до финиша. Код у них всегда хуже, а его написание занимает больше времени, чем у остальных членов команды. Но… он «достаточно хорош», чтобы его не выгнали с работы. Когда вы берете интервью у этого типа при приеме на работу, он может много говорить о проектах, с которыми был связан, но ничего о фактической причастности к ним. Отфильтровать Посредственность несложно: нужно попросить рассказать о фактических деталях работы, которую он сделал – у них всегда в таких случаях внезапно случается приступ амнезии. Но если уж они пробрались в вашу организацию, могут потребоваться годы, чтобы избавиться от них.
#10: Евангелист
Независимо от того, в какой среде вы работаете, Евангелист всегда настаивает, что она может быть улучшена – если выбросить все ваши инструменты и процессы и заменить их чем-то еще. Фактически, Евангелист – противоположность Теоретика. Евангелист очень много знает о разработке ПО, но сам реально программирует очень мало. В душе Евангелист – менеджер проекта или отдела, но ему не хватает либо знаний, либо опыта занять руководящую должность. И пока Евангелист не в состоянии войти в организаторскую роль, все остальные должны терпеть его попытки реконструировать рабочее место.
Данная классификация вызвала флейм едва ли не в сотню постов, где была предложена еще одна интересная категория:
#11 Техно Модник
Технический Модник знает все последние умные слова и всегда слишком занят, поскольку читает технические блоги и учебники, вместо того, чтобы чтобы делать реальную работу. Если вы хотите узнать, например, о том, что такое Web 2.0 или последних моделях (все равно чего), то он – ваш человек. Но если он должен разрабатывать реальную систему, то вряд ли справится с заданием. Или у него выйдет винегрет из новейшего, но несовместимого ПО, причем приготовленный способом, который не может понять остальная часть команды. Зато его с успехом можно использовать для охмурения таких же «нахватавшихся верхушек» потенциальных клиентов, желающих иметь самую новомодную систему.
original: http://blogs.techrepublic.com.com/10thi … ag=nl.e606