Опознаём плохие условия работы по текстам вакансий +35






Проработав какое-то время в IT, начинаешь замечать, какие приёмы люди используют, когда хотят подсластить пилюлю. Ну, например фраза: «Принимайте ответственность за каждый этап жизненного цикла продукта», по сути, означает: «Процессы у нас не отлажены, всё горит, на что тебя бросим, над тем и будешь работать».

Приведённый пример – моя личная боль, потому что несколько лет назад, когда занимался наймом сотрудников, я сам это написал в полной уверенности, что здорово загнул. К слову сказать, именно после этого случая я вдруг прозрел относительно того, что у нас вечно всё горит и по этой причине мы и ищем программистов-универсалов «на все работы».

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

Вот список того, из чего складывается хороший текст вакансии:

  • Ясное, ёмкое изложение сути деятельности компании без избытка пустых громких слов
  • Ясное, ёмкое изложение тех задач, которыми вам предстоит заниматься на соответствующей должности, без избытка пустых громких слов
  • Ясный, разумный список требований, которые ставит перед вами работа/должность
  • Ясный, разумный список обязанностей, которые предполагает должность
  • Отсутствие упоминаний качеств или умений, которые не имеют прямого отношения к работе (чувство юмора, упорство, настойчивость…)

Давайте взглянем на несколько примеров вакансий, которые не подходят под это описание.

Плохой пример №1: требуется человек-оркестр







Перевод
О компании: Компания из списка NASDAQ, поставляющая цифровые решения для Правительства.

Основные обязанности:

  • Делать вклад и принимать ответственность за все аспекты жизненного цикла продукта: дизайн, планирование, разработка, DevOps, тестирование как сервисов, так и веб-компонентов;
  • Стимулировать диалог с партнёрами по бизнесу, помогая определить потребности и найти решения;
  • Сотрудничать и выстраивать прочные связи с технологической группой, а также сторонними поставщиками и оффшор-партнёрами, способствуя созданию дополнительной ценности для клиентов;
  • Уверенно поддерживать существующие программные решения и веб-сервисы, которые написаны на Javascript (Node JS & Angular JS) и размещены на AWS;
  • Обладать способностью и стремлением глубоко погружаться в наработанную кодовую базу и не упускать возможностей, которые предлагает дизайн, функциональность и потребности рефакторинга в коде;
  • Делиться прошлым опытом с другими членами команды, становиться для них наставником с целью улучшить порядок разработки и внедрения.

Необходимые навыки:

  • Хороший практический опыт веб-разработки на Node JS;
  • Практический опыт в параллельном программировании, асинхронном программировании, использовании функций обратного вызова;
  • Разработка микросервисов, архитектуры & REST API;
  • Архитектура системы очередей сообщений – SQS или RabbitMQ;
  • Сервисы AWS (SQS, Lambda, EC2, ECS, API Gateway, Beanstalk);
  • Централизованное логирование и анализ логов при помощи AWS Cloudwatch или Elasticsearch;
  • Опыт работы с базами данных NoSQL (MongoDB, DynamoDB);
  • Опыт работы с реляционными базами данных (MySQL);
  • Безопасность (OAuth 2.0), технология единого входа;
  • Разработка через тестирование.

Желательные навыки:

  • Хорошее понимание одностраничных приложений;
  • GraphQL;
  • Запросы SQL & Mongo;
  • Непрерывная интеграция и непрерывная доставка;
  • Разработка гибридных мобильных приложений на Ionic Framework/React Native;
  • Документация API (Swagger).

Преимущества:

  • Конкурентная заработная плата;
  • Бесплатное медицинское страхование, включая стоматологию;
  • План покупки акций;
  • Безвозвратные вложения в пенсионный план 401к;
  • Страхование по инвалидности;
  • Страхование жизни;
  • Оздоровительная программа от компании;
  • Раскованная, весёлая атмосфера в офисе;
  • Отпуск и оплачиваемые праздничные дни;
  • Возмещение расходов на обучение.


Ну, пойдём по порядку.

Делать вклад и принимать ответственность за все аспекты жизненного цикла продукта: дизайн, планирование, разработка, DevOps, тестирование как сервисов, так и веб-компонентов

Бррр. То есть я должен выполнять функции архитектора ПО, разработчика, инженера DevOps и тестировщика одновременно? Любой, кто реально работал в IT-компании, знает, что жизненный цикл продукта на всей его протяженности – это не шутки. В стартапах нередко случается так, что один программист сидит на нескольких стульях и тащит на себе весь процесс, но компания из списка NASDAQ – это однозначно не стартап. Инженеры DevOps отпочковались в отдельную профессию не просто так.

Дополнение: последняя фраза вызвала у людей сильный отклик, поэтому я решил прояснить свою позицию.

Я понимаю: DevOps – это культурное движение, направленное на то, чтобы трансформировать процессы и убрать барьеры между разработкой и эксплуатацией. Чтобы как следует выполнять свою работу, инженеры должны обладать хорошим пониманием практически всех этапов цикла. Но это не значит, что можно всё взвалить на одного человека или одну команду.

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

Инженер DevOps – это общее название для ряда специализированных работ, его можно спокойно заменить более конкретными наименованиями: специалист по надёжности сайтов, опыту разработки или эксплуатации платформ, системный инженер… Как их ни назови, суть в том, что над определёнными областями экосистемы продукта всегда работают разные люди – это позволяет сократить время выхода на рынок и даёт больше гарантий. При таком раскладе разработчики, создающие продукт, не распыляются попусту (например, на настройку сервисов AWS), когда могли бы работать над функциональностью.

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

Стойте, то есть, ко всему прочему, вы хотите из меня сделать владельца продукта, менеджера по работе с партнёрами и специалиста по развитию бизнеса?

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

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

Делиться прошлым опытом с другими членами команды, становиться для них наставником, с целью улучшить порядок разработки и внедрения

«Да, до кучи будешь ещё и тимлидом».

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

Ближе к концу начинается откровенное перечисление функций DevOps. Для этой работы нужна отдельная ставка – ну, разве только попадётся гений, который разбирается примерно во всём на свете и всегда укладывается ровно в час.

Бонусы не хуже, чем в среднем по индустрии, но они не окупают подобной, по всем признакам, адской работёнки. Есть и другие компании, у которых не менее конкурентоспособные предложения и нет представления о том, что кандидат должен иметь миллион ипостасей и заниматься миллионом задач.

Плохой пример №2: нам нужны ОТВАЖНЫЕ программисты на ОТВАЖНУЮ работу




Перевод
Инженерия и технологии, разработчик ПО, начальный уровень

Гражданство США обязательно. Должность предполагает работу в учреждении, куда требуется специальный допуск.

Основные требования: Диплом бакалавра по специальности «Программная инженерия» или смежным в аккредитованном университете

ОСНОВНЫЕ ТРЕБОВАНИЯ
job.Qualifications

Компания [вырезано] придерживается политики равных возможностей /
позитивной дискриминации в вопросах трудоустройства. Кандидатуры квалифицированных работников будут рассматриваться без учёта расы, цвета кожи, религии, сексуальной ориентации, гендерной идентификации, страны происхождения, возраста, статуса ветерана или инвалидности.

Присоединяйтесь к команде [вырезано], которая взваливает чужие миссии на свои плечи. Наши клиенты выбирают для себя сложнейшие миссии. Их выполнение требует невероятного мужества, выносливости и точности. Они таят в себе опасности и несут огромную важность. Иногда они даже дают нам возможность изменить мир и спасти жизни. Именно такие миссии вызывают в нас отклик.

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

Необходимый опыт: минимум четыре года обучения в университете


Основные требования: job.Qualifications

Хе-хе, у кого-то автоматический скрипт лагнул.

Присоединяйтесь к команде [вырезано], которая взваливает чужие миссии на свои плечи. Наши клиенты выбирают для себя сложнейшие миссии. Их выполнение требует невероятного мужества, выносливости и точности. Они таят в себе опасности и несут огромную важность. Иногда они даже дают нам возможность изменить мир и спасти жизни. Именно такие миссии вызывают в нас отклик.

Смахивает на ролик из телемагазина. Прямо вижу эти кадры: спецназовцы отдают честь, маршируют, проходят учения под проливным дождём, штурмуют здание… Стоп, это же у нас вроде описание работы на должности программиста? Упс. Для рекламного ролика – в самый раз, для вакансии – не пойми что. Во всём тексте не найдёшь ни единой детали. Чем вы будете заниматься – непонятно. Какие для этого нужны базовые навыки – кто бы знал.

Вы когда-нибудь слышали о вакансиях-«приманках»? Иногда такое случается в сфере IT: вы приходите собеседоваться на одну должность, а после устройства фактически попадаете на совсем другую. С этой вакансией подобное провернуть очень легко, потому что вы, по сути, не подписываетесь ни на что конкретное. Остерегайтесь текстов такого рода.

Складывается впечатление, что человек, который это писал, искренне верит в миссию компании (ну или что у неё имеется отдел коммерческого маркетинга). Однако с таким подходом он может рассчитывать только на людей, которые разделяют его чувства. Либо готовы ухватиться за любую работу.

Примечание: справедливости ради нужно сказать, что компания, которая разместила вакансию, хорошо известна и сделала себе имя в индустрии. Но даже если этим можно объяснить отсутствие описания её деятельности, требования к кандидату всё равно нужно серьёзно доводить до ума.

Плохой пример №3: ищем безупречных представителей человечества




Перевод
Мы ищем разработчика начального уровня для выполнения различных задач, которые возникают в компании по производству ПО и разработке интернет-сайтов. Успешные кандидаты должны обладать развитым аналитическим мышлением, жаждой знаний, готовностью принять любой вызов, желанием пополнять багаж знаний и отличным чувством юмора. В компании по производству ПО и интернет-сайтов за пять лет можно научиться практически всему (будем рады тем, кто мечтает в будущем основать свой стартап). На работе придётся выкладываться по полной, но будет весело! Предпринимательский дух – обязательное требование! Форма одежды – свободная.

Конкретные задачи могут включать:

  • Разработку ПО;
  • Администрирование систем;
  • Составление документации;
  • Поддержку пользователей;
  • Контроль качества;
  • Предпродажную поддержку;
  • И прочее, по мере поступления…

Вот что нужно, чтобы получить предложение о работе:

  • Диплом бакалавра или магистра по информатике, электротехнике и подобному;
  • От 0 до 3 лет опыта;
  • Предпринимательский дух;
  • Развитое аналитическое мышление;
  • Отличные навыки общения;
  • Глубокая порядочность и сила духа;
  • Энергичность и высокий уровень мотивации;
  • Желание вкладывать много сил в развитие небольшой компании;
  • Стремление к совершенству, готовность сделать «всё, что потребуется» ради выполнения работы;
  • Желание досконально изучить реалии компании по производству ПО/разработке сайтов;
  • Опыт работы с HTML;
  • Опыт работы с C/C++, C# или Java;
  • Опыт работы с Javascript;
  • Понимание реляционных баз данных;
  • Понимание модели передачи данных TCP/IP;
  • Идеалистичный настрой на улучшение системы образования;
  • Оптимистичная вера в свою способность порождать перемены;
  • Критическое отношение к оптимизму и идеализму, понимание, что они могут обернуться невежеством или самонадеянностью.


Эта вакансия меня добила – пишу, и на смех пробивает.

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

Отличным чувством юмора? Это ещё зачем? Настольная книга собеседующихся называется «Карьера программиста», а не «Манера приколиста». Хорошее чувство юмора – это черта, которую мы всегда ценим в окружающих, будь то друзья, родня, коллеги или те, кого мы приглашаем на свидание. Но в вакансии запрашивать такие вещи не имеет смысла.

Конкретные задачи могут включать: разработку ПО, администрирование систем, составление документации, поддержку пользователей, контроль качества, предпродажную поддержку

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

И прочее, по мере поступления…

… это например? У нас тут вроде бы вакансия на должность разработчика, а не мальчика на побегушках в спорт-бар. Неопределённые, двусмысленные строки такого рода – это плохой знак. Люди всегда должны знать, на какие именно типы работ соглашаются

Предпринимательский дух

Так, это выражение мне попадалось уже не раз и… что оно вообще означает? Спросишь одного – он скажет, это когда разрушают нормы и экспериментируют. Другой станет называть такие качества, как упорство и решимость. А может, это про то, что надо быть изобретательным и мыслить гибко?

Проблема с такими характеристиками в том, что они туманны, неоднозначны и бессмысленны. Они не передают никакой информации, потому что под ними может подразумеваться всё что угодно. Каждый первый тешит себя мыслью, что у него «предпринимательский» склад – достаточно посмотреть, сколько народу определяет себя как «Предприниматель» на LinkedIn.

Что это означает для вас, человека, который хочет устроиться в компанию? То, что у работодателя есть своё собственное, вполне определённое представление о том, кого он хочет видеть на этой должности, но дать ясное описание он не в состоянии.

Глубокая порядочность и сила духа;
Энергичность и высокий уровень мотивации;
Желание вкладывать много сил в развитие небольшой компании;
Стремление к совершенству, готовность сделать «всё, что потребуется» ради выполнения работы;
Желание досконально изучить реалии компании по производству ПО/разработке сайтов;
Идеалистичный настрой на улучшение системы образования;
Оптимистичная вера в свою способность порождать перемены;
Критическое отношение к оптимизму и идеализму, понимание, что они могут обернуться невежеством или самонадеянностью

Господи Иисусе. Ещё раз: все эти качества нужно оценивать у кандидата на собеседовании, а не расписывать в вакансии. Дураку понятно, что все хотят нанимать честных, деятельных, увлечённых работников. Есть хоть кто-нибудь, кто это всё прочитает и подумает: «А, ну я-то сволочь и раздолбай, не буду отправлять им резюме?». Может, лучше что-нибудь о работе расскажете?

«Всё, что потребуется», да ещё в кавычках, внушает опасения. Насколько далеко простираются эти требования? Отдавать первенца не придётся? Или резать жертвенную козу? Ну, и последние два пункта тоже хороши. Нужно быть оптимистом, но не так чтобы слишком оптимистом, давайте нам без этого тут.

Скажу вам так: определённому типу людей подобное описание покажется занятным и привлекательным. Но для меня, в свете нажитого опыта, весь текст – один звоночек за другим.

Хорошие описания вакансий


Чтобы немного проветрить помещение после всей критики и негатива, давайте теперь изучим несколько текстов, написанных очень и очень толково.

Хороший пример №1: всё при нём




Перевод
[вырезано] – технологическая компания, работающая в сфере здравоохранения. Мы обрабатываем генетическую информацию, чтобы дать врачам и пациентам возможность принимать взвешенные решения о лечении. Наши разработчики работают над самыми разными проектами: от инноваций в системах, которые используют медицинские учреждения, до покорения хаоса, царящего в биологии. Мы постоянно совершенствуем инструменты и технологии, чтобы дать максимально точную информацию о состоянии здоровья пациента, которой можно руководствоваться при определении плана действий. Если вы хотите, чтобы ваши знания и умения работали на благо миллионов людей – присоединяйтесь.

О команде: [вырезано] нуждается в опытных программистах разного происхождения, чтобы успешно выполнять свою миссию – предоставлять генетическую информацию о миллиардах людей. Наша команда многофункциональна: она включает как экспертов из научной сферы, так и любознательных, целеустремленных программистов. Мы создаём системы, которые берут огромные массивы геномных данных, смешивают со сведениями из научной литературы со всего света, добавляют результаты, которые тщательно выверялись годами, и аккуратно всё упаковывают для использования нашими исследователями. Данных много. По мере того как они накапливаются, системы должны улучшаться и ускоряться. И здесь нам нужна ваша помощь.

Чем вы будете заниматься:

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

Что от вас требуется:

  • Опыт работы в индустрии над проектами с full-stack архитектурой и распределёнными системами;
  • Несколько лет работы с бэкенд и фронтенд-фреймворками, такими как: Python/Django, Javascript/React, Scala/Play или другими общепринятыми стандартами;
  • Практический опыт работы с базами данных (MySQL, PostgreSQL, NoSQL и другими). Знание тюнинга и оптимизации запросов будет плюсом;
  • Отличные навыки общения. Опыт работы в распределённых командах будет плюсом;
  • Желание участвовать в нашей миссии и постоянно учиться новому.

[вырезано] высоко ценит диверсификацию и предлагает равные возможности всем сотрудникам и кандидатам без учёта расы, цвета кожи, религии, страны происхождения, пола, сексуальной ориентации, возраста, семейного положения, наличия статуса ветерана или инвалидности. Мы рассматриваем возможность устройства квалифицированных работников с судимостью в соответствии с [вырезано].


Красота. Описание компании и команды, с одной стороны, интригует, с другой – даёт подробности в достаточном объёме.

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

Из одного этого предложения уже можно сделать целый ряд выводов о том, в каких сферах, вероятно, подвизается компания:

  • Big data
  • Обработка и аналитика данных
  • Разработка ПО (само собой)
  • Научные исследования или НИОКР
  • Возможно, машинное обучение, чтобы извлекать из данных новые познания

Списки, которые приводятся в параграфах «Чем вы будете заниматься» и «Что вы привнесёте в команду» конкретны, прозрачны и резонны. Десять из десяти, сам бы предложил свою кандидатуру, если бы сфера больше мне подходила.

Хороший пример №2: коротко и по делу




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

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

Мы создаём уникальную микросервисную архитектуру, которая будет соединять облака и внутренние системы с разнообразными сервисами: по сбору данных, по автоматическому мониторингу состояния здоровья, по взаимодействию с пользователем.

Вам предстоит:

  • Взять на себя ответственность за тестирование, контроль качества и релиз;
  • Создавать и поддерживать автоматизированные фреймворки для API, бэкенда и аппаратных интерфейсов;
  • Прописывать и дорабатывать требования тестирований;
  • Обеспечивать непрерывную интеграцию;
  • Принимать участие в планировании и реализации новых функций и приложений;
  • Плотно сотрудничать с разработчиками ПО и аппаратных решений, чтобы код и API функционировали должным образом.

В основе нашего стэка – гибкие, масштабируемые концепты, как-то:

  • NodeJs, Go, Kubernetes, Docker;
  • Linux (Ubuntu), работа с командной строкой, Python.


Обязанности понятны. Необходимые умения не расписаны, но их без труда можно додумать, исходя из приведённой информации о стэке и задачах:

  • Микросервисы
  • Node.js, Python и Go
  • Kubernetes + Docker, Linux
  • Акцент на ритейле и коммерческом строительстве

И никто не разливается соловьём о том, как им нужны исключительно совершенные люди и как они ищут тех, кто способен перевернуть весь мир с ног на голову!!!

Хороший пример №3: просто, но добротно




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

В нашем филиале увидел свет продукт второго поколения [вырезано]; здесь же базируются команды технической эксплуатации и управления жизненным циклом клиента.

Что вам предстоит делать:

  • Поддерживать и продвигать ценности нашей корпоративной культуры;
  • Работать в связке с другими сотрудниками, в том числе представителями продуктовых и API-команд, чтобы вносить свои предложения, дорабатывать и улучшать существующий продукт;
  • Организовывать свою работу при помощи Jira, Github и внутренних систем сборки и деплоя;
  • Помогать в тестировании кода и выводе наших творений в продакшн.

Наш стэк включает в себя: Golang, AWS (DynamoDB, Lambda, EC2, Kinesis, SQS, S3), ReactJS, Snowflake, Terraform, Redis, SolarCloud, Kafka, Riac, Docker/Kubernetes и Linux

О вас:

  • Стандартно: опыт в разработке облачных приложений 2-4 года;
  • Диплом бакалавра по информатике;
  • Два и больше года работы с Go и Python;
  • Два и больше года работы с HTML, CSS и Javascript;
  • Умение выстраивать масштабные распределённые системы;
  • Опыт создания веб-приложений с фокусом на интерфейсе и применением современных фреймворков Javascript;
  • Позитивное отношение к жизни, способность учиться и быстро вливаться в небольшую команду;
  • Опыт работы с AWS (желательно);
  • Понимание микросервисной архитектуры и облачных приложений.


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

Не соглашайтесь на плохую работу


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




Комментарии (63):

  1. vladshulkevich
    /#22106746

    У вас на сайте мертвый пункт меню: «Команда». А это самое интересное — глянуть на людей, которые вроде адекватно в текстах рассуждают.

  2. Fox_exe
    /#22106928 / +1

    Можно добавить ещё пару пунктов:
    1. Работодатель просит заполнить их собственную анкету и без неё отказывается общаться с кандидатом. При этом у вас в резюме уже написаны ответы на все пункты этой анкеты. Но резюме никто не читает?
    2. Работодатель просит выполнить тестовое задание… На выполнение которого требуется пару дней потратить… И если вы, всёж, решитесь и сделаете его — вам в 90% случаев вообще ничего не ответят.
    3. В резюме написано, что им нужен Junior. Но на собеседовании (Или в тестовом задании) задают вопросы, на которые и не каждый Senior сможет ответить.

    • IronHead
      /#22107014 / +1

      add
      4 В резюме написано, что им нужен Senior. Но на собеседовании (Или в тестовом задании) задают вопросы уровня Junior.

      • amartology
        /#22107058

        Или уровня третьего курса университетской программы.

        • Fox_exe
          /#22107080

          Или вообще ничего, т.к. HR ничего не понимает в программировании (или в требуемой профессии вообще)

          • amartology
            /#22107124

            HR ладно, обидно, когда на втором собеседовании на синьорскую позицию школьные вопросы начинает задавать потенциальный начальник. Еще обиднее, правда, когда ты плаваешь в ответах, потому что работать умеешь, а формулы из университетской программы подзабыл.

            • oinovikov
              /#22107954

              Вот. Каждый день пишу код, а теорию не могу выдавить.

              • Tufed
                /#22110380

                В этом вся соль. Работодателю выгодно чтобы соискатель думал что он не тянет, занижал свою собственную самооценку и соглашался с заниженным ЗП.

      • radtie
        /#22108474 / -1

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

        • IronHead
          /#22108494

          А вы резюме соискателя вообще не читаете перед приемом на работу?

          • radtie
            /#22108812

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

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

            • IronHead
              /#22108822

              А можно конкретные примеры вопросов, на которые не смог ответить сеньор?

              • radtie
                /#22108846 / -1

                Ну… из того что могу вспомнить, по js: почему 1.1 * 1.1 дает 1.2100000000000002

                • IronHead
                  /#22108896

                  Ох уж эти теоретики на собеседованиях.
                  Вы знаете, что это вопрос для джунов?
                  Как раз тот самый пункт 4, который я попросил добавить.
                  Это bad practice на собеседованиях
                  Синьор морально и физически готовится отвечать на вопросы по архитектуре решений, по применяемым ранее крутым алгоритмам, по опыту работы с чем то.
                  Он не настраивается на то, что его будут спрашивать основы школьной программы по информатике.
                  Он подсознательно знает, что float и double для расчета денег использовать нельзя и применяет это знание на практике. Но почему это происходит — скорее всего не ответит потому, что как правило работает на один уровень абстракции выше и не настроен рассказывать теорию о том, что такое числа с плавающей запятой и как они там перемножаются.
                  Может быть он ответил бы на этот вопрос с пристрастием, если бы собеседовался на C/C++ разраба, но наверно JS он выбрал не для того, чтобы ковыряться в самых низах?

                  • Anamelash
                    /#22108988 / -1

                    Ты либо знаешь как работает язык на котором ты пишешь, либо нет.
                    И вообще если на чём то пишешь, то должен знать что такое мантисса хотябы в общих чертах.
                    А если ты Senior, то как минимум должен знать о существовании порядка и мантиссы и почему бывает -0
                    Всё остальное — отговорки.

                    • TheGodfather
                      /#22109124

                      А если ты Senior, то как минимум должен знать о существовании порядка и мантиссы и почему бывает -0


                      Ну вообще-то об этом вроде у университете рассказывают и почти наверняка студент-то на этот вопрос ответит без запинки, а вот сеньору с 10 годами опыта может придется нелегко (ну т.е. ключевое слово «особенности машинной арифметики с плавающей точкой», естественно, синьор должен сказать, а вот почему конкретно...)

                      • Eagle_NN
                        /#22110098 / +2

                        Странное понимание сеньерности. Как по мне сеньером называется не тот кто штаны 10 лет протирал и все забыл, а тот, кто в отличии от мидла, знает ПОЧЕМУ оно так работате и КАК получить правильный, близкий к оптимальному, результат.
                        А вот мидл — он да, «интуитивно» вроде уже понимает, но объяснить не может.
                        Ну а джун — он и в африке джун. Кодить хоть как то умеет, и то радость.

                        • TheGodfather
                          /#22117492

                          Странное понимание сеньерности. Как по мне, сеньером называется тот, кто может вести проект от и до, умеет делегировать, при нужде может аргументированно набросать и даже реализовать архитектуру достаточно сложного приложения, может менторить джунов, рассказывая им о том, что *на самом деле* важно и влияет на проект, а не их знания о мантиссах и порядках, которые никому нафиг не сдались (мы же не про алгоритмы рассчета траекторий ракет говорим, а про очередной микросервис какой-нибудь?). А если нужно рассчитать траекторию ракет, то знания ключевого слова «особенности машинной арифметики с плавающей точкой» достаточно, чтобы понимать, что подводный камень есть и по нужде быть способным вкопаться глубже.

                          • Eagle_NN
                            /#22119718

                            Как по мне тут попутаны понятия техлид/тимлид и сеньор девелопер. По моему сеньер должен именно разбираться в деталях и понимать КАК надо правильно сделать — т.е. уметь создать архитектуру. При этом он может обладать нулевыми софтскилами. В отличии от него, тимлид может, при определенных условиях, быть мидлом в тех-скилах, но прокачанным в софт. Он и будет делегировать, помогать менторить или менторить и прочие активности.
                            Да, зачастую с ростом сеньерности приходят и софт скилы, но не ко всем. Нельзя же всех программистов обязательно тянуть в тимлиды. Кому-то это не нужно.
                            А еще не забываем что есть архитекторы, которые код почти не пишут, и выросли они тоже из джунов, но тоже по отличающейся траектории (как раз ближе к «чистому» развитию тех.скилов)

                            • TheGodfather
                              /#22120784

                              При этом он может обладать нулевыми софтскилами


                              У нас был тренинг на работе несколько лет назад как раз про это. Если вкратце, то нет :) Начиная с некоторого грейда «нулевые софтскиллы» уже не катят. В том числе логическое объяснение было — что начиная с некоторого масштаба, один человек уже будет неспособен охватить все детали и ему *придется* делегировать. Умение делегировать — почти что обязательное требование для синьоров высокого грейда.

                    • Shadow_ru
                      /#22109756 / +1

                      Зачем мне помнить в деталях как эти чудесные 32/54/64 бита из спек IEEE существенно сменившихся трижды будут манаться в билиотеках?
                      При этом я четко знаю о всех корнер кейсах применения float/long и когда надо при ревью джуну быстро обьяснить на уровне «делим на три единицу » что такое юзать нельзя и даже рассказать про математику с фиксированной точкой или расчет только на целых числах. Намекаю, что сеньору вторая часть куда как нужнее.

                    • strannik_k
                      /#22110906

                      А если ты Senior, то как минимум должен знать о существовании порядка и мантиссы и почему бывает -0
                      Какая сфера вашей деятельности, преподавание?
                      Я слово мантисса последний раз слышал и видел в начале второго курса вуза. За 10 лет работы мне это не пригодилось ни в веб-разработке, ни в разрабке игр. Кому-то из специфичных областей разработки это и пригодится, но это будет один из тысяч разработчиков. А в моей сфере деятельности не стоит доверять собеседование тем, кто задает подобные вопросы, т.к. всех хороших специалистов упустит и понанимает вчерашних преподавателей информатики, студентов первых курсов и тех, кто только вчера язык закончил изучать.

                      • Anamelash
                        /#22112616

                        12 лет в разработке.
                        И знания эти вам конечно не нужны каждый день, т.к. мы программируем на языках высокого уровня и всё отдаётся на откуп компилятору/интерпретатору. Но как оно работает необходимо иметь представление в любом случае.

                        • strannik_k
                          /#22114954 / -1

                          И знания эти вам конечно не нужны каждый день
                          Эти знания не то, что не нужны каждый день. Эти знания вообще не пригодятся. А если когда-нибудь и пригодятся, то их влияние на среднегодовой результат работы будет смехотворно мало.

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

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

              • alexxz
                /#22109652

                Да много таких вопросов. Вот написал человек решение FizzBuzz, а чему равен остаток от деления 2 на 3 ответить не может. Или дать примерную оценку сколько времени будет в среднем занимать резолвинг доменных имён. Или чем отличается сложность поиска в массиве по ключу от поиска по значению. Понятно, что ни один из этих вопросов ничего однозначно не говорит о кандидате, однако говорит о том, сколько человек знает. Потому и задаются такие простые вопросы, чтобы выявлять тех, кто в резюме выглядит как синьор от тех, кто на самом деле таковой.

                • talbot
                  /#22110650

                  Или дать примерную оценку сколько времени будет в среднем занимать резолвинг доменных имён.

                  Что за бред? Сформулируй гипотезу, построй модель (например, все домены из топ-100, смешанные со случайно сгенерированным в пропорции 9 к 1), проведи измерения в своём окружении, и тогда ты можешь посчитать среднее (для своего окружения). Но зачем этим заниматься, если ты непосредственно не решаешь проблемы разрешения доменных имён?

                  • alexxz
                    /#22111336

                    Спектр задач решаемых программистами довольно широкий. Как правило программист не решает одну и ту же задачу несколько раз. Конечно, если мы берем програмииста 3D графики такой вопрос, вероятно, будет лишним. Однако для бекэнд или фронтенд разработчика понимать принципы сетевого взаимодействия хотя бы на прикладном уровне резолвинга имен или установления TCP соединения — весьма полезный навык. Конечно, по одному такому вопросу судить нельзя. Но он — не лишний.

    • uzverkms
      /#22108196

      Есть несколько вариантов, почему случается п. 1.
      1. Самый маловероятный вариант — таким образом нормализуют информацию по соискателям.
      2. Скорее это приём психологического рода. Это как на рынке или в магазине важно дать вещь покупателю в руки — тогда с ней сложнее расстаться. Так и тут — готов ли кандидат потрудиться для получения собеседования, ну и так как работа проделана, то, возможно, будет чуточку меньше желания отказать.
      3. Карго-культ. Где-то кто-то когда-то прочитал про вариант 2 и внедрил анкету. А конечные исполнители на самом деле не понимают смысл происходящего. У меня такое было как раз по описанному вами сценарию. Я спросил надо ли мне заполнять анкету, если всё, что там спрашивают уже есть в резюме. Юная сотрудница отдела HR сказала, что раз есть в резюме, то анкету заполнять не надо.

    • Anamelash
      /#22108720

      По поводу 3-го пункта:
      У нас вообще одни и те же вопросы для любого уровня. Есть простые, есть сложные, есть вообще без правильного ответа.
      Цель — нащупать границы знаний соискателя в разных областях.
      Бывает приходят на позицию senior и не могут ответить на элементарные вопросы.
      Бывало и наоборот — приходили на позицию джуна и получали ставку мидла.

      • strannik_k
        /#22115046

        У нас вообще одни и те же вопросы для любого уровня. Есть простые, есть сложные, есть вообще без правильного ответа.
        Там нет точечных вопросов вроде «расскажите про паттерн Абстрактная фабрика»?) Кандидат знает 15 других, но именно этот нет. А в итоге его знания по паттернам оценятся как неудовлетворительные, т.к. про другие не спрашивали.

        Бывает приходят на позицию senior и не могут ответить на элементарные вопросы.
        У меня так всегда, если я почти без подготовки или это одно из первых собеседований за несколько лет. Но несколько месяцев подготовки и десяток другой собеседований и вуаля, показывающий на первых собеседованиях себя хуже джуна, начинает успешно проходить на уверенного миддла, сеньора. Магия)

    • Newbilius
      /#22110302

      2) Не всё так однозначно. Предпочту тестовое задание на 2-3 вечера и 1 собеседование подходу условного Яндекса с 5-6 собеседованиями.


      Да и нынче часто программисты вполне логично жалуются, что мол заставляют писать код на собеседовании или спрашивают чистую теорию. Но проверять умение писать код как-то надо же. Тестовое же задание позволяет почти всё время очного собеседования потратить обсуждению этого самого тестового! Как по мне — так лучше, ведь тогда спрашивают по уже написанному в спокойной обстановке коду, стресса намного меньше. И вариант "притащить чужое тестовое" не сканает, по ответам сразу видно, сам писали или кто-то другой.


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

      • Fox_exe
        /#22110352

        По п.2: Основная проблемма, что выполнив тестовое, есть очень большие шансы, что вам или откажут или не ответят вовсе. Тоесть время потрачено, по сути, зря.\
        А альтернатива — посмотреть твой код на github, к примеру, не устраивает большинство нанимателей.

  3. sergio_deschino
    /#22107168 / +1

    Предпринимательский дух


    При увольнении прихватить с собой базу данных и слить конкурентам/открыть конкурирующий бизнес — это же и есть предпринимательский дух, правильно?

  4. RouR
    /#22107258

    image

    • General_Failure
      /#22107316

      Это что, нужно верстать промдизайн в железе?

      • RouR
        /#22107332

        Скорее всего монтаж и пуско-наладочные работы.

        • Stas911
          /#22119424

          Деплой и отладка электростанций?

    • dimchik_b
      /#22110078 / +1

      Все прекрасно, только последний навык как-то не в тему

    • Arris
      /#22110170 / +1

      Вполне вероятно, что там идет речь об инженере-программисте станков с ЧПУ.

      Насколько я слышал — очень интересная профессия. Ничуть не менее сложная чем это наше с вами IT.

      P.S. А все эти покрасночно-разгрузочные работы — это от того, что такой человек нужен не у нас, а в ОАЭ.

  5. yakimchuk-ry
    /#22107406

    Немного в другую область, но меня веселит когда компании хотят завлечь людей, но говорят "сначала техническое, а потом ответы на ваши вопросы", т.е. они ищут новых людей, но про проект не скажут, компанию не покажут, процессы не раскроют, т.е. собеседуйтесь на кота в мешке 1-2 недели, а потом как решите.)

  6. nikabc555
    /#22107656

    Вот такой случай: 2018 год; в вакансии на удаленную работу в московскую фирму было указано «достойная з/п», а при телефонном разговоре после прочтения резюме, где указан город проживания:
    — какую з/п хотите?
    — 70к руб
    — почему вы такую з/п просите? ведь для вашего региона это слишком большая сумма!

    • Fox_exe
      /#22110360

      Недавно статья была на эту тему. Работодатели на полном серьезе срезают зарплату, если работник решит переехать в город, где «стоимость проживания» ниже.

    • Stas911
      /#22119426

      ответ «а почему вы такую предлагаете — для вашего региона это слишком маленькая»?

  7. IkaR49
    /#22107730

    Недавно знакомому предлагали работу, даже не знаю, почему он отказался.

    Простите, тут скриншот с телефона

    • FaGuS
      /#22108794

      О, это известный персонаж (как правило, он пишет от имени Тони Старк), который писал куче знакомых и даже мне (предположительно, ищет в вк выпускников известных айтишных вузов).
      Мы с друзьями и коллегами занялись расследованием, делали много попыток пройти собеседование (нужно быстро ответить, что ты готов и нарисовать круг), одному даже удалось внедриться в команду.
      Оказалось, что это какой-то сумасшедший бывший военный, окруживший себя такими же поехавшими ребятами. Они геройски стараются что-то напрограммировать, но почему-то у них ничего не выходит.

  8. oinovikov
    /#22107972

    У меня собеседование одно было на php-разработчика. Задавали много вопросов по встроенным функциям (в духе, "какой функцией находить подстроку?"). Так вот вопрос: грешно ли не помнить такое наизусть (не обязательно в php)?
    Я имею ввиду, что некоторые я помню, но довольно часто целенаправленно смотрю в доках. Это плохо?

    • vladshulkevich
      /#22108322

      На собеседованиях по Питону модно спрашивать «как самому реализовать контекстный менеджер». Никого не волнует, что существующих достаточно, а расширение поведения достигается в 95% случаев декораторами. И смутная уверенность есть, что эти интервьюеры ни одного своего контекстного менеджера не написали, разве что на учебе. Ну так что? они как бэ задают правила игры. Вопрос простой: мы хотим новую работу или нет.

      • ruzzz
        /#22115264

        Нормальный вопрос, и ответ простой, определить пару магических методов enter/exit.

    • Arris
      /#22110182

      > но довольно часто целенаправленно смотрю в доках. Это плохо?

      совершенно нет. Вот еще, все функции наизусть помнить!

      P.S.… Когда-то проходил собеседование на PHP-разработчика.

      В качестве тестового задания предложили написать «класс, для работы, с БД, защищающий от SQL-инекций» (орфография и пунктуация сохранена).

      Я отказался. Сообщил, что считаю тестовое задание бессмысленной и пустой тратой времени. Предложил использовать для решения этой задачи X, Y, Z, а еще A, B, C и D. Пояснил, что лучше чем там — я все равно не сделаю, а примеры моего кода на гитхабе, вот вам ссылка.

      Через недели две я получил ответ: «Отказавшись, выполнять, тестовое задание, вы, потеряли право участвовать, в конкурсе, кандидатов» (пунктуация соблюдена).

      Ну, не больно то и хотелось.

      • Stas911
        /#22119430 / +1

        Вы им ответили «парни, не дурите — медленно положите запятые на землю и сделайте 5 шагов назад»?

        • Arris
          /#22126694

          Цитату не опознал :(

          Нет, просто посмеялся и стёр письмо.

      • vladshulkevich
        /#22119792

        «Отказавшись, выполнять, тестовое задание, вы, потеряли право участвовать, в конкурсе, кандидатов»

        — пишут как гвозди забивают. Двух запятых не хватает.

    • tommyangelo27
      /#22113424

      Я на собеседованиях php разработчиков иногда спрашиваю что-то вроде "есть массив с такими-то значениями, как отсортировать чтобы получилось вот так". В ответ ожидаю упоминания, что в php есть встроенная функция для сортировки при помощи user-defined function, помнить название не нужно.
      И при этом кандидат заранее предупрежден, что вопрос на тему "основы языка php".

  9. fireSparrow
    /#22109070

    Отличным чувством юмора? Это ещё зачем? Настольная книга собеседующихся называется «Карьера программиста», а не «Манера приколиста». Хорошее чувство юмора – это черта, которую мы всегда ценим в окружающих, будь то друзья, родня, коллеги или те, кого мы приглашаем на свидание. Но в вакансии запрашивать такие вещи не имеет смысла.

    Просто HR что-то краем уха слушала про то, что в Agile бывают стэндапы, но не разобралась, что это не те стэндапы, которые в камеди клабе.

  10. theRavel
    /#22109598

    А что не так с первым примером? Там не показана позиция, но это вполне мог бы быть senior/team-lead/principal-engineer, в таком случае нет никаких претензий к вакансии:


    1) Полный цикл разработки и сопровождения — разве это ненормально если человек участвует в обсуждении, планировании фичи, разработке и ее сопровождении? Только в таком случае он действительно может анализировать грабли которые были в имплементации или поддержке предыдущей похожей фичи.
    2) Общение within technical group and with external parties — опять же, если работаешь с внешним аутсорсером или интегрируешь 3rd party solution, то конечно же необходимо с ними контактировать и поддерживать нормальные рабочие отношения, разве это завышенные требования?
    3) Desire refactoring — а это что, плохо? Я бы вообще не нанимал людей которые не стремятся улучшать кодовую базу в своих кусках кода и вокруг.

  11. kinall
    /#22110430

    Как-то не встречал подобных примеров в русскоязычных вакансиях. Никаких «художественных описаний», ничего подобного. Разве что в на страничке компании на ХедХантере.

  12. a-tk
    /#22111820

    Мне одному показалось, что восхваляемые вакансии больше похожи на вакансии на галерах?

  13. jetcar
    /#22117408

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

  14. Stas911
    /#22119434

    Как говорил мой знакомый из FAANG — «я хоть и человек не очень умный, но вот гуглю просто бесподобно и могу за 10 минут нагуглить просто все что угодно» :)