Я присоединился к Microsoft Windows Azure сразу после колледжа и работаю в ней на протяжении последних восьми месяцев. И сейчас решил подвести итоги и рассказать о некоторых вещах, которым я научился за последние 8 месяцев.
Читая мой рассказ, вы можете подумать, что дела идут скверно, но это не так. Я усвоил, что с подобными проблемами можно столкнуться в любой крупной компании. Многие из них не являются характерными только для Microsoft, ведь у каждой компании есть свои проблемы. Я не говорю, что я несчастен, и не жалуюсь на жизнь. Это просто некоторые вещи, о которых я не имел понятия в колледже (нечто похожее на «ожидания против реальности»). Итак:
- Вы не найдете задокументированных данных в корпорации. Обычно данные внутри компании передаются посредством переговоров и практических занятий. Некоторые части сгенерированых данных только высылаются на электронную почту, но нигде не сохраняются. Это информация цифрового мира и она передается именно таким образом. Есть люди, в случае гибели которых, никто не сможет продолжить их работу или дописать код. И это нормально. Если бы это была моя компания, там хранились бы тонны документации.
- Дело не в том, что ты делаешь, а в том, как ты это продашь. Можно проводить дни, пытаясь улучшить базу исходных текстов, написать более надежный код или исправить чужие ошибки. Но до тех пор, пока все потраченные усилия не приносят прибыль, они не значат ничего. Никто не похвалит вас за исправление дизайна или архитектуры ядра. В действительности, вас могут даже за это обвинить. И это совсем не то, что я представлял себе, будучи студентом.
- Не все горят желанием проектировать. Не всегда работаешь с людьми, которые страстно хотят разрабатывать прекрасное программное обеспечение. В большинстве случаев у людей полно своих дел (например, посвятить время семье и детям) и написание лучшего кода не является их приоритетной задачей. И это нормально. Со временем я научился не ожидать от всех своих коллег рабочего энтузиазма.
- 2-3 часа кодирования в день - это отлично. Перед устройством на работу я был способен писать коды по 8-10 часов в день, работая над проектом. В рабочей обстановке для меня практически невозможно провести два часа, занимаясь непосредственно написанием кода. Я провожу большую часть времени, пытаясь понять, как работают чужие раскомментированные/нелицензированные коды, устраняя неполадки и посещая совещания. По-видимому, это касается не только меня, и бывают дни, когда никто из членов команды на самом деле не занимается проверкой источников. И это нормально.
- Отсутствие связи с пользователями открытых источников информации – это нормально. Я не встречал в своей организации практически ни одного блогера или разработчика открытых источников информации, которые бы посвящали часть своего времени общению с пользователями. Всем нравится находить ответы в Stack Overflow, но никто не хочет их дополнять. И я могу это понять.
- Почти никто здесь не интересуется внешним миром. Могу поспорить, что вы каждый день читаете о последних разработках в таких блогах, как Reddit или Hacker News. Здесь этого не делают. Я был удивлен, узнав, что никто из команды Windows Azure не слышал о компаниях Heroku или Rackspace, которые являются нашими прямыми конкурентами. Тот факт, что не все об этом знают, является абсолютно допустимым.
- Главное в работе в корпорации – чтобы эта штука работала. Если начальник просит создать кнопку, которая будет что-то запускать, никого не волнует, что за штуку ты сделаешь. Все в порядке до тех пор, пока она работает, а исправить ее можно в любой момент. (Хотя я ни разу не видел, чтобы кто-то это делал). В колледже меня учили, что качество кода также важно, как и его функционирование; но это оказалось совершенно не так.
- Копирование кодов – это нормально. Если кто-нибудь поймает вас на этом за пределами корпорации, у вас определенно будут проблемы. Я видел исходные файлы, скопированные во многих проектах. До тех пор, пока эта штука работает (см. выше), никого не волнует, насколько она уникальна.
- Стадия рецензирования кода может быть опущена в целях ускорения процесса. В нашей команде считается правилом хорошего тона отправить рецензию в том случае, если вы возились с чьим-либо кодом. Однако, как правило, это не делается, поэтому вы можете ждать ответ очень долго, и, возможно, после многочисленных запросов вам кто-нибудь ответит.
- Последняя версия программного обеспечения - вот еще! Здесь никого не интересуют последние версии программ. Почти 90% моих коллег используют старые версии Office, Windows, Visual Studio и .NET Framework. Бытует мнение, что новые версии нарушат существующий рабочий процесс. Вероятно по той же причине программное обеспечение некоторых предприятий работает на базе Java 1.3-1.5. Так что, я научился не ожидать от своих коллег использования последнего программного обеспечения.
- Ваша специализация, как правило, не имеет значения. Ежегодно на работу принимаются тысячи выпускников колледжей и их распределение в группы, которые нельзя поменять в течение следующих полутора лет, происходит обычно в случайном порядке. Неважно, изучали ли вы MongoDB, разрабатывали приложения для iOS или работали с сервером Apache, создавали ли вы сетевые библиотеки, дизайн для пользовательских интерфейсов или новый вариант меню «Пуск», а может быть вы открывали свой собственный проект. (Не беспокойтесь, я тоже ничего этого не делал). Вас нанимают для того, чтобы вы делали то, что нужно компании. Я такого не ожидал. Поэтому поиск интересующей вас должности в определенной корпорации может показаться трудоемким процессом.
- И напоследок, вы работаете лишь для того, чтобы ваши начальники и их начальники получали зарплату. Я не был осведомлен об этом факте в колледже.
Комментарии
Кто все эти люди этот человек)?..
Насколько я понял и насколько я знаю, это чушь двухлетней давности от какого-то турка Ahmet Alp Balkan. Может, такие переводы стоит предварять авторским комментарием? И, кстати, не мешало бы написать, чей это перевод, т.к. ссылка - на англоязычный источник.
Что касается работы выходцев из стран третьего мира, то я лично сталкивался с плодами их труда, работая в международной конторе. Этот чёртов вьетнамец оставил без сети всё Юго-Восточную Азию и Россию, просто не протестировав свой скрипт. И потом жаловался своим коллегам по вашингтонскому офису, что к нему никто не заходит в его каморку и не здоровается.
Да, ещё - автор называет reddit конкурентом Azure, и тут же постит там эту свою заметку. Ну очень непорядочно.
Приблизительный перевод корявого английского, но смысл не искажён. В компаниях так и работают. Поэтому, если не согласен, лучше быть одиноким волком.
Момент истины: "Неважно, что делаешь, важно продашь ли это".
И таки напрашивается вопрос о связи совести у программера и качества его кода. Хотя это можно распространить на любую работу: делаешь, чтобы как-нибудь сбагрить или стараешься, что называется, как для себя.
Кажется, маркетинг сейчас насильно "избавляет" работников от подобных переживаний.
Этот вопрос всегда был актуален, и когда все пращи и копья делали, и когда все код пишут и железки паяют. "Люди? Люди всё те же"...