КОЛОНКА ОБОЗРЕВАТЕЛЯ

Знакомый приехал из Новосибирска в Москву устраиваться на работу. Человек он весьма разносторонний (психолог по образованию и вдобавок неплохой ИТ-управленец) и рассматривал эту задачу не как сложный этап в жизни, а скорее как своеобразное игровое испытание, тренинг личностного развития. Цель он поставил вполне определенную: трудоустроиться на зарплату от 2000 долл. (при том, что за 700 долл. можно снять хорошую двухкомнатную квартиру почти в центре). Пути поиска были выбраны стандартные - рекрутинговые агентства и сайты с объявлениями о работе. Желаемый вариант нашелся примерно через полтора месяца, и хотя первая связь с потенциальными работодателями обычно возникает быстро, много времени уходит на переговоры и согласование условий. При этом, отметил знакомый, вариантов на 800-1000 долл. было море.

Интересно, что сферу приложения сил он искал в своей профессиональной области (кадровая деятельность, работа с персоналом), а на вопрос "почему ты не хочешь искать работу в ИТ-сфере?" знакомый, усмехнувшись, ответил: "Это было бы слишком просто!". По его оценкам, возможно, сильно субъективным, компании просто захлебываются от нехватки руководителей ИТ-проектов, и уровни окладов 3-5 тыс. долл. давно не редкость. В кадровых службах, с которыми он общался, ему признались, что иногда в день приходит до сотни заявок на позиции "IT project manager"!

Тем, кто интересуется этим направлением (сложно придумать что-нибудь более перспективное в современном рациональном мире), надо иметь в виду, что руководители организации будут ожидать от менеджеров проектов быстрых результатов - примерно как в спорте с приходом нового тренера ждут чудесных метаморфоз команды. И с самого начала следует быть готовым к постоянному изменению проектных требований. На помощь в такой ситуации приходят agile-методологии, которые и были придуманы в противовес "тяжелым" - типа CMM, где подразумеваются явно выделенные и продолжительные этапы формирования требований и проектирования, после чего техническое задание замораживается.

Вот несколько полезных ссылок по этой теме. Желающим ознакомиться с современными подходами к управлению ИТ-проектами можно посоветовать презентации сайта www.performanceweb.org/CENTERS/Project_Management/. Основной англоязычный сайт по технологиям гибкого моделирования софта: www.agilemodeling.com (также желательно познакомиться с www.agilealliance.org и www.agiledata.org). Правда, в перечнях ключевых agile-практик на этих сайтах ничего серьезного не говорится о метамоделировании, построении онтологического словаря программной модели, некотором минимуме операционных определений, о стратегиях выявления паттернов в удачных проектах. Agile как бы с другой стороны пытаются решить проблему нехватки метаинформации о проекте - в основном за счет косметических средств наподобие динамической адаптации к требованиям заказчика. Из-за отсутствия фундаментальной, эпистемологической проработки софт-проектной тематики рождение популярных гибких методологий можно отнести скорее к интуиции их гениальных создателей, которая, впрочем, далеко не безупречна и несет как сильные, так и слабые стороны конкретных личностей. Серьезных исследований в этих сферах практически не ведется (или же их нет в открытом доступе, ведь современные подходы на базе моделирования опыта лучших специалистов позволяют ускорить действующие методологии в разы), поэтому приходится довольствоваться доступными наработками. В СССР, кстати, прикладные исследования по методологиям познания активно велись с 1950-х годов (см., например, www.circle.ru и подборки в PC Week/RE по концептуальному управлению).

Разработка софта имеет свою специфику, но чем выше, абстрактнее уровень управления этим процессом, тем менее влияют особенности программной сферы на этот род деятельности, и на первый план выходят классические проектные аспекты. Однако минимальный объем теоретических (лучше практических) знаний по программированию все равно необходим. По гибкому моделированию и методологиям разработки ПО есть хорошие сайты на русском языке: www.agilemodeling.org.ua, www.maxkir.com. Наиболее известна из agile-подходов методика экстремального программирования XP ( www.xprogramming.ru). Можно искать нужные темы в Яндексе, только не по "agile" (это слово подойдет для Google), а по "гибкая разработка", "гибкая технология".

Помимо давления со стороны топ-менеджеров руководителям проектов придется сталкиваться также с довольно массовым явлением скрытого саботажа, когда даже высококвалифицированные сотрудники не рвутся работать, выискивая всевозможные способы затягивания проекта (зарплата все равно никуда не денется). И с этой проблемой agile-подходы позволяют успешно справиться: собственно, приемы парной работы за одним ПК и за одним столом с представителями заказчика существенно затрудняют возможность "сачковать".

Однако не стоит питать иллюзий, что agile-подходы быстро завоюют массовую популярность. Внедрять их подчас ничуть не легче, чем тяжелые методологии типа CMM, - но так как эффективность их значительно выше, при выборе проектных методик лучше все же ориентироваться именно на гибкие решения, от которых потом при необходимости гораздо проще переходить к "тяжелым" (например, для формальной сертификации), нежели наоборот. И пока ситуация на рынке труда такова, какова она есть, надо уважать потребности и другой стороны - рядовых разработчиков. Приведу для них agile-стратегию ускоренного поиска хорошо оплачиваемой работы даже при недостаточно высоком развитии профессиональных умений.

В связи с тем что современные технологии программирования ежегодно усложняются (правда, в основном экстенсивно), подбор персонала в агентствах и отделах кадров осуществляется все формальнее, набором шаблонных вопросов, смысл которых задающий их обычно не понимает сам, ожидая ответа с некоторым перечнем стандартных ключевых слов. Отсюда основное требование к кандидатам: надо хорошо владеть соответствующей терминологией, желательно с жаргонными словечками, прежде всего по таким темам, как Си++, C#, Java, Windows API, Microsoft Visual Studio, UML (хочу предупредить - при всем уважении к Мартину Фаулеру, его последняя книга по основам UML 2.0 весьма слаба), SQL, СУБД MS SQL Server/Oracle, Web, Web-службы, HTML/XML, PHP, Apache/IIS. Начитавшись хороших книг и немного поэкспериментировав с соответствующими продуктами на домашнем ПК, можно пройти большинство проверок при приеме на высокооплачиваемые программистские должности в крупных компаниях, не имея реального опыта участия в мало-мальски серьезных проектах. В крайнем случае на собеседовании дадут несложные задачи по программированию на 50-100 операторов - даже восьмиклассник при желании обучится их решению за полгода.

А когда сотрудник принят в штат, у него появляется возможность расти на рабочем месте, осваивая нужные навыки и умения уже при хорошей финансовой поддержке со стороны компании.

Адрес автора: sbo@pcweek.ru.

Версия для печати