четверг, ноября 01, 2007

Ура! Испытательный срок закончился

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

Чтобы побеседовать с 12 сотрудниками, ему понадобился целый день. Впрочем, техническому директору и менеджеру по персоналу досталось куда больше, чем рядовым программистам. Оба, выходя из комнаты для собеседований, казалось, глотали ртом воздух. Схватив сигареты, они бежали курить на балкон. Очередной сотрудник звал следующего, как бывает перед кабинетом врача. Наконец, подошла моя очередь.

Я увидел перед собой очень молодого, преждевременно лысеющего человека, со звучным низким голосом. Он представился и спросил, есть ли у меня к нему вопросы.

Я поинтересовался, когда начнется тот "большой проект", на который меня приглашали. В течение трех недель я занимался исключительно поддержкой старой программы. Оказалось, с самого начала планировалось, что 50% будет уходить на доработку старого проекта, а 50% -- на новый проект.

Директор, в свою очередь, спросил, с чем связана задержка в выполнении текущих задач. Я объяснил, что веб-сервис, который я поддерживаю, требует фундаментальной переработки. Монолитное приложение необходимо разбить на модули, минимально зависящие друг от друга. Иначе мы имеем большую "простыню" кода, где все взаимосвязано. Дернешь в одном месте -- не знаешь, где развалится. При таком положении дел говорить о сроках не имеет смысла. Я ничего не сказал о полном отсутствии документации, комментариев, тестов и непрофессиональном уровне кода на языке Python, чтобы не подставлять автора.

Следующий день прошел как обычно. А вечером, около одиннадцати, мне позвонил непосредственный начальник и сообщил, что есть прямое указание от Виктора меня уволить. Как выяснилось, моя персона с самого начала вызвала антипатию у босса и его матушки-бухгалтера.

Первой моей реакцией было облегчение.
В полдень я заехал в офис за расчетами и документами. Слава богу, что все так быстро закончилось.


* * *
Испытательный срок -- это всегда взаимная проверка. Попробую сформулировать, почему фирма, куда я устроился, не прошла испытательного срока с моей точки зрения.
  • Как бы я себя ни уговаривал, перспектива разгребать чужой мусор не прельщала. Программисты как правило не любят заниматься поддержкой чужого кода, и я не исключение. Я не пошел бы в это место, если бы мне сказали, чем предстоит заниматься.

  • Программы, которые предполагается поддерживать и развивать, причем коллективно, должны отвечать определенным требованиям. Требуется документация, как минимум модульная архитектура, тестирование. Другое дело -- авторские продукты одноразового использования (каменный век).

  • Когда передо мной поставили задачу, я по пунктам перечислил все кричащие недостатки программы, подробно описал, что и как необходимо исправить -- начиная с пользовательского интерфейса и заканчивая внутренней архитектурой, чтобы сделать продукт жизнеспособным. (Впрочем, сама идея выглядит сомнительно, поскольку у Гугла уже есть не в пример лучше сделанный аналогичный сервис).

    Вместо того, чтобы воспользоваться моими знаниями, мне показали на дверь.

Мораль:
  • Как ни примеряйся, а выбор места работы -- лотерея. Пока не начнешь трудиться, не узнаешь, где грабли.
  • При собеседовании надо знакомиться с директором. Даже хороший коллектив не спасет от начальника-самодура.
  • В семейном бизнесе (муж-жена, мама-сын и т.п.) ловить нечего.

2 комментария:

Анонимный комментирует...

when you have a lot of experience, "test period" need to you less to them

Наувул-Наувул комментирует...

Я знаю только одного человека, который мог это написать:

a/ он работает только в Unix-консоли, причем без русского языка. Соответственно, веб-страницы он смотрит не иначе как Links-ом.

b/ он программировал когда большинство его коллег учились в школе.

Его снимки имеются на этом блоге, в частности: вот тут