Издательский дом ООО "Гейм Лэнд"СПЕЦВЫПУСК ЖУРНАЛА ХАКЕР #71, ОКТЯБРЬ 2006 г.

пособие по выживанию

КРИС КАСПЕРСКИ

Спецвыпуск: Хакер, номер #071, стр. 071-012-1


РАБОТА В КОМАНДЕ ПРОГРАММИСТОВ – КАК БЫТЬ?

ПОЧЕМУ-ТО ВСЕ ПРЕИМУЩЕСТВЕННО ГОВОРЯТ О ТЕХНИКЕ СОЗДАНИЯ КОМАНДЫ, ЧЕМУ ПОСВЯЩЕНО МНОЖЕСТВО СТАТЕЙ, КНИГ, СЕМИНАРОВ, И НА ВЫБОР РУКОВОДИТЕЛЯ ПРЕДЛАГАЕТСЯ РЯД МЕТОДИК, ОТРАБОТАННЫХ ГОДАМИ. НО ВОТ О ТОМ, КАК ВЫЖИТЬ В КОМАНДЕ, РЕАЛИЗОВАВ СВОЙ ТВОРЧЕСКИЙ ПОТЕНЦИАЛ, ОБЫЧНО УМАЛЧИВАЮТ

«every single employee understand that they are part of a whole. thus, if an employee has a problem, the company has a problem»

(с) the matrix

Времена, когда один-единственный программист мог вести весь проект целиком, безвозвратно прошли. Рынок наводнили акулы бизнеса, ожесточенно конкурирующие между собой, и требования к качеству продукта резко возросли. «Голая» программа без красивого графического интерфейса, многостраничной документации, официального сайта и службы поддержки уже никому не нужна. Исключение составляют утилиты, ориентированные на узкий круг профессионалов, которым достаточно развитого функционала, но таких — единицы, и реальные деньги крутятся там, где обитают полуграмотные пользователи, популяция которых исчисляется сотнями миллионов. Даже примитивный каталогизатор дисков, будучи достойно оформленным и поданным, может приносить неплохой доход, не говоря уже про автоматизацию предприятий или компьютерные игры. Было бы заманчиво написать такой продукт в одиночку, но, увы, это практически невозможно. Даже гениальный программист, талантливый абсолютно во всем, навряд ли захочет отвечать на идиотские письма дебильных пользователей, а писем таких будет очень много, ведь каждый покупатель считает, что вместе с продуктом он покупает еще и внимание. А ну-ка, мать вашу за ногу так, быстро разберитесь, почему ваша программа не работает у меня!

Десять лет назад можно было программировать, зная всего лишь Turbo Pascal и MS-DOS, теперь же количество обязательных языков/библиотек/технологий исчисляется десятками. Писать интерфейс на Си — это самоубийство, причем крайне болезненное и мучительное, но еще хуже пытаться реализовать вычислительное ядро на DELPHI. Поэтому неизбежно встает вопрос о создании команды, а, быть может, и целой фирмы.

Работать в команде и сложно, и просто одновременно. С одной стороны, без обмена идеями и знаниями программист никогда не сможет реализовать свой потенциал на 100%. Великие находки и грандиозные открытия, как правило, рождаются в спорах. С другой стороны, если ты один, тебе приходится рассчитывать только на самого себя, и никто не придет на помощь в трудную минуту (про то, что некоторые пройдохи ухитряются перекладывать свои проблемы на чужие плечи, мы знаем, но скоромно промолчим).

Это были плюсы. Теперь о минусах. Командная работа требует намного большей самоотдачи, заставляя заниматься не тем, чем тебе интересно, а тем, что нужно команде (как говорится, что полезно для вида, вредно для индивида), при этом неудача одного из участников ударяет рикошетом по всем остальным, и сотни часов, проведенных за монитором, летят впустую. Сплоченные команды — большая редкость (если они вообще существуют в природе), и интересы участников чаще всего оказываются противоречащими друг другу. Кто-то рвется вперед, выдвигая одну сумасбродную идею за другой, кто-то топчется на месте, вылизывая каждую строку кода, радуясь, что ему ценой месячного траха удалось сократить длину функции на шесть байт. Как следствие — возникают расколы и конфликты. Атмосфера внутри коллектива становится душной, а работа — непроизводительной.

Содержание  Вперед на стр. 071-012-2