Книга: Джоэл и снова о программировании
Назад: Часть седьмая. Управление софтверным бизнесом
Дальше: Глава двадцать восьмая. Вы в полной...

Глава двадцать седьмая. Бионический офис

25 июля 2005 года, понедельник

Ну что ж.
Это заняло гораздо больше времени, чем ожидалось.
Наконец-то мы переехали в новый офис Fog Creek на 8-й Авеню, 535, спустя ровно десять месяцев после того, как я решил подыскать помещение взамен старого дома моей бабушки, где мы работали первые несколько лет, разместившись в спальнях и в саду.
Большинство менеджеров софтверных фирм знают, как выглядит хороший офис, как и то, что у них его нет и не будет. Похоже, проблема устройства офиса никогда не решается правильно, ничего не поделаешь. Компания арендует офис на десять лет, при этом менеджер команды разработчиков — последний, чьим мнением насчет дизайна помещения поинтересуются и кто увидит новые стойла... простите, офисные кабинки, только после переезда.
Черт возьми, уж в моей-то собственной компании я мог бы, черт возьми, сделать, как захочу! Вот и сделал.
Возможно, у меня завышенные требования к архитектуре. Вероятно, я чаще среднего программиста замечаю то, что меня окружает. Наверное, я слишком серьезно к этому отношусь. Но виной тому три причины:
Есть масса свидетельств того, что правильная организация рабочего пространства увеличивает продуктивность программиста; особенно это касается личных кабинетов.
Предлагая сногсшибательно роскошные личные кабинеты с окнами, гораздо легче нанять на работу суперзвезд, продуктивность которых в десять раз выше, чем у просто блестящих программистов. Если я в Нью-Йорке предлагаю зарплаты на уровне Бангалора, то мне нужны эти суперзвезды, поэтому на собеседовании хочу видеть их с отвалившейся челюстью. И это драма.
В конце концов, это моя работа. Здесь я провожу значительную часть своей жизни вдали от родных и друзей. Так пусть здесь будет красиво.
В сотрудничестве с архитектором Роем Леоне (Roy Leone), при наличии большой площади (426 квадратных футов на человека) и прогрессивного CEO, я поставил перед собой цель создать совершенное рабочее пространство для разработчиков.
Вот какие «системные требования» (архитекторы называют это иначе) я дал Рою:
1. Личные кабинеты с закрывающимися дверьми абсолютно необходимы, это не обсуждается.
2. Программистам нужно много электрических розеток. Они должны находиться на уровне стола, чтобы можно было подключать разные устройства, не ползая по полу.
3. Необходимо, чтобы любые провода для передачи данных (телефон, сеть, кабельное телевидение, сигнализация и так далее) можно было легко перекладывать, не вскрывая стены.
4. Офис должен позволять программистам работать в паре.
5. Те, кто постоянно сидит за монитором, должны периодически давать отдых глазам, переводя взгляд на удаленные предметы, поэтому мониторы не должны располагаться вдоль стен.
6. Офис должен быть местом для встреч, где можно приятно провести время. Встречаясь с друзьями после работы, чтобы поужинать, вы должны хотеть встретиться в офисе. Как поведал Филипп Гринспен (Philip Greenspun) (ccm.redhat.com/asj/managing-sojtware-engineerS//): «Успех вашего бизнеса зависит от того, насколько ваш офис является для программистов средой обитания. Для этого нужно, чтобы офис был лучше дома среднего программиста. Тут есть два пути. Первый -нанимать программистов из трущоб. Второй — сделать офис красивым».
Рой прекрасно справился с работой. Вот за это мы и платим архитектору. Думаю, Рой может стать чем-то вроде международного эксперта по разработке офисов для программистов. Вот как он реализовал мои системные требования в трехмерном пространстве:
Личные кабинеты. Мы получили не только просторные личные кабинеты с окнами, но и общее помещение с рабочими местами для не-разра-ботчиков, скрытыми в угловых альковах, так что каждый получил свое личное пространство, вне поля зрения других.
Стены между кабинетами и рабочими местами выполнены из высокотехнологичного полупрозрачного акрила, который мягко светится, пропуская естественный свет без ущерба для приватности.
Электронергия. Каждое рабочее место оборудовано двадцатью — именно двадцатью розетками. Четыре из них (оранжевые) подключены к источнику бесперебойного питания в серверной, так что UPS в каждом кабинете не требуется.
Розетки расположены чуть ниже стола в специальном коробе шесть на шесть дюймов, пролегающем вдоль всего стола. В нем можно аккуратно спрятать все кабели и закрыть его удобной крышкой под цвет стола.
Провода. Мы использовали систему Snake Tray, расположенную под потолком. Она начинается в серверном отсеке и проходит вдоль всего офиса, через каждый кабинет. Система полностью доступна, поэтому, если понадобится протянуть любой низковольтный кабель из точки А в точку Б, это делается легко и аккуратно. Мы переехали только в пятницу, и уже переделали офисную локальную сеть, что заняло у нас всего полчаса, так что кабель-канал Snake Tray оправдал возложенные на него надежды. В каждом кабинете есть свой 8-портовый коммутатор, к которому можно подключить свой ноутбук, и свой рабочий компьютер, и свой Макинтош, и тот старый комп, который вы держите у себя для того, чтобы читать «Joel On Software», когда основной компьютер перезагружается, устанавливая свежее обновление Windows, и у вас в запасе остается еще 3 порта. (Вниманию математических гениев: не нужно забрасывать меня письмами. Один порт служит для соединения с сервером.) Меня поражают глупые управляющие зданиями, которые все еще считают, что одного сетевого порта на кабинет достаточно. Может, это и так — для адвокатов.
Парное программирование. При установке стандартных Г-образных столов многие разработчики садятся в углу, поэтому, когда им нужно временно поработать с кем-то вместе, заняться программированием в паре или просто показать что-то на экране другому человеку, тому приходится тянуться через весь стол или смотреть через плечо первого. Чтобы избежать этого, мы заказали длинные и прямые столы, поэтому, где бы ни сидел программист, всегда достаточно места, чтобы другой человек мог поставить свое кресло и сесть рядом.
Отдых для глаз. Хотя мы и установили столы вдоль стен, в стене есть внутреннее окно, в которое видно наружное окно соседнего кабинета. Благодаря столь замечательному расположению не нарушается уединение, поскольку, хотя ваше окно и выходит в соседний кабинет, оно направлено так, что из большинства точек кабинета вы видите только маленький краешек другого кабинета и его наружное окно. В результате в каждом кабинете — окна на три стороны, два из них смотрят наружу, что реализует архитектурную схему двухстороннего освещения в каждой комнате. Это большое достижение: попробуйте сами придумать такую планировку, чтобы в обычном здании у каждого работника получился угловой офис. Еще одна причина не жалеть о деньгах, потраченных на хорошего архитектора.
Отдых. Мы оборудовали в офисе небольшую кухню и гостиную с диванами, большой плазменной панелью HDTV и DVD-плеером. Мы также собираемся поставить там бильярд и игровую приставку. Личные кабинеты означают, что вы можете слушать музыку на умеренной громкости без наушников, никому при этом не мешая.

Считайте сами

Месячная аренда нашего офиса при полной занятости составляет примерно 700 долларов на одного работника. Перепланировка уложилась в смету и практически полностью оплачена домовладельцем. Подозреваю, что 700 долларов на человека ближе к верхнему пределу для программистов во всем мире, но если при этом мы можем нанимать людей из 99,9-процентили вместо 99-процентили, дело того стоит.

 

Назад: Часть седьмая. Управление софтверным бизнесом
Дальше: Глава двадцать восьмая. Вы в полной...