По мнению абсолютного большинства жителей этой планеты, разработчики это - какие-то зажравшиеся люди, которые сидят в своих уютных креслах, занимаются какой-то фигнёй и получают за это непомерные деньги. Эталонные тепличные условия и голубая мечта, которая выродилась в пренебрежительное “Войти в айти”. Но если предположить, что всё действительно так, как принято считать - и стул удобный, и денег платят много, и работа интересная - то почему же программисты, как и все остальные люди, иногда меняют место работы? Может быть, недостаточно платили? Или кресло было не такое удобное? Что-то же должно побудить человека, у которого всё хорошо (по мнению окружающих), выйти из зоны комфорта и пойти искать новое место работы. И что именно он ищет на этом новом месте? Давайте поговорим об этом. И да, многое здесь может показаться банальным, но почему-то достаточное количество людей предпочитают не брать в расчёт и половину из этих банальностей. Или делают вид, что им всё равно. Современное IT завалено технологиями. Настолько завалено, что уже не знаешь, за что хвататься, чтобы оставаться в тренде, и есть ли вообще смысл в нём оставаться. Всё бросить и пойти в серверлесс? Сосредоточиться на распиле монолитов на микросервисы? А ведь ещё буквально вчера анонсировали очередной ЯП_name, и он выглядит неприлично привлекательно.  Где правильный ответ, не знает никто, и только время покажет. Понятно только одно - если тебе интересно ковырять UI на JS, не надо идти работать туда, где тебе предлагают 90% времени тратить на C++ бэкенд. Тебе нравятся крутые алгоритмические штуки пополам с математикой? Тогда вряд ли ты будешь особо счастлив в команде, рисующей веб формочки. Для многих это сюрприз, но под 90% современной разработки - это безумная корпоративная скука, а делаем мы приложения, которые обычным людям, за пределами этих корпораций, совершенно не интересны. Если ты сможешь описать разрабатываемый тобой продукт далёким от IT родственникам, просто показав пальцем на приложение в их телефоне, то тебе несказанно повезло. А ведь кому-то такая возможность будет важнее всего остального. Как все мы понимаем, ничего в этом мире не появляется просто так из воздуха. Что-то нам нравится, что-то нет, а к чему-то мы равнодушны. Вот возьмём, например, баннерную сеть, показывающую тотализаторы, вебкам, инфоцыган и прочее уверенно блокируемое адблоком. Вполне себе модные веб-технологии, передовые штуки в проде, интересные задачи, над которыми трудится молодой (не факт) и дружный (ещё более не факт) коллектив, состоящий из разработчиков, тестировщиков и дизайнеров. Плоды своей работы им помогает продавать отдел продаж, продакты думают над стратегией развития, а бухгалтерия следит за деньгами. То есть всё ровно так же, как и в любой другой белой IT компании. Просто здесь продукт - это баннерная сеть с порнухой. Это ни хорошо, ни плохо, просто когда кого-то это может смутить, другой поинтересуется только регулярностью выплаты зп, соцпакетом и офисными удобствами.  Нет среди нас таких людей, кто не читал бы отзывы о потенциальном работодателе. И практически нет никого, кто не попадал бы в их ловушку. Тут важно понимать, что в подавляющем большинстве отзывы пишут исключительно раздражённые люди, которые не смогли пройти собеседование, несмотря на всю свою гениальность и ясноокость (им так мама сказала). Кто в этом виноват? Конечно же, тупое собеседование, тупые вопросы, тупой интервьюер, тупой карандаш и тупое что угодно, кроме провалившегося кандидата. Отличные и ценные отзывы, иногда даже весело написанные, однако смело их пропускаем и не обращаем внимания. Следующая немалая часть отзывов пишется людьми, которые действительно работали в данной компании, но занимались чем-то, не связанным с IT. Продажи, маркетинг, АХО и так далее. На эти эпистолярии уже можно потратить своё время, однако надо постоянно напоминать себе, что эти люди жили в другом мире, где есть KPI, завязанные на количество продаж, конвертация кликов и прочие увлекательные штуки, от которых разработчики бесконечно далеки. Но на какие-то общие вещи, типа описание офиса, социальных программ и всего в этом духе стоит обратить внимание. Ну и оставшиеся после такой фильтрации единичные отзывы будут почти релевантны. Их пишут или действующие сотрудники компании из нашей области, или уже уволившиеся. Тут мы сразу откидываем сладкий елей который льют то ли фанатики, то ли нанятые боты, и старательно ищем моменты, где компанию адекватно ругают. Причём именно ругают и именно адекватно. Не истерично орут про идиота начальника и доисторический стек, а пишут осмысленные вещи, которые вполне можно принять за аргументы в дискуссии с подобным тебе здравым собеседником. Нашли такие отзывы? Тогда читайте и положительную их часть. Скорее всего там написана правда без перегибов, отражающая реальное положение вещей внутри компании. Вот только таких отзывов может оказаться два на пять страниц мусора. Так что ищите и обрящете.   Есть такой замечательный (без шуток) язык COBOL. Один из первых языков программирования, созданный аж в начале шестидесятых. И за счёт этого на нём писано-переписано столько бизнес-логики, что никакой Java в страшном сне не снилось. А вот что не снилось в страшном сне нам, так это то, что огромное количество этих приложений продолжает успешно функционировать в проде огромных компаний. Банкиры, финансисты, транспорт с логистикой и так далее. Если думаете, что я шучу, то вот вам для посмеяться проект от IBM для сборки контейнера с кодом на коболе внутри.   Это я к чему: есть целые компании, которые занимаются поддержкой и развитием (если это так можно назвать) подобных вещей. За это платят хорошие деньги, так что почему бы этим и не заниматься? В таких компаниях вечный день сурка и не покидающее ощущение стабильности. Будет ли там ветер перемен и шанс сделать что-то красивое и великое с нуля? Скорее всего, нет.  Поэтому прикидываем в голове, что нам интересней: вальяжно бежать многолетний марафон к цели, которая будет бесконечно удаляться, или же раз в неделю стартовать забег на стометровку, которая может закончиться пеной у рта. И если сейчас у вас в голове промелькнула мысль вроде “Ну каким же надо быть недалёким человеком, чтобы выбрать другой вариант”, значит, реальность приготовила для вас ещё один сюрприз. Никто не спорит, что есть увлекательные вещи, на которые не грех и всю жизнь потратить. Ну или не всю, но лет пять-десять ковырять какую-то одну тему с горящими глазами может быть действительно весело настолько, что не захочется отвлекаться и особо смотреть по сторонам. Но что делать, когда огонь в глазах поутихнет, а буквально в соседнем кабинете коллеги пилят нечто крайне интересное, и ты понимаешь, что надо срочно дезертировать в их сторону? Придётся вскопать тимлиду/менеджеру огород на даче или можно просто попроситься на перевод? А можно ли вообще менять проекты? А чаще, чем раз в год? А если можно, то надо ждать, когда найдут мне замену - или дела сдал и будь счастлив в соседнем отделе? Так много вопросов, так мало ответов. Компании, как и люди, все разные. Где-то к переходам между проектами и отделами относятся спокойно и даже поощряют, если сотрудник уверен, что сможет таким образом работать более эффективно. Ну а где-то считают, что если тебя брали красить забор в синий цвет строго справа налево, то вот крась и не отвлекайся. А то вдруг захочешь другим делом заниматься, а забор так и останется некрашеный. Как есть семь смертных грехов в резюме (коммуникабельность, обучаемость, стрессоустойчивость и так далее), так давно уже есть некий гигиенический уровень обеспечения комфортной работы в IT-сегменте. На предлагающих работать без оформления и соблюдения ТК уже смотрят как на умалишённых. Отсутствие бесплатного кофе и печенья для многих повод встать и уйти с собеседования (ну или отключиться от зума, если речь о современных реалиях). ДМС, оплачиваемые поездки на конференции, курсы английского, проведение митапов и тренингов, способы как-то отвлечься от рабочей рутины и разгрузить мозги. Всё что угодно, только приходи и работай.  Но человек - существо интересное и легко приспосабливается к окружающим условиям. А потом начинает считать их нормой. На кофе скидываемся сами? Странно, конечно, ну ладно. У стула отвалилась спинка, а новые будут покупать только через год? Ну ладно, прикручу как-то скотчем пока. Со следующей недели туалетную бумагу приносим сами? Ну наверно с деньгами у компании сейчас туго, поэтому сами принесём, ничего страшного. Так что никогда не будет лишним узнать, а как оно происходит у других. Вполне вероятно, что пока тебе годами обещают расширение списка клиник, входящих в ДМС, с пяти до десяти, у других в ДМС давно вписаны дети и половина родственников. Жаль только, что иногда люди воспринимают соцпакет как приглашение залезть на шею и свесить ножки. Не надо так. Любое сотрудничество должно быть взаимовыгодным. Все мы были студентами. Ну а кто не был именно студентом, всё равно был в том возрасте, когда в сутках было 36 часов, питаться можно было дошираками, а основная суть работы воспринималась исключительно в ключе набора опыта и проявления своих лучших качеств в глазах начальства. Потом мы выросли, повзрослели, кто-то даже семью завёл. И в итоге пришли к выводу, что не жизнь для работы, а работа для жизни. И что времени мало, и на что его тратить - надо решать самостоятельно. Но, к сожалению, некоторые руководители предпочитают упускать этот момент. Ну, или делают вид, что упускают. И по-прежнему уверены, что мы же тут одна команда, мы же работаем во благо компании, она нам этого не забудет и будет очень благодарна. Но мы выросли и хотим сами выбирать, на что нам тратить своё свободное время. Мы не меркантильные сволочи, которые только спят и видят, как вытрясти побольше денег из работодателя. Нет, мы готовы и за кодом посидеть на выходных, просто мы хотим потом получить компенсацию за пропущенный выходной. Может быть, в натуральном виде (отгулом в удобное мне время), а может быть, и деньгами. Но уж точно не мотивацией уровня “Работать в нашей компании большая честь”.   Поэтому добивайтесь в прямой форме ответа на вопрос “А что тут у вас с переработкам?”. В этом нет ничего постыдного или неудобного. Мы тут на работу устраиваемся и хотим обговорить все условия на берегу. Это нормально и, самое главное, правильно с обеих сторон. Рыба гниёт с головы, а команда - из-за самодурства её руководства. Если в офисе принято соблюдать цветовую дифференциацию штанов и при входе в кабинет делать три раза Ку!, тут уж каждый должен сам для себя решать. Но если более серьёзно, то общение с будущим тимлидом/руководителем на собесе может дать практически полную картину внутренней кухни. Ведь вряд ли он именно для вас надел свою лучшую грязную футболку и старательно матерится на тупое руководство и медленных подчинённых, из-за которых его регулярно лишают премии. В работе он наверняка на 100% абсолютно корректный и идеально воспитанный человек, постоянно носящий костюм тройку и всей душой переживающий за коллектив. Да и с командой будет не лишним заранее познакомиться хотя бы мельком и в общих чертах. Осталось придумать, как это реализовать. Пока тебя собеседуют и офера на руках нет, то будет несколько странно водить каждого человека на показ, будто невесту на выданье. Вот это твои потенциальные коллеги, вот это твоё потенциальное место. А вот это проект, который мы тебе не дадим, потому что через неделю напишем, что ты нам не подходишь. Но если всё же получается реализовать такую идею хотя бы на последнем собеседовании (если их несколько), даже если просто сходить с командой на обед, то это реальный бонус. Этот пункт состоит из двух частей. Как и сам офис. Из внешней и внутренней.  С внешней частью всё просто: гораздо приятнее думать об эффективности нового алгоритма, созерцая дельфинов дремлющих в тихих водах небольшого заливчика перед окнами, чем утыкаться носом в пустырь, подходящий для съёмок фильмов про последствия ядерной войны. Ну и не забываем про удобное расположение. Заливчки и дельфины - это круто, но если туда два часа на ослике добираться, то уже никаких видов наблюдать не захочется. С внутрянкой всё интереснее. Мы не будем здесь рассматривать вырожденные случаи, когда рабочие столы были украдены со двора соседней школы, а роль стульев исполняют пивные коробки. Нет, основная война здесь идёт между опен-спейсом и отдельными кабинетами. Копий тут сломано много, но сторонники кабинетной теории выглядят намного увереннее, и всё увеличивающееся их количество - тому подтверждение. Некоторые даже говорят, что поклонники опенспейсов окончательно признали своё поражение.  Работа программиста требует максимального сосредоточения и отсутствия внешних раздражителей. Поэтому все сказки про эффективность опенспейсов и шумоподавляющие наушники предлагается оставить маркетологам, а нам и в кабинетах по шесть человек живётся отлично. Ну или максимум по восемь, если команда большая. Поэтому попросить провести небольшую экскурсию по офису отличное решение. Достаточно просто пройтись по коридорам, мило болтая с рекрутёром, заглянуть на кухню, да пусть даже и в туалет зайти. Всё это даёт практически полное представление не просто об офисе, а об отношении работодателя к своим сотрудникам.   И сестра её - премия. Долго мы шли к этой теме, хотя кажется, что деньги - это крайне важно. Сейчас объясню, почему так получилось. Ни для кого не секрет, что на сегодняшний день работа программистов оплачивается весьма и весьма хорошо. Конечно здесь бывают пограничные случаи, когда имея зп в (условно) 300к, на следующий день 270 из них уходят на кредиты/ипотеки/кружки детям, и мы обречены выслушивать стоны про несправедливо маленький уровень оклада. Но если откинуть такие экстремумы, в сухом остатке у нас получается, что программист, существующий в рамках текущего рынка труда и здраво относящийся к деньгам, вполне может себе позволить не сильно задумываться о конкретной дате ближайшей выплаты зп и знании точной суммы своего оклада. Грубо говоря, приходя в магазин за продуктами, новыми штанами и прочими обиходными товарами, он всегда уверен, что деньги на карточке у него есть и он может не слишком сильно себя ограничивать в выборе. А то и вовсе не ограничивать. Когда встаёт вопрос о покупке чего-то более дорогого, тут уже надо или поднакопить, или взять кредит. Но опять же, это будет лишь вопрос о выделении исключительно комфортной суммы в месяц, которая будет откладываться на обеспечение этой цели и которая никак не повлияет на привычный образ жизни. И это прекрасно.  И тут появляется интересная проблема: а если тебе и так живётся комфортно и на всё хватает, то будет ли банальное увеличение зп достаточным стимулом для смены места работы? Давайте только уточним, что речь здесь не идёт про вырожденный случай, когда к текущей зп приписывают сзади нолик. Или два. Тут нервы у кого угодно не выдержат. Нет, речь идёт про рыночные 10-15% прироста. Да, конечно, всегда есть и колбаса вкуснее, и машина красивей и прочие увлекательные вещи, для которых надо увеличивать свой доход. Однако сами по себе деньги перестали быть самоцелью для очень многих. Поэтому они и не на первом месте у многих разработчиков. Хотя их роль никто не пытается приуменьшать. Стэк технологий важно понимать не только в конкретном моменте прямо здесь и  сейчас, но и спросить про общее отношении компании к его обновлению и следованию окружающим тенденциям. Насколько быстро внедряют новые версии языка? Как долго апрувится обновление IDE? Через какие тернии надо пройти для внедрения новой практики и так далее. Да, мы, конечно же, отдаём себе отчет, что окажись мы в стартапе на стадии бурного роста, творить можно любой беспредел, особенно если нет планов задерживаться на много лет. А вот если судьба нас занесёт в развесистый энтерпрайз, то там уже нам просто так даже чихнуть в сторону не дадут. Но всё должно быть в разумных пределах, чтобы не приходилось использовать блокнот вместо адекватной IDE. Совершенно нелишним будет разузнать про железо, с которым придётся работать. Обещание выдать новый мак - это прекрасно, но какого он поколения и как часто происходят обновления? Если в первый день дадут ноут с i5 шестого поколения, это недоразумение на пару месяцев или ближайшие три года? А что происходит, если нужна новая железка на стейджинг? А если две и не самые простые?  Хотя тут главный вопрос в удобстве работы. Если для твоего текущего проекта не нужны безумные гигагерцы и терабайты (ну вдруг ты пишешь в блокнотике на том самом коболе), то и гнаться за топовым железом смысла нет. Вот если проект поменяется, а возможности оперативного апгрейда под его нужды нет, вот тогда это проблема.  Это всё инструменты, с которыми предстоит работать, и чем комфортнее они будут, тем производительней будет эта работа. Конечно, тут нет прямой корреляции между количеством ядер, строчками кода и их эффективностью, но техника не должна становиться узким местом и сдерживать души прекрасные порывы. Возможно, стоило упомянуть этот пункт выше, вместе со всеми остальными в разделе про социалку, но я решил его вынести из-за значительно больших масштабов, нежели компенсация фитнеса. Релокации бывают разные. Можно переезжать между городами в рамках одной страны, а можно менять страну. Можно ехать одному, а можно ехать вместе с женой, двумя детьми и тремя котами. Поэтому, если вам предстоит релокация, к этой части надо подходить максимально въедливо и просить показать конкретные политики и приказы, чтобы потом не оказалось Ой. Хотя тут может быть проблема, что это всё документы, предназначенные только для глаз сотрудников. Но тут уже вопрос к HR и их умению давать информацию без разглашения конфиденциальных подробностей. В крупных компаниях релокация сотрудников настолько рутинный процесс, что этим занимается целый отдел и возит людей между городами и странами десятками в месяц. Поэтому про часть бонусов на собеседовании вам могут просто забыть рассказать. Не потому, что рекрутёр противный и ему жалко, а потому что про какие-то особенно важные именно вам вещи никто обычно не спрашивает, и про них забывают рассказывать. Хотя на самом деле они есть и конкретно в твоём случае могут стать решающим фактором. А в маленьких компаниях вам могут пообещать всестороннюю поддержку, которая на деле выльется только в пригласительное письмо для оформления визы. А с остальным давай сам разбирайся, они как-то не в курсе, что там и как надо делать.  Поэтому лови шпаргалку по релокационным вопросам. Первым делом спроси вторую половинку (если она есть), что она думает о переезде в предлагаемую страну/город. Программисту зачастую всё равно, где писать код и на каком языке говорят за окном. А вот его семье это очень важно. Затем узнай, в чём конкретно заключается визовая поддержка. Они сами подадут на визу или тебе везде бегать самому? Сделают визу только сотруднику или всей семье? Какие именно визы и какие права они дают? Спроси про помощь с поиском жилья, про оплату билетов, подъёмные и юридическую помощь на месте. Ну и не лишним будет спросить на тему перевозки вещей, и есть ли какая-то программа адаптации для твоей семьи. Ну там, курсы языковые, кружки по интересам и всё такое прочее.  Может, про это отдельную статью написать, что скажете? Вопрос стал трижды актуален благодаря пирожку с ковидлом, который мы все едим уже больше года. Насколько надо быть привязанным к офису? Могу ли я сам выбирать время, когда приходить на работу, и в каких пределах? Или, может, я буду лучше сидеть дома, а в офис приходить, только если действительно надо. А может, согласимся на удалёнку и останемся друзьями? Прямо сейчас вопрос крайне увлекательный, и только время рассудит нас. Знаете что такое “чайка-менеджмент”? Это шуточное название ужасной модели управления, когда начальник, испытывая отеческую заботу, считает своим долгом внезапно врываться в кабинет, хаотически выдавать ЦУ, поругать провинившихся и так же внезапно свалить в закат. То есть поведение типичной чайки: прилетела, поносилась кругами, покрякала, обгадила всё вокруг и улетела, оставив после себя недоумевающие взгляды. А чтобы ещё больше самоутвердиться, сотрудников просят писать ежедневные отчёты, обкладывают горой нелепых регламентов и на сладкое скриншотят их экраны с последующей публичной поркой слишком часто открывающих стековерфлоу.  Думаете, что бред какой-то и кто в здравом уме пойдёт в таком месте работать? А вот и такое бывает. Так что не надо пытаться угадывать, что происходит в другой голове и считается там нормой. Если слышал, что в компанию, куда ты идёшь, жестко трекают время и требуют отчёты на каждый чих, то возьми и спроси об этом. Даже если в ответ на тебя посмотрят как на умалишённого и будут всё отрицать, это намного лучше, чем начать активно удивляться существованию альтернативной реальности в свой первый рабочий день. Вот примерно такой у меня список получился. Если считаете, что надо обязательно дополнить его ещё одним пунктом - смело пишите в комментарии. Хотите поспорить - рецепт аналогичный. Всё вообще не так - тем более проследуйте данным маршрутом.  Думаю, это можно воспринимать как список вопросов, которые надо сначала задать самому себе, чтобы получить на них максимально честные ответы. И только после того, как ты договорился с собой любимым, можно уже начинать задавать эти же вопросы на собеседовании. Все мы разные, так что и ответы захотим услышать разные.  Пишу тексты пальцами