"Цифровой журнал «Компьютерра» № 2" - читать интересную книгу автора (Компьютерра)

Iseman ICEBERG Как я работал корпоративным программистом

Наш читатель, скрывающийся под ником Iseman ICEBERG, рассказывает о своей нелёгкой судьбе программиста в отдельно взятой ИТ-компании. Орфография и пунктуация автора сохранены.


Расскажу небольшую историю для ИТ специалистов и других, интересующихся работой в сфере высоких технологий.

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

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

Приняли меня на работу с испытательным сроком в 3 месяца и з/п на период испытательного срока в 1000 евро и после в 1500 евро.

Теперь о самой работе.

Первая неделя у меня ушла на то, чтобы организовать рабочее место, там всякие программы поставить, настроить сеть, принтеры и т. п. Это все потому, что самостоятельно это было запрещено делать, только через админа, которого хрен дозовешься. Бред какой-то. И это все для программиста с пятнадцатилетним стажем, особенно когда видишь, что админ в некоторых вопросах откровенно «плавает». Смешно. В последствии мне такое положение надоело и я сам себе сделал локального админа и ставил что нужно для работы самостоятельно. Добавлю еще, что интернета выделялось каждому по 100 мб в месяц через прокси и были закрыты всякие ICQ, Skype и т. п. во вне. Прям концлагерь какой-то.

Еще три недели ушло на какие-то стремные тесты по SQL. Решали наверное, допускать до проектов или выгонять. Хотя я уже выполнил тестовое задание присланное мне по электронной почте еще до проводимых собеседований.

Теперь об организации труда IT отдела. Просто оцените количество должностей и зарплаты:

ИТ босс — 3000 евро.

Программисты: senior Delphi — 1500 евро, 2 junior Delphi — 1000 евро, senior Java, junior Java — 1000 евро.

2 сисадмина, 1 админ SQL, 5 менеджеров проектов(типичный офисный планктон)! — все с з/п 1000+-200 евро.

И вот через месяц началась собственно работа.

Поставили меня в помощь Junior Delphi, который писал модули для senior Delphi. Т. е. я писал подмодули для модулей основной программы и еще функции для SQL сервера. Недолго продолжалось мое сотрудничество с Junior — через пару месяцев он уехал в США на ПМЖ. Когда он уехал, я уже дописывал его модуль.

Тут подошел к концу испытательный срок. Накануне спросил кадровика — прошел я испытательный срок или нет? Сказала, что прошел. Это к тому, что выходить мне на работу или нет. А вот при получении очередной з/п от ИТ босса в конверте обнаруживаю, что зарплата старая. Спрашиваю ИТ босса — в чем дело? А он мне, отводя глаза, говорит, что у меня производительность труда низкая, да и кризис на дворе. Хотя сам по прежнему получает по 3000 евро. Ну думаю, зараза, подставил слегка, мурыжить целый месяц на испытательном, потом хотеть, чтобы с ходу в новом проекте выдать производительность Seniora, который уже два года проект с нуля пишет. Ну думаю, ладно, потерплю — 1000 евро в кризис тоже хлеб. Хотя сам про себя уже думаю — не видать мне той обещанной зарплаты.

И вот после этого разговора переводят меня на поддержку уже другого проекта SQL+Delphi. Посмотрел я исходники на сервере и в коде клиентской части — волосы дыбом встали. Как вам названия полей в таблицах баз данных вперемешку на русском и английском языках. А объявления переменных прямо в исходниках Delphi, когда при смене сотрудника, работающего с клиентской частью, надо весь проект перекомпилировать, потому что для данного сотрудника права доступа на пункты меню были прописаны прямо в теле программы, а не вынесены в настроечную таблицу. Ну ладно, думаю, поработаем еще немного тут, а сам уже размышляю, что долго в этом дерьме ковыряться не смогу, надо подыскивать что-то более приличное.

Теперь как организован процесс труда. Менеджеры проекта таскают задания в письменном виде, правда расписаны коряво. Дали задание — говорю неделя на реализацию. Работаю спокойно пару дней, вдруг менагер прибегает выпучив глаза — срочно надо какой-то отчет делать, берешься, пока вникнешь, пока напишешь, пока отладишь — пара дней долой. Потом вдруг админ SQL прибежит, посмотри, говорит тут база виснет в запросе, баг отловишь — день долой. Вобщем, сроки удлиняются ровно в два раза.

Ну тут уже ИТ босс начал ворчать, что я медленно работаю, я говорю, готов каждый день в письменном виде расписать. Расписывал пару недель, пока ему это не надоело. Все чисто по времени вышло, наверно. Потом говорит, что Senior вдвое быстрее работает, а я говорю — он с чистого листа пишет один уже больше двух лет, а мне в чужом коде, где человек пять порезвились, что по почерку видно, приходится разбираться, где в проекте главное правило — отсутствие любых правил.

После пары модулей я стал уже сроки закладывать в два раза больше, чем нужно с расчетом на такое развитие событий. И по законам Мэрфи события развиваются обратным образом, т. е. задание делаешь ровно за неделю — неделю маешься.

Или такая засада, менеджер говорит делай форму, как я нарисовал, а я предлагаю немножко подправить — пустые места уменьшить, часть элементов поменять местами для юзабилити, он упорствует — делай как я сказал. Ладно, делаю. Потом на сдаче модуля ИТ босс претензию выкатывает, что форма такая позорная — я хлоп задание на стол смотри сюда, он говорит я бы тут и тут изменил, тут я достаю свой вариант формы, который почти один в один совпадает с предложенным им. Вижу менеджеру плохеет. Ну в итоге пришлось переделывать на мой вариант, — опять сдвиг сроков.

Или вот еще. Написал функцию для SQL сервера и рабочей базы. Проверил все на тестовой базе — работает. Функция требовала добавить одно поле в таблицу базы данных. Добавил поле в рабочую БД, добавил функцию. Вдруг через день прибегает ДБА, говорит что перестали какие-то операции выполняться в других модулях системы. Это как же надо извратиться, чтобы функции так писать, что добавление поля эту функцию ломает. Условно говоря, прикрутил дополнительное зеркало к автомобилю и вдруг отказала коробка передач. В итоге я же и виноват оказался, наказали материально.

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

После этого Juniora приняли другого парнишку, но прикрываясь кризисом назначили з/п на 300 евро меньше чем у меня. Парнишка вроде прижился, но оказался таким же аутистом, как и Senior.

Ладно, работаю дальше. Время к отпуску, я хвосты подчистил, модули доделал и ушел в отпуск на две недели. К тому времени уже разобрался в чужом быдлокоде вдоль и поперек, хотя никаких комментариев в коде и манулов в проекте отродясь не было. Если считать чистого времени, то заняло это у меня около трех месяцев.

Ладно. Прихожу после отпуска. Работаю пару дней. Вызывает ИТ босс на разговор о перспективах сопровождаемого проекта. Поговорили, что и как дальше делать. Тут под занавес разговора так спрашивает, а каковы перспективы развития проекта и стоит ли его развивать. Я спрашиваю — честно сказать? Он говорит — да. Я вкратце и сказал, что руки оторвать архитектору БД и быдлокодерам, что там порезвились — слишком мягкое наказание. Тут вижу он краской наливается. Смотрю и думаю — в точку попал, ИТ босс и есть тот самый архитектор и первый быдлокодер проекта. Какая неожиданность. Тут он помолчал, краска с его лица медленно отхлынула и он мне заявляет, что меня сокращают в связи с кризисом. Ну думаю, ладно пусть другой в твоем быдлокоде ковыряется, тем более, что и платить можно меньше и умничать не будет.

Вот в тот же день я уже и ключи сдал — сбылось тайное желание уйти из этого гадюшника, а я еще думал, что меня будут уговаривать остаться, когда буду уходить.

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

Потом через неделю после увольнения я эту вакансию увидел уже в другом КА. Висела она там примерно пол года.

Вот такие есть компании, где надо ишачить за копейки и держать свое мнение при себе. Думаю, что много программ пишется похожим образом, где 90 % бюджета съедается боссами, менеджерами, пиарщиками, а 10 %, если не меньше достается программистам. Вот такое качество и имеем.