В течение трех месяцев я смог найти замену и по очереди избавиться от людей, которые демотивировали команду своим подходом к делу. Это было нелегко, очень рискованно, но, не разбив яиц, омлет не приготовить, ведь так?
Свежая кровь зарядила департамент, мы стали успевать делать в десять раз больше, чем раньше. Те программисты, которые остались из старой команды, начали тянуться к новичкам, их навыки и умения стали совершенствоваться.
Да, увольнять людей не очень приятное занятие, но необходимо с этим смириться и привыкнуть. Если того требуют интересы дела, то надо иметь смелость указать человеку на дверь, заменить его лучшим специалистом.
Относиться проще к таким процессам поможет понимание простой истины: лентяй занимает место хорошего парня, который сможет себя здесь показать с лучшей стороны, для которого это будет этап в хорошей карьере.
Команда – самый важный составляющий элемент работы. От того, как вам удастся подобрать людей и наладить с ними отношения, зависит сможете ли вы реализовать свои планы и амбиции или нет.
Технический департамент «с нуля»
В этой главе я хочу поделиться опытом и рассказать о проблемах, с которыми сталкивается технический директор, когда ему приходится организовывать департамент «с нуля».
Вы получили должность, дождались своего первого рабочего дня. Возможно, вы не спали всю ночь, а может быть, наоборот. С утра, плотно позавтракав, а может, и не завтракав вовсе, вы отправляетесь на новую работу. Новый путь, новое расписание. Вот это здание, дверь, ресепшн. «Здравствуйте, я ваш новый учитель технический директор». И понеслась! Что делать дальше? За что хвататься? С кем говорить?
В одной из компаний, где мне приходилось работать, передо мной стояла задача возглавить фактически отсутствующий до меня технический департамент давно существующей фирмы.
В первый свой рабочий день я обнаружил лежащую в руинах IT-инфраструктуру компании. Два этажа офиса, розетки, оторванные от стен, удлинители через всю комнату, серверная в офисе – спагетти в кастрюле видели? Вот вроде того. Сервера в сети – Sun-ы вперемешку с самосборными серверами. На некоторых нагрузка подскакивала до 60 попугаев в top-е. РНР-код в стиле начала 2000-го года, уф!
При этом в офисе работало около 50 человек, у которых на компьютерах постоянно что-то ломалось, появлялись вирусы, не работала сеть и так далее. Вы, наверное, представляете, какой объем задач по администрированию генерируют 50 человек? Очень захватывающе!
Тезисно отмечу несколько ключевых моментов действия в такой ситуации.
Начинать, конечно же, надо с плана действий. Более того, если бы у меня не было представления, как выходить из сложившейся ситуации, то меня, скорее всего, не взяли бы на эту работу.
Если вы попали первый раз на позицию технического директора, то примерное представление о плане действий вы имеете, но, тем не менее, озвучу свой вариант.
Имеет смысл определить основные участки работы, пока еще не существующего технического департамента, например:
1. Во-первых, это офис. Администрирование сети и поддержка парка внутренних серверов и рабочих станций сотрудников компании;
2. А во-вторых, серверы в сети Интернет и сайты, их поддержка и разработка.
Административные вопросы
По вопросам сетевого и системного администрирования план был достаточно прост: разобраться с тем, что есть, обеспечить бесперебойное функционирование, определиться с путем развития и начать его реализовывать.
План получился примерно такой:
1. Найти толкового системного администратора, который сможет заниматься как администрированием офисной сети и техники, так и будет в состоянии справляться с серверами в Интернете. Да, необходимо учиться делегировать полномочия;
2. На администратора переложить текучку по поддержке офиса. Все задачи валились на меня, и поначалу моя работа очень походила на работу админа-эникейщика. Но на старте надо быть готовым выполнять фактически любую работу;
3. Разобраться в офисной инфраструктуре;
4. Разобраться в хитросплетении сайтов на существующих серверах. Делал сам, поэтому к моменту найма системного администратора у меня уже было понимание, что и как у нас работает, где лежит, на что ссылается и т. д.;
5. Обновить парк серверов в Интернете. Решение о том, что парк надо обновлять было принято одним из первых. Новые серверы закупались и разворачивались на площадке в несколько заходов. Фактически закупки начали осуществляться еще до того, как была закрыта вакансия администратора;
6. Перенести существующие сайты компании на новые серверы, решив тем самым проблемы производительности на старых машинах;
7. Одна из самых важных задач. Настроить резервное копирование серверов, как в интернете, так и в офисе. Потеря данных чревата серьезными неприятностями, и теперь полную ответственность за это теперь несете вы;
8. «Перетрясти» стойку в офисе, чтобы в конфигурацию можно было вносить изменения и не бояться, что что-нибудь отвалится в самый неподходящий момент;
9. По возможности начать обновление парка офисной техники. Как правило, если компания существует давно, то пользователи работают на каком-то невообразимом старье, которое заставляет постоянно тратить время на его реанимацию;
10. Задача с небольшим приоритетом. Привести в порядок кабельную систему (т. н. СКС), прикрутить и подписать розетки и так далее. Оговорюсь, что администратор смог заняться этой задачей примерно через год. Хорошая практика: если что-то где-то ломается, то эту часть делать уже по-новому, переделать розетки, проложить провода «по уму» и так далее.
Помимо этого, из незапланированного, но того, что пришлось делать в обязательном порядке, навскидку отмечу:
1. Переезд в новый дата-центр;
2. Смена поставщика услуг Интернет в офисе;
3. Организация резервного Интернет-канала в офисе;
4. Закупка и настройка новой АТС, увеличение количества телефонных номеров.
Вопросы, связанные с разработкой
Для систематизации сайтов был разработан следующий план действий:
1. Разобраться с тем, что есть. Составить план серверов, в т. ч. размещение сайтов по серверам. То, что не используется – свернуть в архив. Хорошая практика: не удаляйте безвозвратно то, что не используется. Точно пригодится!
2. Решить текущие проблемы с производительностью. Да, пришлось самому сесть, разобраться в коде, немного его «похачить», чтобы убрать долгие запросы, включить кеширование, где это было возможно;
3. Набрать команду разработчиков: ведущий разработчик, несколько РНР-разработчиков, дизайнер-верстальщик. Сейчас бы я еще добавил одного-двух тестировщиков;
4. Составить план по рефакторингу сайтов компании;
5. Начать реализовывать его.
Оговорюсь, что в самом начале между мной и руководством компании была достигнута договоренность, что набранная команда не осуществляет доработку существующих сайтов, как очень сильно устаревших. Найти вменяемых разработчиков, которые бы и PHP4 поддерживали, и современные сайты бы писали, было невозможно. А набирать две группы разработчиков – дорого.
Вместо эволюционного рефакторинга было принято решение разрабатывать сайты «с нуля», экспортируя уже накопившиеся данные. За полтора года этот подход себя полностью оправдал, удалось сколотить замечательную команду и переработать 25 основных сайтов компании, включая флагманский проект с посещаемостью до 200 000 уникальных посетителей в сутки.
Пословица «лиха беда начало» очень верно отражает то, что происходит в первые полгода работы на новом месте. Только качественное планирование, распределение ресурсов и рабочего времени позволит вам справиться с нагрузками первых месяцев работы.
Старайтесь не забывать про отдых, полноценное и регулярное питание, хороший сон. Возможности организма не безграничны, поэтому главное – не сломаться. Постепенно процессы будут налаживаться, и «горячка старта» спадет. Работа «встанет на рельсы» и пойдет по ним, нагрузка начнёт снижаться.