За 10 лет своей карьеры сначала Системным Администратором, потом Системным Инженером и DevOps-ом, успев побыть простым исполнителем, тех- и тим-лидом, я посетил и провел десятки собеседований в компаниях разного размера в разных странах, учувствовал в формировании требований при поиске сотрудников и… ребята, найм — это мрак.
Я думаю, что тот стиль и способ найма, который живет и процветает сейчас, вредит и сотрудникам, и компаниям.
Попробую объяснить почему.
Кого ищет работодатель?
Все зависит от того, в какой плоскости рассматривать этот вопрос.
С точки зрения бизнеса – работодатель ищет единицу, которая сможет выполнять требуемые функции при минимальных затратах.
На уровне руководителей департаментов, заместителей директоров и т.д. требования несколько меняются и детализируются – им нужен человек, зарплата которого укладывается в бюджет, которого можно найти на рынке имеющимися средствами и который будет выполнять задачи, которые ему поставит его руководитель в интересах бизнеса.
На этом уровне обычно определяются конкретные деньги, которые бизнес готов платить за выполнение работы и с этого уровня исходит распоряжение HRам по поиску сотрудника, который подходит под критерии, а потом те кандидаты, которые прошли первые фильтры, приходят на собеседование.
Вот об этом всём стоит поговорить.
Для того, чтобы запустить подбор персонала, нужно знать кого искать.
Для этого формируются требования к кандидатам, претендующим на вакансию.
В больших компаниях ради стандартизации есть еще список правил «как проводить собеседования» и даже внутренние тренинги с присвоением звания «лицензированный интервьюер».
И все это работает отвратительно.
В зависимости от структуры компании и компетенции руководителей список требований формируется в стилях от «нам нужен frontend-программист, требования обычные», до «нам нужен frontend-программист со знанием <список из 30 пунктов>, стажем работы не менее 23 месяцев и обязательным опытом в FMCG компаниях не менее 2 лет».
Иногда даже привлекаются технически компетентные сотрудники, которым дается задание «сформируйте полный список навыков и технологий, которые вы используете в письменном виде» и все это с некоторыми корректировками уезжает в вакансию в блок «требования».
В еще более редких случаях, поступает задание «сформируйте тест для проверки необходимых знаний», что порождает различные тестовые задания на Hackerrank, состоящие из задач, бесконечно далеких от рабочих.
Какой бы подход к формированию требований из этого диапазона не использовался – он плохо работает.
Почему это плохо работает?
Стек технологий в индустрии огромен.
Больше, чем можно представить или написать в требованиях (хотя бывают и трехстраничные листинги требований).
Более того – стек в компании тоже рано или поздно поменяется.
Поменяются руководители, изменится программная платформа, придет новый вендор с выгодным предложением.
А вот люди – останутся. Если не сбегут или не придется их уволить, потому что новые функции они выполнять не в состоянии.
Желание формализации понятно. Оно психологически безопасно и снимает нагрузку с головы.
Но это мешает найму и дальнейшей работе.
Специалисты по найму пропускают огромное количество талантливых людей просто потому, что не совпали ключевые слова.
Посмотрите на LinkedIn с его «у вас совпадает 27% навыков с этой вакансией». Или на первую страницу выдачи HH/Indeed/Glassdoor, на вакансии с портянками требований и знания технологий.
Следуя правилам, интервьюеры задают бредовые вопросы, понимая, что они не имеют никакого отношения к будущим задачам. Чаще всего – они и сами не знают никаких ответов кроме тех, что написаны в опроснике и не поймут правильный ответ, если он будет нестандартным.
Особенно, когда в компании много специалистов с различной специализацией, а правила и вопросы одни для всех.
Не следуя правилам, интервьюеры начинают опираться на свои, возможно очень специфичные знания и задают вопросы которые опять же, никак не помогают определить, как человек будет выполнять задачи, которые будут перед ним стоять.
Он может быть с другого проекта по разработке специфичной системы, может очень (не)любить ML, может (не)любить Go/Python/Perl/C#/C++/C/Java/Scala, презирать или обожать Puppet/Salt/CFEngint/Chef и т.д.
Просто потому, что он человек и у него не на что опереться, кроме как на собственный опыт и вкус.
Такие собеседования — стресс для всех причастных.
Большинству собеседующих все-таки неприятно писать отрицательные отзывы на кандидатов. Впечатление кандидатов после таких собеседований тоже далеки от позитивных. Руководители расстроены от того, что вакансия не закрыта, HRы вынуждены рассылать все больше и больше писем и сообщений, недоумевая, чем же не подошел предоставленный ими кандидат, ведь «под требования же отлично подходит».
Эти проблемы рождаются от того, что система поиска сотрудников сформирована для того, чтобы найти не хорошего работника с головой, а некую функцию, пытаясь через максимальное количество требований ее описать.
Списки, ключевые слова, теги, списки вопросов для собеседований в стиле «сколько аргументов принимает функция substring» — они все портят.
Подобная система отбора с одной стороны порождает профессиональных «проходителей собеседований», попадающих на позиции, которые объективно не тянут, с другой – мешают нормальным специалистам прийти работать в компанию и принести ей много пользы, потому что они использовали Puppet вместо Salt, писали на Python 2.7 вместо 3.5, использовали Symphony вместо Laravel, Docker, а не RKT, Docker Swarm, а не Kubernetes или etcd, а не Consul.
Все инструменты меняются и заменяются.
Через 1-2 года текущие знания об инструментах будут неактуальны, через 5 лет о большинстве никто не вспомнит. Все придется менять, функция работника тоже может изменится вместе с окружением и проектами.
В подавляющем большинстве компаний нет задач, где нужно знать 8 алгоритмов сортировки и помнить все функции Spring Boot Core или какие библиотеки npm он знает.
Нет никакой разницы, какую систему configuration management знает человек на старте или сколько аргументов к java он помнит.
Если человек знает, как выполнять определенную функцию в заданных рамках, то это совершенно не значит, что он хороший специалист.
Это значит только то, что он, по стечению обстоятельств, умеет выполнять определенную функцию здесь и сейчас.
На самом деле, исходя из моего опыта, для кандидата (и будущего успешного сотрудника) гораздо важнее другие критерии:
- Нужно быть адекватным, уметь рассуждать и учиться, уметь делать обоснованные предположения о том, что не знаешь.
- Нужно иметь базовые знания об операционных системах, сетях и актуальных технологиях.
- Нужно понимать, что лежит в основе инструментов, которые используются и почему эти инструменты они нужны (или не нужны).
- Нужно иметь убеждения о том, как нужно работать и силу им следовать.
- Короче – нужно уметь мыслить в широком смысле.
Посмотрите на крупные успешные компании, на их требования к кандидатам. Они минимально конкретизируют технологии, просто чтобы обозначить некую базу, на которую стоит опираться.
Вот, что пишет в своих вакансиях Яндекс в позиции Системного Администратора в требованиях:
- опыт администрирования Unix/Linux — более трех лет;
- опыт администрирования open source приложений (веб-серверы, базы данных, почтовые серверы и т.д.);
- знания сетевых технологий TCP/IP;
- опыт программирования на скриптовых языках (shell, python, perl);
- умение перенимать опыт коллег и делиться с ними собственным;
- последний год вы работали в аналогичной должности.
И вот, что в пожеланиях:
- опыт проектирования систем, работающих непрерывно и бесперебойно (24х7х365);
- аналитические навыки предотвращения и быстрого устранения неисправностей.
А вот требования к позиции SRE в Google:
- BS degree in Computer Science or related technical field involving coding (e.g., physics or mathematics), or equivalent practical experience.
- Experience with algorithms, data structures, complexity analysis and software design.
- Experience in one or more of the following: C, C++, Java, Python, Go, Perl or Ruby.
И вот пожелания:
- Interest in designing, analyzing and troubleshooting large-scale distributed systems.
- Systematic problem-solving approach, coupled with strong communication skills and a sense of ownership and drive.
- Ability to debug and optimize code and automate routine tasks.
Гораздо лучше уделить больше внимания в описании вакансии тому, чем занимается компания и чем придется заниматься кандидату, чем перечислять все 10 фреймворков, которые используются в ваших проектах.
Измените и подход к собеседованиям.
Спрашивайте на собеседованиях основы, просите рассуждать вслух, задавайте широкие вопросы (и будьте готовы услышать не единожды ответ, который для вас станет сюрпризом), стройте диалог, общайтесь, делитесь информацией. Ищите точки соприкосновения, пытайтесь понять как человек думает и почему он так думает.
Большинство людей, которым я задавал этот вопрос (а так же я сам), сходятся во мнении, что на самом деле 15-20 минут общения хватает, чтобы убедиться что человек подходит и определить его уровень и в пределах 10 минут нужно на то, чтобы понять, что человек не подходит совершенно.
При этом, тесты и глубокие технические опросы практически не влияют на результат.
Да, на это время придется напрячь мозг и навыки общения тем, кто проводит собеседования.
Высший менеджмент должен научиться доверять тем, кто эти собеседования проводит и кому, в будущем, с нанятыми людьми работать.
Придется отказаться от тегов, безумной (и бездумной) фильтрации и излишней, но такой спокойной, стандартизации.
Придется нести расширенную ответственность за результат найма, т.к. «вот его результаты теста, он ответил на 98% вопросов, я не знаю, почему он завалил проект» больше не будут работать.
Увеличится входящий поток кандидатов, в том числе неподходящих.
Но, подумайте сами – это ведь окупится?
Комментарии (178)
Fox_exe
21.09.2018 01:12+1Всего один раз было приятное собеседование: Там без лишних слов предложили пройти своеобразный «Квест»: У компании была когдато давно немного необычная проблема, они её решили и предложили мне тоже попробовать её решить.
Дальнейший диалог был примерно таким: Интервьюер описывал симптомы, я описывал свои действия, исходя из них. И так раз 20, пока я не сдался и не узнал какже они нашли решение (Совершенно случайно, кстати).
В процессе такого «квеста» сразу становится видно, что человек знает, как думает, рассуждает и т.д.
Ps: К сожалению моих знаний оказалось недостаточно и меня не взяли… Но, блин, было так интересно, что даже захотелось сделать такую игру!i360u
21.09.2018 11:37Кстати, это отличный компромисс между отнимающими кучу времени тестовыми заданиями и тупейшими опросниками с задачками на бумажке. Нужно взять на заметку.
maximd4
21.09.2018 11:51У меня тоже бывали такие собеседования. Но, как правило, людям нужен книжный червь, который знает, чем отличается абстрактный класс от интерфейса и какой размер int.
Помнится, пришел в компанию, которая занимается разработкой ПО для автомобилей. Так вместо того, чтобы спросить, как я делал свой CarPC с GPS-трекером на борту (аналог Strava), какие решал проблемы, они задавали вопросы типа см. выше. Профильное же им было неинтересно.
23-летние сеньоры, что с них взять.poxvuibr
21.09.2018 13:46Но, как правило, людям нужен книжный червь, который знает, чем отличается абстрактный класс от интерфейса и какой размер int.
Для того, чтобы знать, чем абстрактный класс отличается от интерфейса не надо быть книжным червём, надо использовать на практике и то и другое и обобщить опыт. Что касается размера инта в используемом тобой языке — это просто все знают.
KoCMoHaBT61
21.09.2018 20:40+3Размер инта все знают? Ну, например, для Жабаскрипта какой он будет? А в V8? А в SpiderMonkey? А в DukTape? А в QT? А на Андроиде 32-бит? А…
Cerberuser
21.09.2018 22:36Вопрос, насколько я понимаю, с подвохом, поскольку официально в JS int отсутствует вообще, и надо знать, при каких условиях он всё-таки существует, помимо всего прочего?
stul5tul
21.09.2018 22:36Но, как правило, людям нужен книжный червь, который знает, чем отличается абстрактный класс от интерфейса и какой размер int.
Это тесты на уровень трейни/джуна. Чтобы не прошли через фильтр те, кто вообще не в зуб ногой.
Для миддла/сеньора — такие тесты свою функцию не выполняют.
maximd4
21.09.2018 22:42Для миддла/сеньора — такие тесты свою функцию не выполняют.
Собственно, это я и имел в виду.
Busla
22.09.2018 14:10В контексте работы с железом представление о размерности данных — это самое что ни наесть профильное.
onlinehead Автор
21.09.2018 11:58Это действительно интересный способ, я тоже его люблю и применяю, вместе с другими вопросами и темами. И очень радусь, когда меня спрашивают подобным образом.
Можно попробовать про все это еще статейку написать, со своими «имхо» о правильных-неправильных вопросах и что из них следует. Вместе с расшифровками, о которых упоминал achekalin, они и правда забавные и будут в тему.
teifo
21.09.2018 12:28Хммм, а такой игры нет? Принцип тот же. Есть квесты-баги, которые были успешно решены. Игрокам предлагается найти решение. Всякие подсказки присутствуют?:)
algotrader2013
21.09.2018 12:57Жаль, что подготовить такой квест сложно — к примеру, 23-х летнего сеньора, который сам пришел через год после того, как эта задача решилась, не посадишь его проводить кандидатам, а если уже раз спалили тему, то друг непрошедшего кандидата может прийти и показать себя красавчиком
speshuric
22.09.2018 13:07Не очень сложно, если собеседующий хорошо в теме. Цель квеста не в правильном ответе, а в правильном пути и в рассуждениях. И "правильный ответ" при одинаковых вводных может быть сильно разным. И, да, если друг
маминой подругинепрошедшего кандидата может пройти любой квест типа "ваша БД тормозит", или "приложение списывает со счета неправильную сумму", или "сервис внезапно перезапускается", то он красавчик.
PS: к примеру, 23-х летнего сеньора — это такая ирония?
speshuric
22.09.2018 12:57Да, кстати. Я почти всегда, если нанимаю разаботчика БД или DBA, если вижу, что кандидат адекватен, то делаю небольшой квест «Есть жалоба, что БД тормозит, что делаем?». На C#, Java лучше немного другие квесты.
BlessYourHeart
21.09.2018 01:45Конечно хорошо, когда поиском кандидата занимаются профессионалы, но вот ваш пример выглядит довольно странно.
Яндекс ищет себе сисадмина на линуксовые сервера. Почему им надо писать «Experience with algorithms, data structures, complexity analysis and software design», а не «опыт администрирования Unix/Linux»?
SRE это как бы немного шире, чем сисадмин и «функции» этих «человеков» различаются. Соответственно и различаются задачи и требования. Но, опять же, это все функции.onlinehead Автор
21.09.2018 08:59«Experience with algorithms, data structures, complexity analysis and software design»
Это же как раз к SRE относится. В целом, можно было взять любые другие вакансии этих компаний и там все было бы +- так же в большинстве случаев.BlessYourHeart
21.09.2018 09:36Именно. Это как раз к SRE и относится, а не к сисадмину. Немного разные функции ищут Яндекс и Гугл в вашем примере, не кажется вам?
Было бы любопытно увидеть вакансию от Гугла на аналогичную позицию сисадмина Линукс серверов. Мне кажется, что они бы в требованиях знание Линукс указали бы обязательно.onlinehead Автор
21.09.2018 09:51Я не пытался противопоставить эти 2 вакансии, я привел их как независимые примеры того, как составлены нормальные требования на разные позиции.
К админам они пишут следующее.
Minimum qualifications:
- Bachelor's degree in Computer Science, Electrical Engineering or a related technical field, or equivalent practical experience.
- 5 years of industry experience in technical support, professional services, engineering, sustaining engineering or systems engineering.
Preferred qualifications:
- 5 years of industry experience in technical support, professional services, engineering, sustaining engineering, or systems engineering including hands-on experience implementing, troubleshooting and supporting Internet-based applications, web servers, mail servers (e.g., Exchange, Lotus, sendmail, or Postfix) and Linux/Unix operating systems.
- Thorough Linux/Unix System Administration skills with understanding of network administration.
- Network troubleshooting skills with protocols such as BGP and VRRP.
Lissov
21.09.2018 18:31Возможно стоит уточнить в статье, потому что я тоже с первого раза прочёл как противопоставление, из-за оборота «вот что… а вот что ...». Потом дошло что оба примера положительные.
petrovichtim
21.09.2018 04:15У Вас ссылка на статью в википедии в которой написан пустой бред про мышление. Всем кому интересен этот вопрос нужно читать Ильенкова
3aicheg
21.09.2018 05:00Просто неприятная правда жизни состоит в том, что есть один, всего один, ровно один способ достоверно узнать, подходит вам некий работник или не подходит: нанять его на довольно продолжительный срок и посмотреть, как оно пойдёт. Какой практический вывод можно из этого сделать? Ещё одна неприятная правда жизни состоит в том, что практического вывода из этого сделать нельзя никакого, вообще никакого, абсолютно никакого. Потому что нельзя, при всём желании физически невозможно нанимать каждого кандидата на продолжительный срок и смотреть, как оно пойдёт. Как же быть, как быть? Неприятная правда номер три из нашего неприятного, но правдивого комбо: да как угодно! Составляйте требования к вакансиям, тестовые задания, гороскопы, привлекайте к проведению интервью самых трепетных девушек-психологов или, наоборот, самых толстых и бородатых сисадминов, отбирайте кандидатов при помощи RNG, русской рулетки или бросания кубика-рубика. Что угодно, чем сердце успокоится — ибо никакого другого смысла в вашей процедуре отбора, кроме как успокоить ваше сердце, всё равно не будет. Просто расслабьтесь и жмите «мне повезёт!» :)
mixaly4
21.09.2018 12:25Русская рулетка, гениально :-) Прям как в анекдоте: «Не люблю неудачников».
И конкурс стабильный — 6 человек на одно место.
JediPhilosopher
21.09.2018 14:25+1Я вот лично рассматриваю собеседования как возможность отфильтровать совсем уж непригодных кадров. Удивительно сколько приходит людей, требует приличный оклад, а на деле не может вообще ничего сказать, не может даже написать две строчки кода или ответить на простейший вопрос типа того же отличия интерфейса и абстрактного класса.
Вообще тут как и со всеми случайными величинами и гипотезами, есть ошибка первого и второго рода. Есть шанс взять неподходящего кандидата, есть шанс отфильтровать подходящего. А дальше уже каждая компания в зависимости от своих потребностей и финансовых возможностей может выбирать, какую из ошибок ей выгоднее минимизировать и как это сделать.Nalivai
21.09.2018 15:29Ну я вот на собеседованиях не могу вообще ничего сказать и написать ни строчки кода. Да я даже на вопрос «как вас зовут» не могу ответить. Потому что собеседования у нас, в основном, в виде суровых экзаменов где надо валить тупых студентов.
А в спокойной нормальной рабочей атмосфере я вполне себе пишу вполне себе код.
asash
21.09.2018 19:14+3А я вот кстати не согласен что «отличия интерфейса и абстрактного класса» такой уж простейший вопрос. Это вопрос довольно специфичный для Java-мира, и программист может прекрасно жить без этого знания если он например программировал на python или c++.
Что при этом не мешает при необходимости выучить java за пару недель при необходимости узнать и ответ на этот вопрос тоже.
Можно конечно сказать, что если человек устраиваться «разработчиком java» он должен знать такие вещи, но по моему мнению, если человек хорошо знает один язык то и второй освоит.JediPhilosopher
22.09.2018 01:32Как тут уже писали, человека обычно берут на определенную позицию для решения определенных задач. А не для того, чтобы он язык учил.
Первое время на незнакомом языке (даже имея хороший опыт в похожих языках) человек будет работать очень медленно — постоянно придется лазать в документацию и натыкаться на простейшие подводные камни повсюду — от синтаксиса до систем сборки и тулинга.
В большинстве случаев компания не заинтересована оплачивать человеку обучение языку с нуля, а хочет получить уже знающего специалиста. Поэтому вполне логично такими вопросами отсеивать тех, кто вообще не знает по теме ничего.rjhdby
22.09.2018 02:26Первое время человек по любому будет работать медленно, изучая контекст, текущую кодовую базу и правила/культуру.
Но вот если человек, извините, дурак, то он дураком и останется, как бы хорошо он не знал отличия интерфейса от абстрактного класса, а умный войдет в режим и начнет приносить пользу.JediPhilosopher
22.09.2018 20:47Ну а не зная язык он будет работать еще в два раза медленнее. Причем если человек знаком со стеком (ну там типичный джава-ынтырпрайзный мавен-спринг) то процесс вкатывания у него займет не очень долго. А вот если человек не знаком — то к этому добавятся еще недели на изучение этого всего. И при этом любая мелочь будет очень сильно тормозить процесс, там где у опытного разработчика уже набиты все шишки и есть готовые рецепты, новичку придется днями листать стековерфлоу.
Брать такого человека имеет смысл только тогда, когда найти нужного специалиста сложно. Например вот нужен разработчик на Scala — а их мало, фиг найдешь. Окей, сойдет и разработчик на джаве, а в крайнем случае и на другом языке, все равно переучивать придется.
Во всех остальных случаях не вижу большого смысла брать разработчика на другом языке.
Lexicon
21.09.2018 20:10Я уже писал о том, что Тимлид стал синонимом "программист со знанием Jira".
Для меня невероятно, что мои коллеги — те же самые люди с высоким окладом не считают нужным готовиться к приходу кандидатов с таким же высоким окладом, что ни в одной вакансии нет списка или хотя бы темы задач, которые будет проверять рекрутер.
Собеседование — само по себе — стресс. В таком состоянии — пропустить глазами блок функции или не помнить, как выполняются Х-ричные вычисления( изучаемые порой по 6 раз на 5 лет ) — совершенно нормально, задачи, где основная проблема — вспомнить, что такое семафор(в голове поезда) без википедии, а не обработать RC — печальная шутка и над собой и над соискателем.
Пикантности ситуации добавляют случаи, когда в вакансии 20 технологий, архитектурные знания, в "желаемом" новейшие библиотеки и методологии, информированность о уязвимостях и соискатель на полном серьезе читает, изучает, освежает знания в преддверии собеседования. А у рекрутера оказывается весь интерес — вопросы по языку в стиле "сделайте сортировку блинчиком".
Все было бы нормально, если бы не психология. В нашей сфере нормально проработать 10 лет, но остаться неспособным дать себе даже призрачную гарантию попасть в ту или иную компанию.
Провал никак объективно не отражается на результате — работу найти не сложно, собеседования везде разные, разные задачи, разные вопросы, разные руководители, бывает задач нет вовсе, бывают это именно те, что прочитал на медиуме "вчера". Но зарплата та же. Объективных причин огорчаться нет, но захотев попасть "куда-то туда", очень тяжело смириться со страхом перед непредсказуемостью.
alexovchinnicov
21.09.2018 05:30Полностью поддерживаю автора, мрак!
Не далее как вчера одна компания разыскивая гуру Linux со словами в вакансии DevOps, Kubernetes, Apache CloudStack, прислала мне в качества теста вопрос-фильтр: как не просадить iops при бэкапе работающего приложения с сохранением текущей аппаратной конфигурации, в рамках имеющихся возможностей и ограничений, на единственном сервере Linux на удаленное хранилище по FTP.
Предложите варианты решений для каждого из случая:
Случай 1: локальное хранилище LVM2, удаленное хранилище FTP.
Случай 2: файлы находятся на смонтированном томе NFS, удаленное хранилище FTP.
Случай 3: файлы находятся на ZFS, удаленное хранилище ZFS.
От случая 2 до сих пор в недоумении. Но описал в ответах ход мыслей и как это делаю или сделал бы я лично, выбрав из всех зол меньшее для этой задачи.
Сегодня, прочитав эту статью, я нашел вакансию компании на HH. Там всё как описал автор поста, портянка технологий и разнонаправленные требования. Ягодкой на торте:
- спокойная работа без стресса
achekalin
21.09.2018 10:13Где-то тут проскакивал «перевод» фраз из таких объявлений. Если обещают, что придется много разбираться в разных интересных областях, то переводом, если правильно помню, называли «бардак в компании», а «необходимость проявлять лидерские качества» транслировалась как «вас берут одного среди равных (скажем, разработчиков), но, за ту же з.п., будут считать начальником над ними».
Найти бы тот список переводом, очень в тему он был бы здесь.
stone_evil
21.09.2018 07:11+1Все это здорово и правильно, поддерживаю двумя руками.
Но необходимо учитывать, что часть вакансий (возможно, даже, бОльшая) создана для того, чтобы решить какие-то конкретные проблемы организации «здесь и сейчас», а не через 1-2-5 лет. Соответственно, и специалист им необходим для этого с конкретными знаниями конкретных технологий «здесь и сейчас».MikeTolkachev
21.09.2018 08:00Вот в этом и есть ошибка. Если нужно решить конкретную проблему, да ещё и конкретным набором инструментов, то это означает, либо подобное решение уже существует, либо существует пошаговый алгоритм решения.
В таком случае нужен не программист, а машинистка с хоршими навыками набора текста.Krat0S
21.09.2018 08:24Нет тут ошибки.
К конкретной проблеме и конкретному набору инструментов забыли добавить: в конкретной инфраструктуре и в в конкретном, уже существующем решении.onlinehead Автор
21.09.2018 09:17в конкретной инфраструктуре и в в конкретном, уже существующем решении.
Подобные требования всегда мне напоминают про «нужен сотрудник до 23 лет, желательно студент последних курсов с опытом работы от 10 лет с технологией, которой еще 5 лет нет».Krat0S
21.09.2018 09:30А мне напоминают объективную корпоративную реальность.
Множество внутренних решений (да-да, древние технологии, легаси и т.д и т.п.), с которых, в обозримом будущем, компания не пересядет на космолёт однозначно.
И да, эти решения надо развивать и поддерживать.
Бизнес не хочет и не будет ждать, пока мы переобуемся.
Поэтому да — нам нужны работники для разработки в конкретной инфраструктуре и в в конкретном, уже существующем решении.onlinehead Автор
21.09.2018 09:48Поэтому да — нам нужны работники для разработки в конкретной инфраструктуре и в в конкретном, уже существующем решении.
Ну так ваше право. Поэтому они дорогие, их сложно найти и они навсегда прибиты к этим технологиям и умрут вместе с ними, потому что такое сочетание стека, как у вас, есть еще… у вас. И что-то может быть похожее у непосредственных конкурентов сопоставимого возраста.
Бизнес ждать не должен, просто это должно делаться в параллель с увеличением расходов на все это, а это как раз бизнес не очень любит, пока его не клюнет.
Oskal174
21.09.2018 10:47Я считаю, что для «здесь и сейчас» можно и фрилансера нанять для решения такой задачи. А на собеседовании брать именно «мозг», а не «технологию».
С автором согласен на все 100%.JediPhilosopher
21.09.2018 14:31Ну «сейчас» может быть довольно длительным — месяцы, год. В таком случае свой сотрудник будет дешевле.
Плюс вопрос сложности въезжания в корпоративную инфраструктуру и кодовую базу. Одно дело — нанять фрилансера сделать пятиминутный фикс в стандартном шаблоне. Другое дело — нанимать фрилансера для того же пятиминутного фикса в тонне легаси кода, который он будет разгребать и понимать месяц, прежде чем поймет что делать. А потом для следующего фикса нанимать еще одного, и тоже терять месяц ради пяти минут? Нет уж, лучше собственного постоянного сотрудника, один раз инвестировать в него время и деньги на обучение вашим сложностями и дальше чтобы он работал.
Ну и совсем крайние случаи — всякие коммерческие тайны, финтех и т.п. Где вообще не стоит доверять свой код и инфраструктуру какому-то левому человеку с фриланса, о котором вы знаете только его логин в скайпе и номер счета.
kkurochkin
21.09.2018 08:39Все что автор пишет справедливо, но отчасти и если не касается Энтерпрайза в котором как правило зоопарк технологий от самых современных до давно уже всеми забытых. В этом случае человек нанятый на технологию, будет актуален и через пять и через десять лет.
strofimov79
21.09.2018 09:04Правильная статья. Поддержу автора. В российском ИТ засилье тупых девочек из HR. Но это даже хорошо. Даёт уверенность, что Запад не загнётся, как хочет убедить нас отечественный агитпро.
Автор еще забыл упомянуть про характерные для туповатого российского HR описания вакансий с типичными требованиями:
а) Full-Stack (перевожу на понятный: «мы всё равно не разбираемся в этих технологиях ни хрена, но хотим побольше»);
б) «Чай-печеньки-фрукты» (перевожу: «дома-то вам, смердам, всё равно такое жрать не по карману, так хоть в офисе запах понюхаете»);
в) «Мы работаем по agile» — ну_ебить, какие вы прогрессивные-то, у меня даже трусики стали мокрыми
И ТД И ТПonlinehead Автор
21.09.2018 09:09Это все не только к российским компаниям относится.
«Мы работаем по agile»
Это мне сказало минимум 4 европейских компании на собеседованиях, кое-кто даже уточнял что у них Scrum и спрашивал «а вы знаете, что такое score points и как их применять»?
«Чай-печеньки-фрукты»
Мне кажется это просто паста, но в целом это не плюс и не минус. Есть — замечательно, нет — ну и хрен с ним, если все остальное отлично (хотя обычно там не бывает).
Full-Stack
В это плане особенно страдают позиции DevOps-ов и SRE (может еще какие-то, но эти ближе к моему профилю). Очень часто встречаются позиции, где за средние на рынке деньги работодатель хочет серьезного программиста с опытом 5+, знанием тучи всего и еще прицепом умеющего в CI/CD, тестирование, архитектуру, контенеры, орекстраторы и далее по списке. Эдакий человек-орекстр который может все сам, и желательно бесплатно.achekalin
21.09.2018 10:16И желательно, придет в компанию, где нет этого всего, и «внедрит и переведет на новые рельсы, а то мы два года пытаемся, да все руки не доходят из-за текучки».
И вы еще не упомянули про «знание облачных технологий»!onlinehead Автор
21.09.2018 10:39«знание облачных технологий»
Для меня это отдельная боль как для человека, который занимается k8s, микросервисами, миграциями и иже с ними:)achekalin
21.09.2018 10:42И вот вы такой, красивый, общаетесь с HR-ом, рассказываете, как вы классно в проекте построили k8s со всеми положенными девушками и плюшками, как там все подняли, а она вам — «ой как здорово, но у меня вот тут вопрос, вы знаете, что такое А-ВЭ-ЭС или гуглклауд, я правильно прочитала?»
onlinehead Автор
21.09.2018 10:46Я уже не работаю в России и просто не отвечаю (и не подаю резюме) в компании, где есть риск подобного.
Хотя мне пару раз звонили такие товарищи, которые явно в технической части -2 по шкале 0..10 и задавали очень странные вопросы. Но, по крайней мере произнести «эй-даблю-эс» все HRы в состоянии.
А вот до этого — да, было:)
Eleneldil
21.09.2018 16:55Про agile может быть и просто информированием об условиях работы. Кому-то нравится agile и мотивирует на вакансию. А кто-то терпеть его не может, и, увидев эти слова, резонно сэкономит время и себе, и компании.
fukkit
21.09.2018 17:23Про agile — это предупреждение, что туда соваться не следует, если только не рассчитываете на доп. молоко за вредность.
onlinehead Автор
21.09.2018 17:25Не так ужасен Agile, если его нормально готовят, а не просто прекрывают им существующий хаос и бардак.
Eleneldil
22.09.2018 17:13Но, заметим, какой из вариантов скрывается за строчкой в описании вакансии, не узнаешь, пока туда не попадёшь. Хотя тому, кто сам в agile понимает (даже если не любит его), это даст повод заранее подумать, что спросить, чтобы понять, что там. Так что, выходит, строчка всё же скорее не лишняя.
White_Scorpion
21.09.2018 09:06Самое смешное, когда компании отдают HR на аутсорс… И вот ты приходишь в абсолютно стороннюю HR-фирму, тебе задают вопросы о том "на чём ты писал/что использовал?", ты начинаешь отвечать… И понимаешь, что "клиент поплыл". Т.е. опрашивающий обычно вообще ни бельмеса в стеках и технологиях, даже если они записаны у него на листочке и буквально после пары предложений — у него стекленеют глаза и он становится похож на обезьянку, которая загипнотизированно кивает в след твоим словам:
- Вы слышите меня, бандерлоги?
- Мы слышим тебя, о Каа… :D
onlinehead Автор
21.09.2018 09:15Это да…
Но — позитивный пример.
Пару раз я собеседовался в Google (на уровне первых этапов) и оба раза (с промежутком в 5 лет) у них входящий фильтр ровно один — 20 базовых вопросов по элементарным вещам и ряд вопросов типа:
— На каком языке вы пишете?
— На N
— Отлично. Оцените по пятибальной шкале свое знание N?
Причем в процессе разговора девушка однажды честно мне призналась что «у меня нет такого варианта ответа, может быть вы имели ввиду M?». Я был позитивно удивлен этим, кстати.
Оба раза я кстати кстати этот фильтр не прошел, потому что мне честно сказали, что то, как я оценил свои знания — недостаточно для той позиции, на которую я хотел. И это было весьма обидно:) С другой стороны, это такая хорошая подсказка на сколько я должен знать и что потом могут спросить подробнее. И это как раз примерно то, как надо проводить входящую фильтрацию.Angerslave
21.09.2018 10:05Оцените по пятибальной шкале свое знание N?
Такая постановка вопроса меня вообще удивляет. Кто-то может контрибутить в ядро и знать сколько он не знает, поэтому поставит 7-8. А кто-то просто несколько проектов написал с использованием тулзы и поставит себе 8-9. Интересно, как они эти данные нормализуют, чтобы извлечь хоть какую-то пользу?onlinehead Автор
21.09.2018 10:12Последний случай про 8-9 вскроется на следующем собеседовании с понятным результатом.
Что касается первого — видимо есть какая-то нормализация с учетом оценки опыта и предыдущих проектов, резюме-то у них есть… С другой стороны, дальнейший отбор делается людьми (по крайней мере, на мой взгляд), которые все-таки умеют анализировать по косвенным признакам.White_Scorpion
21.09.2018 13:35Проблема как раз в том, что первый случай — может просто отсеяться. Учитывая, что чем выше рост профессионализма тем выше самокритика обычно — человек грамотный может оценить себя на 7-8 и не получить работы. А "хвастун" — заявит 9 и пройдёт дальше. Да он отсеется на последующих собеседованиях, но первый-то на них (собеседования) даже не попадёт.
sshmakov
21.09.2018 20:499 по пятибалльной шкале… Это пять!
White_Scorpion
21.09.2018 21:09Учился по 10-тибалльной системе и она продолжает меня преследовать :D.
fpir
21.09.2018 11:31А кто-то посмотрел 7ми минутный ролик на ютубе и уверен, что знает на 11, потому, что ещё чутка сам придумал.
aknew
21.09.2018 12:32Веселее когда ты потом приходишь на конечное собеседование и понимаешь что либо вакансия не о том (скажем, андроидщик приходит и выясняется что ищут айосника) или же что компании прислали не твое резюме, а заполненное этими самыми промежуточными HR-ами, причем узнаешь ты когда собеседующий говорит что-то в стиле «а в резюме ты заявляешь что знаешь эту библиотеку».
JediPhilosopher
21.09.2018 14:35+1Круче когда тебе же еще и приходится поправлять опрашивающего в названиях технологий, который не может их с листочка прочитать правильно, в итоге сперва еще приходится угадать что он тебе пытается сказать.
BingoBongo
21.09.2018 15:18+1Со мной так не парились, сразу спросили что-то типа «Скажите, вы в своей области хорошо разбираетесь?».
ZurgInq
21.09.2018 16:31«на чём ты писал/что использовал?» — это ещё адекватно. Могут спросить «а какими ещё программами вы пользуетесь?». Дизайню код в фотошопе блин, и уверенное владение вордом для редактирования и оформления кода.
DenimTornado
21.09.2018 09:34Вы серьезно? Вас отсеяли потому что вы недооценили свои знания… это по-вашему нормально? Это же классика, сначала думаешь, что ну вот, почти все знаю. Проходит год и ты такой, блин я нифига не знаю в технологии N
onlinehead Автор
21.09.2018 09:44Ну в целом, я им сказал правду, они мне сказали правду, что этого маловато, на этом мы и разошлись.
Да, в какой-то мере это была перестраховка с моей стороны (можно было бы сказать на 4\5 из 5) и я бы наверняка дошел до следующего этапа, вот только я то прекрасно знаю на сколько я знаю это N и если им знания в этой области так нужны и важны, то стоит наверно его еще подучить.
Кстати, это неплохо уберегло от стресса, потому что завалиться на относительно простых вопросов о штуке, которую ты, как заявил, знаешь как минимум на 4, это весьма и весьма неприятно.
Если это было искреннее заблуждение, то тут уже другой вопрос. Правда спуск на землю будет еще более жестким в таком случае.
Vantela
21.09.2018 10:49-1Согласен со всем написанным, но… вынужден внести ремарку.
уметь рассуждать и учиться, уметь делать обоснованные предположения о том, что не знаешь.
Так вот. Лет 6 была у меня ситуация когда в отделе не хватало рук. То есть задачи нельзя сказать, что были сложные, но их было много. И я с тимлидом, ощущали понятный дискомфорт. Штатка на 3го сотрудника у начальства была выбита, но бюджет был прямо скажем не очень велик. Решили что спеца нашего профиля на такие деньги найти без шансов. Решили искать ораклиста. Пошли соискатели…
И очень быстро я осознал, что фраза «Я быстро обучаюсь и разбираюсь в новых технологиях» хорошо для вас звучит только когда вы ее произносите на собеседовании сами.
А вот когда вы интервьювер и слышете эту фразу, то эмоции совсем другие.
Грубо говоря, продолжаешь улыбаться, а про себя думаешь:
«А не пойти бы тебе молодой человек сначала поучиться, а уж потом идти деньги зарабатывать. А то пока ты будешь быстро учиться за счет компании работать со страшной скоростью за тебя буду я...»GalVorbak
21.09.2018 11:34+2А не пойти бы тебе молодой человек сначала поучиться, а уж потом идти деньги зарабатывать
Можно ли эту фразу перефразировать как «А не пойти ли тебе поработать 2 года за копейки в никому ненужной компании, где ты научишься ненавидеть себя и весь мир, почти не приобретя при этом полезного опыта, потому что мы не хотим инвестировать в тебя и твоё будущее, нам важна прибыль здесь и сейчас, а на завтра нам наплевать»?
Не поймите меня неправильно, но это довольно забавно, что все ищут состоявшихся спецов, но почти нигде не готовы этих спецов подготавливать сами. Возможно, именно поэтому у вас и случился такой жесткий недостаток квалифицированных кадров. Возможно, годом ранее вам следовало инвестировать в нового сотрудника. Возможно.Vantela
21.09.2018 13:11Кто ж спорит. Это было бы прекрасно сразу после универа, без всякого опыта и практических знаний сразу устроиться в тот же Эппл, чтобы в меня как следует проинвестировали. Как деньгами, так и временем серьезных профессионалов, которые бы меня обучали опять же за счет компании. Я же вместо этого, как вы правильно выразились, просидел годы в никому не нужной компании и
не пробрел… А! Простите! Опыт то я вполне полезный набрал. До сих пор его использую. Это от человека зависит. Кто то сидит в никому не нужной компании и занимается никому не нужными вещами, а другой учится, чтобы было, что показать в нужных компаниях.
К сожалению, мы живем в реальном мире. И здесь неИТишная компания не видит своим призванием обучать и воспитывать кадры которые чуть подучившись удерут продавать себя в других компаниях.
Возможно, в каком то более справедливом и лучшем мире все будет иначе. Возможно.
Поэтому давайте я перефразирую фразу несколько по другому:
«Мы компания с годовой выручкой в пару-тройку сотен миллиардов рублей. Наша деятельность не связана с ИТ. Поэтому нам нет смысла выращивать ИТ-самомородки и тратить на это время и деньги. У нас есть ИТ-системы которые необходимо поддерживать, обслуживать и развивать и именно за выполнение этих задач мы готовы платить деньги. Если специалист не способен выполнять эти задачи, то мы готовы повторно с ним побеседовать через пару лет. Если у него будет желание, а у нас открытая вакансия.»GalVorbak
21.09.2018 13:50Это было бы прекрасно сразу после универа, без всякого опыта и практических знаний сразу устроиться в тот же Эппл, чтобы в меня как следует проинвестировали
Ха(эппл)-ха(майкрософт)-ха(гугл)-ха(интел)-ха(амд)-ха(нвидия).
Это вполне себе реальный сценарий развития событий во многих крупных технологических компаниях. В россии же готовностью взять стажера могут похвастаться в лучшем случае 1 из 5 компаний, но я бы даже сказал, что 1 из 10.
Опыт то я вполне полезный набрал. До сих пор его использую. Это от человека зависит. Кто то сидит в никому не нужной компании и занимается никому не нужными вещами, а другой учится, чтобы было, что показать в нужных компаниях.
Хорошо быть вами. Однако очень часто такие должности сами по себе не позволяют получить достаточного количества востребованных и полезных навыков. Очень часто приходится идти, например, эникейщиком и учиться в свободное от работы время. Учиться в свободное время, конечно, хорошо, но неплохо бы ещё при этом не поехать крышей от постоянного стресса (а стресса у молодых людей в таких условиях будет немало). У нас в стране как-то любят игнорировать тот факт, что регулярные стрессы и перенапряжения ничем хорошим для человека не обернутся.
И здесь неИТишная компания не видит своим призванием обучать и воспитывать кадры которые чуть подучившись удерут продавать себя в других компаниях.
Почти любая компания не видит, но должна видеть. Потому что специалисты на деревьях не растут, и где-то их воспитывать надо. Конечно, способ «поработать несколько лет за еду и подучиться» работает, только эффективным он не является. На нормальной стажировке уже через полгода сотрудник будет способен окупать себя, а через 2 года он ещё и вернет вложенные в него инвестиции. И после такой «программы» он будет гораздо более квалифицированным, чем тот, кто работал «за еду» и учился сам.Vantela
21.09.2018 14:16Крупных ИТ технологических компаний. Итшники не только в таких работают. Более того, в таких работает мало Итшников. По сравнению с.
Ну вот соседа по комнате в общежитии не взяли в Касперского после стажировки там же. Это не значит, что я согласен с вашим утверждением про Россию и 1 к 10. Просто не взяли.
Но попробуйте взглянуть с точки зрения работодателя на проблему отсутствия опыта потому что не берут получать опыт без опыта.
Они лучше возьмут на работу меня. Который все таки поработал и имеет и опыт работы(в том числе в коллективе) и кое какие навыки и т.д.
Да мной быть хорошо. Согласен.Nalivai
21.09.2018 16:18Все единогласно жалуются на дефецит кадров. Вас, таких умных и замечательных, обучившихся всему самостоятельно в свободное от работы время все-таки мало. У некоторых нет свободного от работы времени потому что надо на что-то кушать, у некоторых нет способностей к быстрому и эффективному самообучению. Некоторые самообучаются и уверены что они теперь супермегаспецы, а на поверку оказывается что самообучились они плохо и не тому, потому что откуда им было знать-то.
Vantela
21.09.2018 16:39А почему в свободное от работы то? Мне казалось это самое правильное — работать и этому то и учиться. Прямо на рабочем месте. А если вместо котиков, видосиков
и хабратоже учиться… нет это уже фантастика.
Ну, я не супермегаспец. Но на собеседовании лучше сказать иначе.;-)
Вон там выше история от соискателя в гугл, пострадавшего из-за скромности.
PS Отвечу Neikist в уже написанном посте:
Хорошо. Пусть противоречу. С вашей точки зрения. А с моей нет. Какой то опыт у нас, видимо, разный в этой жизни, раз вы противоречие видите, а я нет.Neikist
21.09.2018 16:41А не пойти бы тебе молодой человек сначала поучиться, а уж потом идти деньги зарабатывать. А то пока ты будешь быстро учиться за счет компании работать со страшной скоростью за тебя буду я...
По моему вы сами же себе противоречите.
Mabusius
21.09.2018 17:27А почему в свободное от работы то? Мне казалось это самое правильное — работать и этому то и учиться.
И тут образуется замкнутый круг. Чтобы научится, нужно найти работу. Чтобы взяли на работу — нужно быть уже наученым.AWSVladimir
21.09.2018 18:17+1И тут образуется замкнутый круг. Чтобы научится, нужно найти работу. Чтобы взяли на работу — нужно быть уже наученым.
К слову учился сам, тогда профессия была гуманитарная.
Мне было интересно ковыряться с ассемблером, писать программы, мне просто было интересно, общался с такими же людьми.
В один прекрасный день, ко мне подошел знакомый и предложил работу с зарплатой в 5 раз большую, чем я получал.
Так я ушел в IT профессию.
И мне жалко тех людей которые идут в IT за рублем, а не из-за интереса, т.к. читать техническую документацию дома, или дома ковыряться в новом движке/языке это просто наслаждение. А если не любишь — каторга.
Видно первую(за интерес) и вторую (за рубль) группу людей которые работают в IT. И если человеку интересно, он легко может подтянуть, то что ему не хватает дома. Потому что это интересно!!!
А когда я начинал было только FIDO и то что бы туда попасть нужно было проделать нехилый такой комплекс телодвижений.
А теперь ролики, курсы, форумы, бери — не хочу.
Нужно только одно, ЖЕЛАНИЕ и интерес!!!Neikist
21.09.2018 18:25И время. Я вот уже 4 года пишу код на 1с на работе, в свободное время читаю стать на хабре, изучаю разные интересные мне концепции и технологии, макконела и дядюшку боба читаю. Но к переходу в нормальное программирование все еще не готов. Нужно лучше подтянуть базу в виде алгоритов (все эти балансировки деревьев, динамическое программирование и т.д.) а также фреймворков и библиотек (все эти даггеры, rx и т.п.). Тогда может и пройду на джуна, а без этого судя по тому что я вижу в вакансиях, обсуждениях и от знакомых программистов (виртуально правда, из одного чатика к подкасту о программировании и еще пары в телеграме по разным технологиям) все грустно будет. А все это осваивается довольно долго даже с умением программировать на чем то другом. А уж если кто вообще со стороны заинтересуется — точно несколько лет нужно будет.
AWSVladimir
21.09.2018 18:42+2Коллега, не обижайтесь, но пишите не о том.
Вернее, у Вас не верные представления о работе разработчиком.
Балансировку деревьев, с индексным поиском делал только 1 раз для пром.компьютеров где нельзя было поставить базу данных.
Продумывание алгоритмов, в основном тоже для аппаратных устройств которые требовательные к передаче информации, среде запуска. Остальные 99% работы на штатных библиотеках, в которые уже не заглядываешь, как раньше с вопросом что, как, почему?
И зачем переходить с 1С на другие языки?
Если вопрос в деньгах, то малая прослойка в языках может дать зарплату выше + халтуры для 1-эсников могут только снится другим разработчика.
Я ушел с 1С потому что меня тошнило от ограничений, а начинал работать еще под досовской версией, полностью закончил на 7,2 версии. И я счастлив, что не работаю с 1С, хотя я ушел в свое время на меньшую зарплату из 1С.
Если с 1С «не прет», не тяните, проходите собеседования. Ищите «ваш коллектив», «вашего руководителя» и «вашу работу».
Сходите на собеседования, посмотрите кто, как и в каких условиях работает, найдите свой идеал и вперед к своей мечте.
Тянуть нельзя. Если есть страх к перемене — это хорошо, значит на верном пути. Вперед, вперед к своей цели.
К слову, последнюю работу почти год искал.Lissov
21.09.2018 18:56-1Балансировку деревьев, с индексным поиском делал только 1 раз для пром.компьютеров где нельзя было поставить базу данных.
С одной стороны да. А с другой потом вот так человек впишет запрос из базы с цикле, и вроде всё ок и работает, а но продакшене вдруг формочка 15 секунд открывается. Никто не говорит, что надо по памяти уметь балансировать деревья, но хоть примерно знать базовые вещи надо.AWSVladimir
21.09.2018 19:25+2Это все теория, практика другая.
Если есть сроки заказа, то заказ должен быть выполнен в срок и даже если формочка открывается не 15 секунд, а 1,5 минуты в тестовой эксплуатации (некоторые заменяют тестовую эксплуатацию продакшеном) ничего страшного, нужно разбираться. Если база, то блокировки, индексы, планы, структура запроса, потом настройки самой базы, железа и тд, все смотрится.
Если проблема не с базой то смотрятся какие объекты, выделение памяти, другие ресурсы и тд и тп. То есть этап оптимизации. В отдельных случаях приглашаются узкие специалисты для оптимизации.
Но первым пунктом должно все работать правильно в приемлемые сроки.
И оптимизация оптимизации рознь.
Мы вон давеча с админом базы бились над ускорением запроса за сотые доли секунды пробуя различные варианты выборки данных.
Всегда все индивидуально.
Если программер делает правильный и не оптимальный код, ничего страшного в этом нет. Оптимизация это лишь определенный уровень знаний. Главное, что бы котелок работал и был интерес, а оптимизации такой человек быстро научится в команде. Посмотрит исходники, спросит коллег, и через полгода будет делать не хуже тех кто 20 лет отработал.
Так как в каждой конторе применяются накатанные шаблоны и решения, если есть какая то проблема, то разработчик не подходит к кирпичной стене и не разбивает свою голову в кровь под улюлюкание коллег и руководства.
Если есть какая то серьезная проблема, то ее решают сообща и решение таких задач, как глоток свежего воздуха для программеров, поизголяться в не стандартном решении.
Так что вперед, на новую работу!!!Neikist
21.09.2018 19:48+1Не, у нас конечно тоже всегда торопят по срокам и т.д., но про то что нужно учитывать сложность написанного кода от данных и размера базы — учат сразу. Одно дело если это проект, там еще такое куда ни шло, хотя не по мне это, обычно если требуется несколько вложенных циклов или 7 раз через точку вытащенный родитель в запросе по которому соединение шло (реально видел) — то что то тут не так. Это я уж не говорю про разработки 1С: Совместно или просто свои конфигурации коробочные. Релиз конечно в 1с перешлешь новый, но осадочек останется.
Lissov
22.09.2018 00:40Это все теория, практика другая.
Нет, это как раз практика. Трагедии конечно никакой, поправили. Ошибаются все.
Но одно дело ошибаются, а другое дело в принципе так делают всегда.
(irony)Конечно, надо выполнить заказ в срок, потом взять новый заказ на оптимизацию, потом на переделку, потом на оптимизацию переделанного, а потом вечно поддерживать это потому что никто кроме Вас не разберётся — можно годами зарплату получать, а сделаешь сразу хорошо — и что завтра кушать?(/irony)
Но вообще то я другое имел в виду. Если человек не умеет крутить шуруповёртом, спросит, почитает, научится. А если он не знает о его существовании, то все шурупы окажутся забитыми молотком.
А ещё на практике знание факта, что существуют деревья, почему-то кореллирует с «котелок варит».
Neikist
21.09.2018 19:43+1Ммм… То что на практике оно используется нечасто (хотя все равно полезно знать асимптотику того что под капотом у операций со стандартными объектами платформы/языка) — это конечно так. Только вот на собеседованиях насколько мне известно их действительно спрашивают. Да и интересно все же иногда почитать про такие вещи. Плюс в нашем городке годных мест раз-два и обчелся, в остальных php и js которые мне эстетически не нравятся так же как и 1с (ну ладно, js хоть и не нравится, но для него дарт, тайпскрипт и флоу есть, другое дело что на них у нас также никто не будет писать)).
А сваливать лишь бы куда не хочу, хочется работать с интересными и приятными мне языками и технологиями, вот и хочу максимально увеличить шансы на попадание в интересное место хорошенько подготовившись.
0xd34df00d
21.09.2018 19:03Я, конечно, не знаю всего спектра вакансий и требований, но алгоритмика и даггеры с rx (блин, я даже не знаю, что это такое) как-то, ну, короче, можно только одно из этого. На мой взгляд.
Neikist
21.09.2018 19:58Разве? Вот реально недавно общался в чатике одного подкаста и спросил у одного человека что на собеседовании спрашивают — ответили: b vs b+ tree, нормальные формы, статические и динамические индексы это про субд, про алгоритмы: «avl или rb tree, бфс\дфс, дейкстра, построение мст, макс флоу». Блин, дя я из всего этого разве что про нормальные формы что то смог бы поговорить, да дейкстру как то вычитал в «Грокаем алгоритмы».
А ведь это не считая естественного требования знать библиотеки и MVP/MVVM/MVC и т.д.
До этих вопросов я сомневался куда начинать двигаться: андроид или бэкенд, но после решил что однозначно андроид, по моим ощущениям там попроще все же. Бэкенд вряд ли собеседование пройду.AWSVladimir
21.09.2018 21:20Профессия программист, сейчас намного шире других профессий.
Позиционирование, как и знание языка разработки ну очень разное.
Требование на вакансию программиста:
-Ядра СУБД
— разработки видеокодеков
— разработчика сайта Ростелеком
— Написание модулей под «Парус»
вопросы будут ну очень разными.
Нужно спрашивать на вакансию, которую вы хотите идти.
И надо идти не где проще, надо идти где интереснее.
И зачем решать не свойственные вам задачи «вряд ли собеседование пройду»?
Возьмут или не возьмут? Это ведь не Вы решаете!
Ставьте другие вопросы:
Как получить максимальную зарплату, при своем бекграунде? Как часто повышают зарплату, куда я устраиваюсь?
Как происходит постановка задачи, какие циклы разработки используют? Сколько человек будут указывать что делать? Круг обязанностей (только программировать или еще лампочки вкручивать, шкафы таскать, кабеля прокладывать?)
Не только Вас выбирают. но и Вы! выбираете.
Несколько лет назад меня тут заминусили за это высказывание, но как только вы будете ставить во главу угла СЕБЯ и под СЕБЯ искать проекты (что Вам нравится), коллектив, руководство, работать будет намного интереснее, за ту зарплату которую Вы хотите получать.
Так как сменить город или даже страну для ийтишника не пролема, если сравнивать с другими профессиями.linux_art
22.09.2018 07:59Подпишусь под каждым словом. Работа должна приносить удовольствие, а не только деньги.
Lissov
22.09.2018 00:57b vs b+ tree, нормальные формы, статические и динамические индексы это про субд, про алгоритмы: «avl или rb tree, бфс\дфс, дейкстра, построение мст, макс флоу»
В странах бСССР традиционно спрашивают больше теории, чем в западной Европе. Но уже не всегда.
Я бы разбил на такие темы:
«нормальные формы, статические и динамические индексы это про субд» — если позиция подразумевает проектирование/доработку/администрирование БД, то знать это надо. Опять таки не обязательно выдать все нормальные формы по памяти, достаточно знать что это и почему важно.
«Алгоритмы» — в единственном месте работы где такие алгоритмы я видел в коде, меня про них не спрашивали :) но там таки было интересно.
Во всех остальных случаях отвечаю так "10 лет назад я по памяти мог написать совершенно нечитаемую сортировку с Goto, которая работает значительно быстрее стандартной QuickSort, и всё ещё могу распознать где это надо и нагуглить. Но если Вы меня возбмёте на работу, я буду писать Array.sort()." Аналогично с другими алогоритмами.
«Паттерны и структурирование кода» — это нужно обычно всем и везде, но не все спрашивают.
«Особенности фреймворков, тулзы, узкоспециализированные вещи» — это зависит от конкретной вакансии и обычно приходит с опытом.
MacIn
21.09.2018 20:52Мне было интересно ковыряться с ассемблером, писать программы, мне просто было интересно, общался с такими же людьми.
В один прекрасный день, ко мне подошел знакомый и предложил работу с зарплатой в 5 раз большую, чем я получал.
Так я ушел в IT профессию.
Проблема только в том, что за последние годы технологии несколько поменялись. И если 20 лет назад я сам с удовольствием ковырял на своей машине ассемблер, баловался с самописной ОС, делал небольшие игры и так далее — все в охотку, все в удовольствие, то теперь, желая работать, скажем, с современным backendом я должен знать не только язык (который можно синтетически выучить на синтетических проектах), а еще и работу с конкретными фреймворками, которые вживую употребляются только в сложных, не синтетических системах и то далеко не везде, скажем, та же Enterprise Java с экосистемой (условно). И получается, что чем дальше, тем сложнее самому изучать актуальные технологии, экосистемы. И тем скучнее.
Все равно придется идти куда-то на низовой уровень, там учиться на практике, потом гордо писать коллегам «it was nice time that I've spent with you all, but it is time to move forward», типа «лузеры, я пошел дальше».
MacIn
21.09.2018 20:44А почему в свободное от работы то? Мне казалось это самое правильное — работать и этому то и учиться. Прямо на рабочем месте.
Ага, т.е. человек, который будет учиться востребованным и актуальным технологиям должен сначала прийти в фирму, ищущую специалиста, уже состоявшегося, в актуальных востребованных технологиях. Замкнутый круг, однако — т.е. возвращаемся на исходные позиции: должны-таки найтись компании-«альтруисты», готовые готовить спецов. И это, конечно, должна быть любая компания, но не ваша.
А на деле стажеров будут брать (я не про китов индустрии) от безысходности компании средней руки на невнятные технологии, навыки связанные с которыми потом будут нигде не нужны, с невнятными процессами и так далее.
White_Scorpion
21.09.2018 15:57Ваша точка зрения понятна, но вот меня немного зацепило вот это:
Поэтому нам нет смысла выращивать ИТ-самомородки и тратить на это время и деньги. У нас есть ИТ-системы которые необходимо поддерживать, обслуживать и развивать и именно за выполнение этих задач мы готовы платить деньги.
Но при этом вы хотите практически воровать* готовых специалистов у других компаний, которые IT и которые вкладывались в их обучение? И это при том, что у тех IT компаний возможно не было подобного: "с годовой выручкой в пару-тройку сотен миллиардов рублей" — так получается?
К тому же вам в минус идёт то, что мало того что вы хотите переманивать готовых специалистов, так вы ещё и посадите их на "несложные задачи поддержки и обслуживания".
То есть какая-то компания с интересными задачами, должна недосчитаться вышколенного и обученного работника, которого хотите вы, но при этом у вас готовый специалист будет заниматься "несложными задачами", которые в принципе не покрывают его квалификацию, а людей, достаточной для вас квалификации — вы, несмотря на размах вашего общего бюджета — готовить и поддерживать не желаете?
P.S.
*воровать — тут недостаточно корректный термин, но он призван подчеркнуть некоторый негатив подобного поведения.Vantela
21.09.2018 18:06+1Переманивать. HRы это называют переманивать.
Но я не HR. Я никогда этим не занимался.
И тем более не стану говорит за них. Может они действительно считают «переманивание» нормальным.
Но я бы предпочел, чтобы меня иногда переманивали. С умножением зарплаты хотя бы процентов на 30%. ;-) А честно или не честно… Люди не в честность играют. Они деньги зарабатывают.
Но я ничего и ни у кого не ворую и не хочу воровать.
Вы считаете мои задачи поддержки\обслуживания\развития несложными? Ок. Это ваше право. Не будем спорить. Возможно, они действительно проще, чем разработка гугл ассиста или Сири. Но, отмечу, очень малый процент ит-специалистов занимаются действительно столь серьезными задачами.Neikist
21.09.2018 18:13+2Может с увеличением? А то умножение на 30% — это понижение))
Вы считаете мои задачи поддержки\обслуживания\развития несложными?
Вообще вы сами обозначили сложность задач на которые людей искали.
То есть задачи нельзя сказать, что были сложные, но их было много.
White_Scorpion
21.09.2018 19:29+1Переманивать — это у HR, а у вас интересная позиция: сам кого мне надо — воспитывать и обучать не хочу, но специалиста вам — вынь да положь. Потому и я и применил такую вот словесную экспрессию.
Есть ведь ресурсы — чего стоит приложить усилия? Но нет — хотим чтобы другие теряли деньги и время, а мы, такие хитропопые, потом перекупим, когда ещё не заматерет, но будет уже слегка продвинут.
Вы сами написали, что это несложные задачи, но их много — потому и нужен человек, чтобы распределить нагрузку.
M_AJ
21.09.2018 18:36+1У нас есть ИТ-системы которые необходимо поддерживать, обслуживать и развивать и именно за выполнение этих задач мы готовы платить деньги
но бюджет был прямо скажем не очень велик. Решили что спеца нашего профиля на такие деньги найти без шансов
Прямо классика:
«Нам необходимо сделать одну работу, мы даже готовы (подумать только!) платить деньги, но… не очень большие. Сказать по правде, настолько „не очень“, что мы и сами не особо верим, что найдется дурак, который согласится на наши условия, но надежду пока не теряем.» Короче говоря, если кто-то нужен, только условно-бесплатно, значит по факту он не нужен, но за символическую плату взять можно, авось пригодится.
MacIn
21.09.2018 20:37Грубо говоря, продолжаешь улыбаться, а про себя думаешь:
«А не пойти бы тебе молодой человек сначала поучиться, а уж потом идти деньги зарабатывать. А то пока ты будешь быстро учиться за счет компании работать со страшной скоростью за тебя буду я...»
Так вы и так уже работаете за него — у вас же людей не хватает. Его обучение (не считая ситуаций, когда/если он будет вас отрывать) не должно изменить вашу загрузку.
onlinehead Автор
21.09.2018 11:05Решили что спеца нашего профиля на такие деньги найти без шансов. Решили искать ораклиста.
Вот это меня несколько смущает. 6 лет назад дешевле было кого угодно найти (исключая джавистов, их тогда активно скупать начали), чем ораклиста со знаниями выше джуна, за скромные-то (и не очень) деньги.
А вот когда вы интервьювер и слышете эту фразу, то эмоции совсем другие.
.
Безусловно. Но в этом как раз ничего ужасного нет.
Правда, если возникает мысль «А не пойти бы тебе молодой человек сначала поучиться», то это скорее нехватка основ, чем каких-то специфических знаний. Если человек уверенно знает базу, специфику он обычно достаточно быстро осваивает и ужаса такие фразы не вызывают. Кроме того, ему все равно придется адаптироваться под конкретную компанию и на это тоже нужно время.
Мне кажется в вашей истории есть еще 2 момента — прозевали момент, когда уже надо было начинать искать сотрудника, не закапываясь в яму оверлоада и бюджет был не очень сопоставим с задачами и, соответственно, уровень приходящих людей был не особо высок.
Поправьте меня если я ошибаюсь.Vantela
21.09.2018 11:58ДБА. Не ораклист разработчик, а ДБА.:)
Проблема в том, что соискатели и основ не знали. Но обещали быстро быстро все выучить…
Момент прозевали — не то слово.
А про бюджет расскажу совершенно замечательную историю.
Сначала нам бюджет выделили вообще на стажера. И было ясно, что человек который хотя бы знает слово Оракл за такие деньги в Москве не пойдет работать.
Тимлид через недельку сказал, что надежда есть. Есть, говорит, знакомый достаточно умный, с компами много лет. Оракла конечно не знает, а работает курьером вообще за копейки.
Вот он ему предложил прочитать книгу по ораклу (и ссыль на книгу выдал) с предложением о работе. Почитаешь, поговорим, что понял, что не понял и пойдешь на зарплату втрое большую чем у курьера к нам стажером. С возможностью вырасти еще в 4 раза.
(30тр стажер, потом 60 и еще через пару лет 120)
Короче через месяц выяснилось что человечек… Фрай из Футурамы. Ну то есть курьер по жизни. Он не смог прочитать книгу и сказал что лучше он тут посылочки повозит.
После этого мы насели выбивать бюджет…
helions8
21.09.2018 13:49Я сейчас собеседую людей почти на потоке, и сталкиваюсь с немного обратной ситуацией. Мы напираем не на «сколько параметров у метода», а наоборот – на базовые вещи. Одна из задачек заключается в том, что нужно придумать («придумать»), как распределять данные по ключу в воображаемой key-value базе данных между шардами. Примерно половина не может узнать за этим хеш-таблицу. Ну хорошо, ты поставил себе 4 из 5 по Java, давай поговорим про GC и какие они есть, на что следует вопрос «вы тут часто GC тюните что ли?». Ну, тюним, приходится, в описании вакансии же написано, что у нас и нагрузка какая-никакая есть, и данных много (продуктовая кампания в сфере онлайн рекламы). Люди приходят писать Controller и считают, что этого достаточно. А еще зачастую не понимают, что тайтл зависит от кампании, и если тебя в атусорсе продают как сеньера, то это может значить, что просто продажники хорошо работают. С большим количеством кандидатов просто не о чем разговаривать, кроме как о количестве параметров у метода. Никого не хочу обидеть, но работа собеседующего часто заставляет разочаровываться в людях.
Ogoun
21.09.2018 15:00Тоже собеседую, и какое там шардирование, 80% не могут адекватно объяснить что такое стек и как он работает, и эта цифра не преувеличение. Люди идут на .net разработку, на язык построенный на стеке, и не понимают основ. Люди с опытом в 12 лет не знают как работает словарь. Очень печально.
Как сказала знакомая HR, джуны приходят на работу, через три месяца пишут что они миддлы, через полгода что сеньоры, а тех кто работает найти все труднее.Neikist
21.09.2018 15:04Ммм… Может зря я тогда продолжаю сидеть на 1с и не иду на собеседования на нормальные технологии если я про стек и словари в курсе? А нет, все же даже на джуна требования повыше то будут.
helions8
21.09.2018 15:14В современном IT «продолжать сидеть» можно только по собственному желанию – при приложении минимальных усилий смена стека делается достаточно легко. ИМХО.
Neikist
21.09.2018 15:20Не, я как раз к тому что все же на нормальном стеке технологий и знать нормально надо. А то у меня знание алгоритмов и структур ограничивается парой сортировок, дейкстрой (случайно), устройством хэш-мапы, да и все. А отличия всяких MVP, MVVM, MVC только в теории слышал, а прочитанная чистая архитектура дядушки боба в голове мертвым грузом осела. Не говоря уж что ни разу не пользовался DI контейнерами и подобным. + много много другого что должен знать нормальный программист и не знает 1сник.
Ogoun
21.09.2018 15:17А может и зря, можно взять хороший учебник(Рихтера к примеру), поставить перед собой цель в виде какого-нибудь домашнего проекта, выполнить и пробовать перебраться.
А в моем комментарии не про то что знание этих основ необходимо и достаточно, а про то что найти даже их знание затруднительно у соискателей. Полный список вопросов конечно шире.Neikist
21.09.2018 15:22Мне кажется вы перебарщиваете. Ну не может быть в индустрии 80% людей (тем более с опытом) реально всего этого не знающих. Как мне кажется вы либо совсем про новичков пишете которые вайтивайти хотят и не имеют опыта работы совсем, либо про какие то исключительные случаи. Ну никак не 80%.
onlinehead Автор
21.09.2018 15:40К сожалению, ошибки тут нет. По крайней мере начиная с мидлового уровня.
Neikist
21.09.2018 15:44Тогда это выглядит странно. Как эти все люди вообще работу нашли до этого?
onlinehead Автор
21.09.2018 16:02Мне тоже удивительно, но факт.
Это не только мои данные, коллеги из других компаний (и стран) говорят примерно те же цифры.
Ogoun
21.09.2018 16:07Опять таки из опыта, иногда людей берут без должной проверки, а уже в самой работе разработчика понять что от работника есть польза может быть затруднительно весьма длительный срок. Человек может успеть проработать от полугода до полутора лет пока не станет понятно что нет выхлопа.
При мне был случай когда человек работал на должности уровня сеньор, по .net, пилил год проект получая больше всех в отделе. А когда стало ясно что проект нежизнеспособен быстро уволился. И таких примеров только в моей практике несколько.
Если руководство не из бывших технарей, его легко обмануть и кормить завтраками, при этом руководство далеко не всегда считается с мнением остальных коллег таких работников.
helions8
21.09.2018 17:45Да просто. Фирма хочет денег, нанимают тех, кто Java выговаривает, продают, а в фирме есть несколько нормальных специалистов, которые «пасут» всех остальных.
Ogoun
21.09.2018 16:10На выборку по Москве можно еще добавить что всех более менее квалифицированных специалистов за последние пару лет прибрали СберТех, Яндекс, Касперский и еще ряд крупных компаний, а сейчас и Ozon нацелился забрать с рынка человек 500.
Небольшим и средним компаниям сложнее выставить схожие по привлекательности условия.Neikist
21.09.2018 16:34Хм, ну, тогда еще более менее сходится. Все хоть сколь нибудь адекваты в основном в крупные, известные компании идут, а остальным приходится остатками довольствоваться.
mrsantak
21.09.2018 19:21+1Вы путаете множество людей в индустрии с множеством людей которые приходят в конкретную компанию на собеседование. Хорошие программисты редко много ходят по собеседованиям, посетят 3-5 мест и находят работу. А вот плохие программист могут посещать десятки собеседований, как результат именно их больше всего и видят интервьюеры.
onlinehead Автор
21.09.2018 15:39Вы совершенно правы, но я решил не затрагивать эту тему, так как она тянет еще на одну статью.
muhaa
21.09.2018 14:32+1Работаю в Минске и живу в мире, совсем непохожем на эту статью. За свою жизнь был на собеседованиях 7 раз. Пошел в программисты в 38 лет (а умел со школы), могу работать, но рядом не стою с ключевыми разработчиками компаний. Все разы собеседование со мной проводили лично руководители компаний. Ни разу никто не пытался проверять мои знания. Я просто рассказывал что умею, чем занимался, что предпочитаю, они объясняли какая у них работа и сразу говорили берем или не берем.
Однажды это была компания, которой был нужен c++ программист для SCADA-подобной системы, а я сказал что имею базовый опыт работы на c++ но предпочитаю c#. Не взяли.
В другой раз это была компания, которая что-то делала для банков и им нужен был программист java. Я программировал на c# и в области промышленной автоматизации. Сказали всему научишься, берем (сам не пошел).
Еще была компания по банкам с моим c#. Тоже директор около 60 возрастом, поговорил 10 мин и сказал приходи, найдем работу (тоже не пошел).
Была один безумный стартап, набиравший непонятно кого непонятно для чего. Там правда собеседование проводили не руководители. Из интересовал JS, о котором я понятия не имел (это в 2014! представьте какой я «специалист»). Выслушали, потом перезвонили, сказали все круто, берем, еще позвоним, потом так и не позвонили (видимо не поверили что приду).
В компаниях, в которых работал было примерно то же самое: посидели поговорили, назвали зарплату и вперед.
PS. Думаю, если бы кто-то предложил мне решать задачи на программирование или отвечать на вопросы я бы откровенно описал уровень своих знаний в этой области и не стал бы ничего решать. Зачем?muhaa
21.09.2018 15:13И еще пятничная история. Работал начальником АСУ в гос-конторе и нужно было нанять программистов c#+Oracle на зарплату порядка 300-500$. После нескольких попыток нашел железный способ проверки кандидатов: кандидат не должен выглядеть пугающе и должен на любом языке программирования описать массив со значениями и найти наибольший элемент. Прошли тест только двое. Позже оказались реально хорошими специалистами. Переписывали и развивали довольно непростые местные программы, проявляли инициативу. Это все правда.
mazy
21.09.2018 19:02В целом, зная основные принципы алгоритмизации — массивы, функции и т.п. подогнать знания по синтаксису конкретного языку — в целом вообще не проблема для толкового человека. А нюансы уже со временем разучить.
Я так думаю.
Ogoun
21.09.2018 15:09Гибкость кандидата конечно важна, но интервью всё таки должно исходить из требований по вакансии и резюме соискателя. Если вакансия на системного администратора, и соискатель проработал 10 лет в этой сфере, конечно нет смысла спрашивать про уровни OSI и как найти инфу в логах.
Но если берем разработчика, то как показывает практика, кроме общего диалога на проверку насколько совпадают интересы, стоит убедиться в знаниях хотя бы основ. Понимание структур данных, разруливание доступа к ресурсам в многопоточной среде, понимание двоичной арифметики.
Недавно открыл для себя игру TIS-100, и мне кажется что для проверки разработчика (собеседую только их) можно было бы дать на интервью пройти оттуда какой-нибудь уровень из самых ближе к началу.onlinehead Автор
21.09.2018 15:42+1Если вакансия на системного администратора, и соискатель проработал 10 лет в этой сфере, конечно нет смысла спрашивать про уровни OSI и как найти инфу в логах.
Я вам как админ скажу — очень даже стоит. Пусть не про уровни, но пару базовых вопросов задать нужно, потому что бывает (и пугающе часто) что и там провалы.
JPEG
21.09.2018 15:21Да-с, налицо тренд на удешевление нашей профессии. Глядишь, и вправду скоро сами себя автоматизируем и поздно будет «Механическое пианино» читать…
gshamshurin
21.09.2018 15:48HR — служба должна допускаться до фильтрации кандидатов на должности ИТР по уровню компетенции только в том случае, когда конкретный HR-специалист имеет опыт работы и/или образование в области, куда ищет кандидата.
Понятное дело, что иметь в штате HRов с опытом работы от логиста до юриста и от грузчика до нач.цеха — нереально. Поэтому если фирма в основном ITшная, держите HRа с опытом в IT. Большой поток IT-соискателей он сам первично отфильтрует, не «отбросив» ни одного нормального кандитата на разработчика, в вот кандидатов на водителя (которые в IT фирме нужны редко) будет собеседовать вместе с зав.гаром. Зав.гары они такие, с порога видят кто в первом рейсе запьёт, а кто солярку сливать будет.
Stas911
21.09.2018 16:06-1Учитывая, что средний срок работы сотрудника в одной компании сейчас 1-2 года, а еще и полно аутсорса и контракторов — то найм «человека-функции» представляется не такой плохой идеей
serf
21.09.2018 16:21Зависит от роли. Нанимать на постоянку в штат, и контракторов/фрилансеров/аутсорсеров это разные вещи. Во втором случае как правило нужно чтобы сразу начали «работать» конкретную работу.
mrkizak
21.09.2018 17:32Я эникей и мне скоро 30(в мае 2019), чем больше читаю тем сильнее ошущаю себя тупым.
К примеру не могу найти даже курс Exam 70-698/Course 20698A. оплатить и пройти законно нет денег, и знания английского. Вот как вырасти самостоятельно я хз. А задачи ставят и в 1с и циске ад, есченж, ну и весь фарш… Вот как самому себя спасти?muhaa
21.09.2018 22:24Я читал хабр, чтобы развиваться в ширь и книги, чтобы развиваться вглубь. А вообще, как говорится, «Как мотивировать себя к достижению успеха? Никак — оставайтесь в жопе.»
rotinv
21.09.2018 22:37Что за депрессивный коментарий? Осень что-ли сказывается? И причём здесь вообще возраст, если вход в технологии 1-3 года.
Самообразование, десциплина и позитивный настрой — вот что Вас спасёт! Не знаете английский язык? Ну так учите, здесь полно статей как это делать и на ютубе полно каналов. Хотя его и учить особо не нужно, просто пользуйтесь им, смотрите курсы, читаете книги. Сначала будет тяжело, будет закипать мозг, будут болеть уши, а потом привыкните, начнёте понимать, пропускать его через себя, думать на нём.
По теме курса 70-698. Он есть на pluralsight.com, можно использовать 30-ти дневный trial и пройти эти 11 часов за месяц. Ещё этот курс есть на mva.microsoft.com бесплатно, где также полно курсов на русском.Neikist
22.09.2018 07:45Это да) Я из вуза вообще вышел со знанием английского на уровне: знаю сотни 3-4 слов. Экзамен сдал раза с третьего, и то тройбан из жалости поставили)) Не знал я на тот момент что английский нужен, и фана в нем не видел, да и в работе 1сника он не особо нужен. Ничего, даже особо не занимаясь сейчас, спустя 4 года, довольно спокойно читаю статьи на медиуме (пуская помогая себе иногда с переводом некоторых слов), смотрю обучающие видео + еще и немного фана увидел в английском так что скорее всего займусь им целенаправленно. Хотя я еще японским заниматься начал, посмотрю как совмещение занятий пойдет.
А всего лишь нужен какой никакой но интерес. Доки часто только на английском в принципе, например сейчас по фану dart+flutter изучаю, так по флаттеру на хабре например вообще ни одной статьи, сам уже подумываю в целях популяризации технологии или перевести чего или простенькую статью введение написать.
Griboks
21.09.2018 18:46Такой подход окупается через длительное время. За это время стратегия компании изменится, и, скорее всего, человеку снова придётся обучаться. За это же время можно нанять двух узких специалистов, которые окупаются сразу. Поэтому вопрос очень даже спортный с точки зрения бизнеса.
DGolubets
21.09.2018 21:12Есть разные компании и разные ситуации.
Крупные часто могут нанимать с прицелом на будущее, выращивать своих спецов так сказать.
Мелкие чаще нанимают чтобы быстрее сделать конкретный проект и у них нет времени на обучение конкретным технологиям\фреймворкам.
Как программист, я, например, жду тестового задания и считаю его основным критерием. Если его нет — у меня сразу подозрения что в компанию набирают кого попало.
Последующее очное интервью — для работодателя способ убедиться, что я делал задание сам, а для меня — будет ли мне комфортно работать там в социальном плане (коллектив, офис, печеньки).
Ну и да, если последнее проводится жестко, с прессингом (а стресс есть всегда), то это ошибка работодателя, тк. пропадает желание идти в такую компанию.VolCh
22.09.2018 08:23Я как программист отношусь к тестовым заданиям с большой подозрительностью. Если их при первом контакте сходу предлагают, то просто отказываюсь. Исключение сделал бы для каких-то всемирно известных компаний, но они ко мне в линкедин не стучатся :) В общем тестовое если и делаю, то когда оно последний или предпоследний этап, когда сам я уже получил всю информацию о потенциальном месте работы, кроме окончательной суммы оффера. И когда я считаю, что представление о своих знаниях и навыках я уже передал, когда считаю, что все остальные фильтры я уже прошёл. После него ожидаю только вопросы «почему так? какие ещё способы можно тут применить?» и т. п., а не «теперь собеседование с руководителем, потом с психологом, потом английский, потом техдир»
dimoff66
21.09.2018 21:32На уровне руководителей департаментов, заместителей директоров и т.д. требования несколько меняются и детализируются – им нужен человек, зарплата которого укладывается в бюджет
Это всегда мне казалось глупостью… Зарплата же платится помесячно. Почему бы не платить в полтора раза больше человеку, который может сделать в два раза быстрее и качественнее и соответственно раньше закрыть существующие задачи? В итоге же выйдет очевидная экономия, но нет — 120 тысяч рублей в месяц укладываются в бюджет и на них мы найдем кого попало, а 180 тысяч не укладываются и нам не нужен классный специалист.Lissov
22.09.2018 01:15Зарплата же платится помесячно.
Так в том и дело, что помесячно и навсегда.
На практике есть прибыль компании, распределенная между отделами. И вот программистам достались 1 млн в месяц, из которых 800к это зарплата текущих, и надо иметь запас на премии, расходники и т.д. Осталось 120.
А вот дальше именно «на уровне руководителей департаментов, зам. директоров и т.д.» определяют, это 60к принесут больше отдачи если их вложить в программистов или в продажников или…
Если таки есть «очевидная экономия», то можно рискнуть и работать в убыток как Тесла, и нанять ещё с десяток программистов. А может техдир пока смог обосновать только 120к. Потому что счёт не резиновый.dimoff66
22.09.2018 09:06Программист это же не диспетчер на телефоне и не охранник, он разрабатывает конкретный продукт. И если есть понимание что топ-специалист с зарплатой 180 тр разработает за полгода то, что средний специалист с зарплатой 120 тр будет разрабатывать год, то через 6 месяцев, заплатив топу 180 * 6, то есть 1080 тр он получит тот же продукт, а скорей всего лучшего качества, что через год со средним специалистом, заплатив 120 * 12, то есть 1440 тр.
Выигрыш по всем показателям. И думаю не нужно объяснять, что повышение зарплаты в вакансии в полтора раза приведет к качественно иному набору соискателей. То что руководители не просчитывают такую элементарную математику говорит либо о том, что они не способны определить уровень кандидата, либо просто о зашоренности и шаблонности мышления.VolCh
22.09.2018 10:54+1Как минимум, в ваших рассуждениях присутствует неявное условие, что дополнительные 60 тысяч каждый месяц вообще имеется, а все остальные вложения в этот бизнес, другой бизнес того же собственника менее выгодны или более рискованы при той же выгоде. Ну и вообще что собственнику важнее получить продукт через 6 месяцев, а не лишний денек на курорте отдохнуть.
Lissov
22.09.2018 11:39И если есть понимание что топ-специалист с зарплатой 180 тр разработает за полгода то, что средний специалист с зарплатой 120 тр будет разрабатывать год, то через 6 месяцев, заплатив топу 180 * 6, то есть 1080 тр он получит тот же продукт, а скорей всего лучшего качества, что через год со средним специалистом, заплатив 120 * 12, то есть 1440 тр.
А через полгода этого топ-специалиста уволим, и продукт лучшего качества превратится в тыкву. Потому что дополнительных полмиллиона рублей в год у фирмы нет и не предвидится.
Ну и если мы не про сферического программиста в вакууме, то человеку надо влиться в команду, изучить продукт, пообвыкнуть, так что ещё большой вопрос, кто эффективнее — средний на год или топ на полгода. Чтобы не вышло как в анекдоте — «чем круче джип, тем дальше ехать за трактором».D01
22.09.2018 12:27На мой взгляд, немного по-другому:
в первом случае получится продукт через пол года, и бизнес начнет пользоваться продуктом;
во втором же случае, продукт может быть появится через год, если у сотрудника хватит квалификации и (или) он через пол года не уволится (может поймет что не справляется, а может просто предложат большую зарплату) и получается, что бизнес ждет год результата (а может и больше), которого может и не быть…Lissov
22.09.2018 21:25На самом деле в любом случае продукт "может быть появится через ..." — подставить полгода или год.
Если ИТ-директор имеет уверенность что «бизнес начнёт пользоваться», расчёт что это повысит прибыль и этот продукт через полгода реально нужен, и доверие к его мнению — подписи директоров на доп. финансирование будут через 5 минут. Кстати да, было в моей практике, и не скажу что я доволен.
Я лишь повторюсь, директора за то зарплату и получают, чтобы просчитать это всё и решить что выгоднее. Тесла вон в убыток работает, а БМВ лимитирует расходы на развитие, и не строит новые заводы — а ведь могли бы построить все машины на 2019 год за первые полгода и раньше их продавать. Думаю, причины очевидны.
Очень часто всё сложнее, чем конкретный проект на одного человека. И тогда надо думать, как строить команду в долгосрочной перспективе, что делать после сдачи проекта через полгода (увольнять? прибыль вырастет?), как человек вольется в команду и какая будет от него реально польза.
А вообще ограниченный бюджет 120к обычно означает «вы меня не убедили, что это важно для бизнеса, но у нас есть сумма на которую я готов рискнуть».
dimoff66
21.09.2018 21:44Большинство людей, которым я задавал этот вопрос (а так же я сам), сходятся во мнении, что на самом деле 15-20 минут общения хватает, чтобы убедиться что человек подходит и определить его уровень и в пределах 10 минут нужно на то, чтобы понять, что человек не подходит совершенно.
При этом, тесты и глубокие технические опросы практически не влияют на результат.
Вы берете на работу программиста, но тест того, как он пишет программы, не влияет на результат, а влияют 25 минут болтовни с ним? Очень и очень забавно.onlinehead Автор
21.09.2018 22:04Вы берете на работу программиста
Ну, конкретно я беру на работу не совсем программистов, скорее системных инженеров с навыками программирования, но да, 25 минут болтовни с ним о правильных вещах вполне помогают понять, ориентируется он в теме или нет.
Я не сторонник написания кода на листочке\доске, да даже в ноутбуке. Для того, чтобы понять, как он думает и что знает вполне можно просто поговорить.
Все дело в том, что на определенном моменте (кроме самых низов) требуется не «программировать», а решать вполне конкретные задачи во вполне конкретном окружении.
Если под «программировать» вы понимаете навык кодирования, то это один вопрос. Если же «программирование» — это решение задач определенных задач с помощью доступных инструментов — это другой вопрос.
Причем с навыками кодинга (или программирования) еще проще — в подавляющем большинстве хоть какой-то код, написанный кандидатом, будет публично доступен.
Реальные задачи почти всегда требуют гораздо больше времени, чем разумно тратить на собеседования. В рамках собеседования можно давать сложные задачи на программирование, которые он, возможно, решил (если тратил время на подобное в прошлом), вот только это ну никак не показатель того, что он так же классно решает практически задачи.dimoff66
21.09.2018 22:12Я не сторонник написания кода на листочке\доске, да даже в ноутбуке. Для того, чтобы понять, как он думает и что знает вполне можно просто поговорить.
Я думаю, что вы очень везучий человек, если этот подход работает. Я всегда был противником подобного подхода, но не всегда решал я в компаниях, и дважды становился свидетелем ситуации, когда на собеседовании человек выглядит абсолютно вменяемым, бодро отвечает на вопросы и вообще источает вселенскую уверенность, его радостно берут, и оказывается, что он откровенно слабый разработчик.
Мой же подход работал 100%. Я сразу оговорюсь, что я
а) Противник кода на листочках и на доске на собеседованиях, потому что на собеседования я прихожу, чтобы обсудить работу а не играть в блиц.
б) Противник тестовых заданий, на которые нужно тратить день.
но при этом почему бы не использовать срединный подход: дать сразу тестовое задание на 2-3 часа, которое будет включать 8-10 коротких заданий на знание предмета, и 1-2 средних задания на умение нешаблонно мыслить. И уже по итогам этого теста приглашать человека на собеседование.
Этот подход я использовал для поиска разработчика 4 раза и все 4 раза он давал приемлемый результат.helions8
21.09.2018 23:26+1Не всегда возможно применить, мы с этим столкнулись вот недавно. У нас нет DevRel, dev-бренда для разработчиков, мы такие же, как еще десятки фирм за углом. И кандидат делает несложный выбор — идет туда, где всё тож самое по описанию, но не заставляют тратить 2-3 часа на тестовое, т.е. не к нам. Мотивация простая — кто вы такие, я вас не знаю, а вы меня уже тестовое заставляете писать.
dimoff66
21.09.2018 23:33Там где не заставляют тратить 2-3 часа на тестовое, там больше претендентов и тогда каким образом он докажет, что он лучше других? Мило пообщается с интервьюерами? Я бы такими людьми просто пренебрег. Если тест составлен грамотно и интересно, разработчик не станет воспринимать это как трату времени, ему будет интересно себя проверить, и он будет вас благодарить за этот тест даже в случае отрицательного решения по его кандидатуре. Это естественно я все говорю со своего опыта. Но опять же вопрос в том, сколько вы готовы платить.
helions8
21.09.2018 23:40Там не надо ничего доказывать, там крупный аутсорс и 1500 людей в офисе. Там хадуп, и тут хадуп, там бигдата, и тут бигдата. Тест может быть составлен как угодно, но большинство даже не пройдет по ссылке в письме, отправив сразу в корзину. Мы платим чуть больше медианы рыночной, но не настолько сильно, чтобы это привлекало толпы. Большинство людей пойдет по пути наименьшего сопротивления.
dimoff66
21.09.2018 23:56Понимаю. И каковы результаты такого подбора персонала? Люди квалифицировано работали?
helions8
22.09.2018 00:04Вернулись к программированию на листике. Псевдокод да схемы. Из тех, кто пришел по этой системе, пока все выглядят хорошо, но их еще не много, дальше будет видно. Ну, и мы стали чуть прозаичнее и три месяца испытательного (100% зарплата, без унижений и ущемлений в правах) не простая формальность.
VolCh
22.09.2018 08:29Почему бы его не дать после всех собеседований?
dimoff66
22.09.2018 09:38Чтобы не тратить время на заведомо слабых людей, ну и не тратить время этих людей тоже.
VolCh
22.09.2018 11:00А я с своей стороны не хочу тратить время на заведомо неинтересную компанию или компанию, которую не удовлетворяет уровень моих знаний или софт-скиллы. Когда понятно, что последнее препятствие для получения оффера — это сомнения, а могу ли я вообще код писать, то тогда я и могу их развеять с помощью тестового. Делать тестовое сразу я буду только в случае, если мне по его результатам обещают оффер, а не еще десяток собеседований.
dimoff66
22.09.2018 11:13А я с своей стороны не хочу тратить время на заведомо неинтересную компанию или компанию, которую не удовлетворяет уровень моих знаний или софт-скиллы.
Если в вакансии четко описаны необходимые скиллы, а еще лучше, чтобы они были отражены в тестовом задании, то глядя на вакансию и тестовое задание вы будете ясно понимать, что от вас требуется. Я сам сталкивался с ситуацией, когда сделал тестовое задание на отлично, но компании не подошел мой опыт работы. Я был несколько удивлен — тогда для чего тестовое задание? Полагаю тестовое задание и должно включать в себя проверку необходимых скилов.
Делать тестовое сразу я буду только в случае, если мне по его результатам обещают оффер, а не еще десяток собеседований.
Где-то выше я озвучивал мысль, что тестовое задание должно быть в принципе интересным. Люди же тратят часы и дни, решая задачи на сайтах вроде codewars или codeforces. Если человеку в принципе неинтересно ничего делать, если за это не платят, то лично для меня потеря такого человека была бы не слишком большой проблемой.onlinehead Автор
22.09.2018 12:11Если в вакансии четко описаны необходимые скиллы, а еще лучше, чтобы они были отражены в тестовом задании, то глядя на вакансию и тестовое задание вы будете ясно понимать, что от вас требуется.
Этого практически никогда не бывает.
Во-первых — обычно нет четкого понимания, что конкретно хочется от человека. Ну, есть конечно, но оно не реалистично совершенно.
Во-вторых — если начать в тестовом задании давать то, чем реально будет заниматься человек, то тогда вскроется неприятная правда (которую правда и так все знаю) — подавляющее большинство вакансий и заданий будут содержать что-то вроде «сделайте небольшое суперстандартное приложение, которое можно сделать по туториалу». Просто потому, что работа в подавляющем большинстве это и подразумевает.
Приятные исключения конечно бывают, но таких компаний и вакансий на порядок (если не более) меньше, чем остальных.
И все же пишут про «инновационность, прорывные технологии и челленджи».
Сложный фееричный отбор приносит удовлетворение обоим сторонам тогда, когда и работодатель готов предложить что-то нестандартное и действительно цепляющее в практически работе, и кандидат готов это вытянуть, потом что ему хочется этим заниматься. В остальных случаях, которых большинство, такие штуки приносят раздражение и разочарование как минимум одной из сторон.
onlinehead Автор
22.09.2018 12:13Люди же тратят часы и дни, решая задачи на сайтах вроде codewars или codeforces.
Это ИХ время, они его тратят так, как хотят и на то, что они хотят. Нет никакой гарантии, что данное «сложное» тестовое задание еще до собеседования вообще понравится кандидату. Может быть ему вообще эта тема не интересна, он сейчас другими задачками увлечен.dimoff66
22.09.2018 12:21Может быть ему вообще эта тема не интересна, он сейчас другими задачками увлечен.
То есть — «знаете, я ищу работу, но потратить 3 часа на тестовые задания я не могу, потому что увлечен другими делами — копаю картошку на огороде». Увлечен другими задачами — значит ему не интересна работа, а мне, как руководителю, не будет интересен этот человек. Все очень просто, мы не подошли друг другу — продолжаем поиск дальше.onlinehead Автор
22.09.2018 12:28То есть — «знаете, я ищу работу, но потратить 3 часа на тестовые задания я не могу, потому что увлечен другими делами — копаю картошку на огороде».… значит ему не интересна работа, а мне, как руководителю, не будет интересен этот человек.
А что вы, как руководитель, сделали, чтобы ему стала интересна ваша работа? Предлагаете доход выше рынка? Меняете мир? Ваш бренд известен всем и имеет вес в резюме? У вас есть классные штуки и масштаб технологий, которые могут себе позволить себе десяток компаний на весь мир?
Нет? Тогда вы просто одна из тысяч компаний и тратить на вас 3 часа жизни нет никакого смысла, проще пойти к такому же соседу, который таких заданий не дает и получить то же самое на выходе, а в эти 3 часа лучше вскопать картошку или провести время с семьей. Ну, или решить клевенькое задание на codeforces, которое именно нравится, а не просто — надо.dimoff66
22.09.2018 13:24Да, доход выше рынка. Конечно, если ты ищешь хорошего специалиста, сумма должна быть интересная.
rjhdby
21.09.2018 22:04Не поймите превратно, но действительно заинтересовало.
За 10 лет своей карьеры сначала Системным Администратором, потом Системным Инженером и DevOps-ом, успев побыть простым исполнителем, тех- и тим-лидом, я посетил и провел десятки собеседований в компаниях разного размера в разных странах
За 10 лет от админа до многокого в разных странах и компаниях.
Сколько в среднем/максимум/минимум, на одном месте? Почему(минимум)? Почему ушли(максимум)?
Без всякого подвоха и сарказма, действительно интересно.onlinehead Автор
21.09.2018 22:18+1Да все банально.
Максимум — 3 года, минимум — 1 месяц. В среднем — 2 года.
Всего — 6 фул-тайм позиций, плюс еще наверно столько же на парт-тайм в разных ролях параллельно с основными.
Уходил почти всегда тоже по банальным причинам — деньги и задачи.
Я увлекающаяся человек, люблю много работы, быстро выгораю, если не подпитывать новыми задачами, сложно восстанавливаюсь, плохо переживаю «ну подожди полгодика, там задачка появится и займешься, а пока давай вот тут попилим потихоньку вот тут, где ты будешь использовать 5% своих знаний». По крайней мере до недавнего времени все было именно так. Сейчас даже не знаю, не могу сказать то же самое с уверенностью.rjhdby
22.09.2018 00:17Прикольно :)
Вообще — жить забавно. Лет сколько-то назад я с непониманием смотрел на «стариков», с их странными понятиями о жизни и думал, что сам то никогда таким не стану, всегда буду «на волне», а теперь читаю ваш ответ и понимаю, что это совсем другой шаблон мышления и отношения жизни. И, самое неприятное, но все же интересное в качестве задачи для саморазвития — на мое сформировавшееся мировоззрение этот шаблон фиг натянешь.
Сорри за старперское философствование. :)onlinehead Автор
22.09.2018 00:26Сорри за старперское философствование. :)
Да все нормально:)
Я просто из депрессивного региона, вариантов у меня было немного — или, как говориться, «жопу рвать», или на завод, или торговать.
Повезло, что отец в свое время добыл правдами и неправдами себе на работу компьютер и некоторую литературу и показал мне все это. Сам он по профессии очень далек от IT (доктор), но сумел заинтересовать меня, почувствовав, что в этом будущее. Так и понеслось, у меня выбора то и не было, по сути.
Но — мне все нравится. И я ему благодарен за то, что получилось.
maybe_im_a_leo
21.09.2018 22:12Мне кажется есть ещё градация: является ли найм процессом поиска или оптимизации? Т.е. получит ли оффер первый прошедший отбор кандидат (опуская адекватность самого отбора). Или мы будем искать дальше чтобы найти "exceptional talent".
В компании где я работаю к сожалению позиция — нам нужны exceptional talents, поэтому мы хронически understaffed и на одного человека вешается по два и три проекта. т.е. до обеда ты делаешь один проект — а после обеда другой :)helions8
21.09.2018 23:20А почему exceptional talents должны хотеть работать в такой фирме, когда людьми затыкают дырки в проектах?
Arqwer
22.09.2018 13:11Знающие люди, подскажите пожалуйста.
Недавно впервые в жизни искал работу, и наткнулся на такую проблему: собеседования то я прохожу, но в каждой организации в договоре есть какая-нибудь приписка типа "я даю согласие себя поиметь". А когда я прошу её убрать — мне говорят, что я им не подхожу. Например, в Huawei в договоре написано что каждые пол месяца они пишут что я выполнил такой-то процент работы, и платить будут ровно за выполненный процент + в случае недополученной прибыли я рискую всем своим имуществом, а на словах говорят что честно-честно это всего лишь формальность и платить будут всегда 90 в месяц. В другой конторе договор ссылается на Приложения1,2,3, но приложения мне ни в коем случае не покажут. В ИТМО мне пообещали 70, но в договоре пишут 12, опять же говорят что это чистая формальность и честное слово будут платить 70, но в конце месяца.
Я же слал всех таких куда подальше.
Вот у меня вопрос: правильно ли таких слать, или это в России такое негласное правило: что если не разрешаешь себя поиметь то и на работу не устроишься?Busla
22.09.2018 15:45Не платят человеку «с улицы» без опыта 90 т.р. в месяц., поэтому и нарываетесь на странные предложения.
Lissov
22.09.2018 21:521. Подписание договора дело обоюдных переговоров. Все привыкли обсуждать з/п, но на самом деле обсуждать можно всё. Я вот однажды после года работы вместо прибавки попросил убрать один пункт из договора — и как обычно в таких случаях, сошлись на полпути.
2. Если это большая корпорация, можно читать отзывы.
3. Спорные пункты должны обхяснять. Например «12 по договору, 70 устно» — это серая зарплата. Ваше решение, устраивает ли это, и обычно без проблем можно прописать белую зарплату — но будет меньше на налоги, скажем 40.
4. Изучите законы Вашей страны. Если пункт договора противоречит закону — игнорируйте его.
5. Вы опытный или новичок? Если новичок, то в работе заинтересованы Вы, и придётся согласится на меньшую зп или худшие условия. Получите опыт — будете диктовать свои условия. Возможно стоит найти фирму поменьше, где будет договор без подводных камней с честной маленькой зарплатой.
96467840
22.09.2018 13:12в свое время при приеме на работу ничего лучше «фузбуз» не придумали. и это реально отсеивает больше половины.
africaunite
Недавно, впервые в жизни, искал работу. Подтверждаю, дословно ;)
Пришел к выводу, что это говорит только о том, что, на самом деле, очень немногие компании (даже выглядящие вполне успешными) занимаются реальным делом в старом понимании этого слова. Все оптимизируют не процесс долгосрочного развития, а процесс быстрого и безопасного схлопывания. Не мешайте — пусть хотя бы они (пока суетятся) платят тем, кто сумел освоить именно тот фреймворк, который сумел.
Есть и обратная сторона. У "правильных" команд решето отбора работает только на студентов. Если Вы уже взрослый и пришли с улицы — вы через него не пройдете. Вас должно быть можно только случайно переманить. ;)