Разделы

Работа

Парное программирование: эффективная работа или мучение?

В некоторых компаниях Кремниевой долины считается, что программисту не обязательно иметь отдельный компьютер для того чтобы писать код. Это компании, которые приняли на вооружение парное программирование – оригинальный метод организации рабочего процесса, при котором над одним и тем же кодом работают два сотрудника. Несмотря на то, что метод существенно ускоряет процесс разработки, многим программистам он неудобен чисто с человеческой точки зрения – не каждому разработчику по нраву, когда у него «стоят над душой».

Основное назначение парного программирования заключается в том, чтобы повысить скорость разработки программных продуктов, требующих быстрого выпуска и исправления. Двое разработчиков делят между собой один стол и один компьютер. Один из сотрудников является «ведущим»: он работает на клавиатуре и непосредственно пишет код программы. Тем временем второй сотрудник, «штурман», следит за экраном и проверяет код на наличие ошибок или неверных решений в дизайне.

Истоки популярности парного программирования надо искать в 1999 г., когда в свет вышла известная книга Кента Бека (Kent Beck) «Экстремальное программирование». Кент Бек разработал основные положения метода в 1980-х, трудясь над софтверным проектом совместно с Уордом Каннингемом (Ward Cunningham), создателем первой wiki. Все началось с того, что Бек попросил Каннингема проверить свой код на ошибки. Постепенно между двумя разработчиками установилось глубокое сотрудничество, и они начали работать в паре, чтобы быстрее выполнять задачи и тем самым высвобождать время на реализацию любительских проектов.

Парное программирование объединяет

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

В настоящее время практика парного программирования процветает. Метод нашел поклонников в офисах таких технологических компаний, как Facebook или сервис мобильных платежей Square. Square, базирующаяся в Сан-Франциско, утверждает, что по крайней мере 15% из её программистов полный день работает в парах. Половина сотрудников прибегает к методу время от времени – тем более что им позволено выбирать, когда и с кем сотрудничать.

Хорошо, если сотрудники находят друг в друге родственную душу, работая в паре
Хорошо, если сотрудники находят друг в друге родственную душу, работая в паре

Pivotal Labs, лаборатория разработки программного обеспечения, в марте текущего года ставшая частью технологического гиганта EMC, утверждает, что 175 ее инженеров работают в парах ежедневно. Некоторые сотрудничают на постоянной основе, другие же предпочитают постоянно менять партнеров, что среди сотрудников компании в шутку зовётся «беспорядочным спариванием». Есть и другие формы парного программирования – к примеру, партнерство в стиле «пинг-понг», когда партнеры «перекидывают» друг другу задачи. Еще один вариант — парное программирование на удаленной основе: один сотрудник предоставляет второму доступ к экрану своего компьютера через интернет.

Свидание вслепую

Хорошо, если сотрудники находят друг в друге родственную душу, работая в паре. Однако на практике парное программирование нередко напоминает не очень удачное свидание вслепую. Уилл Сарджент (Will Sargent), бывший инженер Grockit, интернет-компании из Сан-Франциско, делится неудачным случаем из своей практики: однажды ему довелось работать в паре с разработчиком намного опытнее себя. Когда Сарджент, бывший в паре «ведущим», делал ошибку, его партнер просто отнимал у него клавиатуру и делал все по-своему. «Тот уровень, на котором он работал, был для меня недостижим», — вспоминает Сарджент, покинувший компанию в 2010 г.

Генеральный директор Grockit Рой Гилберт (Roy Gilbert), тем не менее, заявляет, что практика парного программирования доказала свой успех. «Наши разработчики продолжают проповедовать этот метод», - утверждает президент компании.

«Сбер» перешел на российское решение для анализа кода
«Сбер» перешел на российское решение для анализа кода Импортонезависимость

Главный враг парного программирования – человеческие привычки. Брайан Кокол (Brian Kocol), технический директор Drive Current, ИТ-консалтинговой компании по программному обеспечению, вспоминает одного из своих инженеров, который имел обыкновение проговаривать вслух все свои действия над кодом. «Некоторые люди имеют неудобные привычки – например, разговаривают сами с собой, - замечает он. - Других сотрудников это сводит с ума». Раздражать может что угодно: недостаток личной гигиены, неумение вести себя за столом, привычка класть ноги на стол или чавкать.

В отличие от Grockit, Drive Current встала на сторону сотрудников, которым парное программирование не по душе. После двух лет эксперимента, когда разработчиков просили по три часа в день работать в паре, компания прекратила эту практику. «Не думаю, что кто-то по ней сильно скучает», - язвительно замечает Йон Сент-Джон (Jon St. John), один из программистов компании, которому тоже достался слишком опытный и дотошный «штурман».

С другой стороны, некоторые сотрудники, испытывающие проблемы с партнером по программированию, стремятся решить их самостоятельно. Джеми Кайт (Jamie Kite), программист из нью-йоркской консалтинговой компании Relevance, столкнувшись с взаимонепониманием, вызвала партнёра на откровенный разговор. Чтобы разобраться в ситуации, им пришлось выписать свои проблемы и мысли по их решению на доске, однако, в конце концов, компромисс был найден.

«Так бывает в любых отношениях, — объясняет Кайт. - Если о проблеме не говорить, то и сотрудничества не получится».

Как Сбер построил новую процессинговую платформу на российских СУБД для обслуживания 113 млн клиентов
Как Сбер построил новую процессинговую платформу на российских СУБД для обслуживания 113 млн клиентов ит в банках

В Relevance, где парное программирование применяется очень активно, существует специальная должность «тренера», который помогает запутавшимся партнерам прийти к пониманию. Марк Филипс (Mark Philips), один из тренеров компании, сравнивает парное программирование с семейной жизнью. «Люди, которые какое-то время поработали в паре, начинают вести себя как склочные супруги», - иронически замечает Филипс.

Любовь Касьянова

До 20 марта открыт прием заявок на Конкурс «Импортозамещение в телекоммуникациях» До 20 марта открыт прием заявок на Конкурс «Импортозамещение в телекоммуникациях»

erid: 2W5zFHXcZPo

Рекламодатель: ООО «ФЛАТ-ПРО»

ИНН/ОГРН: 9714013259/1237700428240

Конференция K2 Cloud Conf 2026 Конференция K2 Cloud Conf 2026

erid: 2W5zFJoBN9o

Рекламодатель: АО "К2 ИНТЕГРАЦИЯ"

ИНН/ОГРН: 7701829110/01097746072797