Pull to refresh

Comments 65

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

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

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

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

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

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

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

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

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

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

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

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


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


У нас был тренинг на работе несколько лет назад как раз про это. Если вкратце, то нет :) Начиная с некоторого грейда «нулевые софтскиллы» уже не катят. В том числе логическое объяснение было — что начиная с некоторого масштаба, один человек уже будет неспособен охватить все детали и ему *придется* делегировать. Умение делегировать — почти что обязательное требование для синьоров высокого грейда.
Зачем мне помнить в деталях как эти чудесные 32/54/64 бита из спек IEEE существенно сменившихся трижды будут манаться в билиотеках?
При этом я четко знаю о всех корнер кейсах применения float/long и когда надо при ревью джуну быстро обьяснить на уровне «делим на три единицу » что такое юзать нельзя и даже рассказать про математику с фиксированной точкой или расчет только на целых числах. Намекаю, что сеньору вторая часть куда как нужнее.
А если ты Senior, то как минимум должен знать о существовании порядка и мантиссы и почему бывает -0
Какая сфера вашей деятельности, преподавание?
Я слово мантисса последний раз слышал и видел в начале второго курса вуза. За 10 лет работы мне это не пригодилось ни в веб-разработке, ни в разрабке игр. Кому-то из специфичных областей разработки это и пригодится, но это будет один из тысяч разработчиков. А в моей сфере деятельности не стоит доверять собеседование тем, кто задает подобные вопросы, т.к. всех хороших специалистов упустит и понанимает вчерашних преподавателей информатики, студентов первых курсов и тех, кто только вчера язык закончил изучать.
12 лет в разработке.
И знания эти вам конечно не нужны каждый день, т.к. мы программируем на языках высокого уровня и всё отдаётся на откуп компилятору/интерпретатору. Но как оно работает необходимо иметь представление в любом случае.
И знания эти вам конечно не нужны каждый день
Эти знания не то, что не нужны каждый день. Эти знания вообще не пригодятся. А если когда-нибудь и пригодятся, то их влияние на среднегодовой результат работы будет смехотворно мало.

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

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

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

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

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

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

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

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

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


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


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

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


2008 год, поиск работы в Нью Йорке и Лос Анджелесе. Taleo.net засрал все объявления на dice & monster. Т.е. открываешь линк на вакансию, а там тебя перебрасывают на их портал, где ты снова должен пройти визард страниц на 4-6 с повторным вбивом опыта работы и пр. А все зачем — затем чтобы доказал, что Компания ему интересна по-настоящему, что он достоин ее. Проще говоря, что его можно задрочить с ходу.
Предпринимательский дух


При увольнении прихватить с собой базу данных и слить конкурентам/открыть конкурирующий бизнес — это же и есть предпринимательский дух, правильно?
И не забыл при этом данные кредиток всех коллег с их паспортами, все пароли на внешний доступ и все вайфайные скинуть на пробив :)
Это что, нужно верстать промдизайн в железе?
Скорее всего монтаж и пуско-наладочные работы.
Деплой и отладка электростанций?
Все прекрасно, только последний навык как-то не в тему
Вполне вероятно, что там идет речь об инженере-программисте станков с ЧПУ.

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

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

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

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

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

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

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

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

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

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

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

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

Ну, не больно то и хотелось.
Вы им ответили «парни, не дурите — медленно положите запятые на землю и сделайте 5 шагов назад»?
Цитату не опознал :(

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

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

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

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

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

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


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

Как-то не встречал подобных примеров в русскоязычных вакансиях. Никаких «художественных описаний», ничего подобного. Разве что в на страничке компании на ХедХантере.
Мне одному показалось, что восхваляемые вакансии больше похожи на вакансии на галерах?
Примеры вполне себе, хороший разработчик это тот кто может делать все работы, ну или по крайней мере понимает. Конечно не всё будет сделано быстро, но и не будет такого что упрётся в лимит своих знаний и дальше не сможет продолжать. И конце концов обьявление составляется так чтоб отсеивать неумёх, да иногда это слишком сильно делается, но это они себе ограничивают список кандидатов, плохо это или хорошо не нам решать. Нам же нужно на собеседовании выяснить что из запрошенного реально требуется, ну и адекватность наёмщиков это вообще отдельная тема при общении нужно спрашивать как можно больше о процессе и почему они так делают, обычно вылезают интересные подробности, но не стоит забывать что могут и соврать.
Как говорил мой знакомый из FAANG — «я хоть и человек не очень умный, но вот гуглю просто бесподобно и могу за 10 минут нагуглить просто все что угодно» :)
Sign up to leave a comment.