Исходя из личного опыта, который сложился на базе собеседований с тремя с лишним сотнями кандидатов, я прихожу к выводу, что примерно 50-60% работников привирают в резюме. Часто это ложь по мелочам. Не знаю прав я или нет, но на такие вещи в большинстве случаев закрываю глаза. Я даже прогуглил эту тему и нашел интересную статистику: по данным ресурса Checkster, 78% кандидатов где-то обманывают работодателя в процессе найма.
Позже я коснусь того, по каким поводам разработчики чаще всего прибегают ко лжи. А сейчас обратимся к конкретному случаю.
Технические собеседования проходят без моего личного участия. Я и сам занимался программированием, и мне нравилось, но со временем стал брать на себя все больше руководящих функций, пока не пришлось принести в жертву это прекрасное занятие. Программист, о котором пойдет речь, солгал о своем опыте и выдал чужую работу за собственную. Он говорил, что обладает большой предприимчивостью – здесь с ним не поспоришь. Но я сильно подозреваю, что те проекты, которые он нам показывал, он получил нечестным путем.
Нужно признать, разработчиком он был неплохим. Его спокойно можно было поставить на любую джуниорскую должность, связанную с бэкендом. Но нам нужен был сениор.
Процесс найма разработчиков у нас складывается из трех этапов:
- Сначала мы отбираем по десять кандидатов на каждую должность.
- Затем мы даем им небольшое тестовое задание. На выполнение требуется 10-20 минут. По результатам этого этапа обычно отсеивается половина претендентов.
- Финальное собеседование я, как правило, провожу сам. Помимо технических навыков важно убедиться, что человек впишется в команду и что у него есть интерес к нашей работе.
На последний этап у нас прошло двое отличных разработчиков. Второй из них лучше справился с заданием, чем тот, которого я в итоге нанял. Как сумел выполнить задание первый, я так и не узнал. Могу только предположить, что, так как данный этап собеседования проходил онлайн, у него была возможность привлечь помощь со стороны. Чтобы кто-то справился с заданием, но при этом оказался неспособен делать базовые для должности вещи – совершенно исключено. Я понимаю, у всех есть амбиции. Но если хочешь добиться успеха, то перепрыгивать через ступеньки нельзя.
Когда разработчик успешно прошел второй этап, я провел с ним онлайн-собеседование. Тут все прозрачно: цель – посмотреть, подходит ли человек для работы именно в нашем стартапе. Хотя по результатам тестового он уступал конкуренту, я принял решение в его пользу как раз потому, что мне показалось, что он хорошо у нас приживется.
Обычно при отборе сотрудников я принимаю во внимание три фактора: настрой, навыки и командную культуру. Тот разработчик вышел на второе место по баллам за тестовое задание, так что в его навыках я не усомнился. Он оказался предприимчивым и горел желанием поработать в еще одном стартапе, чтобы получить необходимый опыт. Я подумал, что это нам тоже на руку. Кроме того, работа в стартапах ему была уже знакома. Командная культура – важный момент для любой компании, а для стартапа – особенно. При найме я уделяю этому фактору большое внимание. Тот разработчик уже успел поработать в стартапах, и рядовым сотрудником, и основателем. Это решило дело.
Проблемы начались с самого первого дня, но наш технический директор сначала отнесся к этому спокойно. Мы подумали, что ему, как и всякому новому сотруднику, нужно время, чтобы войти в проект.
Спустя три дня технический директор сказал мне, что здесь что-то неладно. Разработчик не справлялся даже с простыми вещами и вообще не понимал сути проекта. Наш джуниор – и тот проявлял больше компетентности. Мы решили дать ему еще немного времени.
На десятый день работы разработчик получил несложную задачу на пару с джуниором. Он не смог дать джуниору никаких указаний и явно чувствовал себя не в своей тарелке. Стали поступать жалобы и от других сотрудников. Вот тут мы уже ясно поняли, что в резюме он насочинял. В лицо ему этого никто не говорил, но, по-моему, он и сам догадался, что все в курсе.
На пятнадцатый день я пригласил его в кабинет и сказал, что нужно найти причину, по которой он уйдет. Чувствовалось, что он встретил эту новость с облегчением.
Хотя он нам солгал и доказать это было бы несложно, мы не стали действовать в этом направлении. В конце концов, неэффективный процесс отбора – это и наша вина тоже, да и не хотелось унижать человека. И всё-таки увольнять было неприятно. Я сделал для него, что мог, предложил перейти на должность джуниора, но гордость ему не позволила. Можно понять. Технический директор подробно с ним обговорил, каких знаний ему не хватает и какие навыки нужно подтянуть, порекомендовал ресурсы для обучения. На будущее мы добавили еще несколько шагов в процесс найма, чтобы таких историй больше не повторялось.
Ложь в резюме всегда может сыграть против вас и, что самое важное, испортить вам репутацию. Если всё вскроется, это чревато увольнением – проще уж сразу отложить мысль о той или иной должности, пока не наработаешь необходимые навыки.
Разработчики чаще всего обманывают работодателей в следующем:
- Опыт, то есть конкретное число лет, которое они отработали. Если честно, работодатели обычно смотрят на это сквозь пальцы, если накинуто не слишком много.
- Предыдущая работа, а именно – почему ушли. Тут многие кривят душой, опасаются, что правда снизит их шансы. Часто разработчики увольняются в надежде найти работу получше. Мы это прекрасно знаем и никого не осуждаем за поиск возможностей, честность здесь пойдет только в плюс. А вот слишком яростно критиковать предыдущее место работы не стоит, даже если с вами там плохо обошлись. Те, кого с предыдущего места работы уволили, редко озвучивают этот факт на собеседованиях, и это воспринимается как норма. Впрочем, здесь тоже можно проявить честность – лучше будет, если работодатель узнает от вас.
- Портфолио – примеры работы, которые программисты прикладывают к своему резюме, иногда на поверку оказываются «левыми». Присваивать себе чужие проекты я однозначно не советую, за такие вещи могут и уволить.
Найти работу – это конечная цель, но не стоит забывать о репутации. Не так давно двое моих разработчиков решили попытать счастья в крупной корпорации, где лучше платят. Они отправили резюме, прошли первое собеседование, и мне позвонили из корпорации с просьбой дать рекомендации (один из сотрудников, которые занимаются там наймом – мой хороший знакомый). Я превозносил их до небес, сказал, что не отпустил бы их, если бы имел возможность повысить зарплату. А всё потому, что хорошо к ним относился, считал умелыми и добросовестными работниками – им не пришлось поступаться своей репутацией.
Честность – лучшая политика и при трудоустройстве, и в повседневной работе, да и на душе так спокойнее. Если вы не только способный программист, но и хороший сотрудник, который работает, как на себя, обычно это вызывает соответствующее отношение со стороны работодателя. А если не вызывает, то, вероятно, пришло время искать что-то другое. Когда сам процесс программирования человека увлекает, а работа при этом не доставляет удовольствия, как правило, проблема на стороне компании.
И не забывайте: необязательно стартовать не то что с сениора, но даже и с джуниора. Если у вас еще нет уверенности в своих силах, всегда можно устроиться интерном. Лучше так, чем начинать карьеру с обмана в резюме.
ivankudryavtsev
Я сейчас неполиткорректное, но культурное напишу. У индусов в cv даже то, чем занимался коллега за соседним рабочим столом. У выходцев из СССР я такого сильно не видел (у программистов), у непрограммистов на ХХ, особенно "менеджеров по ..." видел. Если такое чудо прошло собеседование, вопрос не к чуду, а к процессу.
Опыт статьи на наш рынок труда не в полной мере ложится.
DrPass
Я вспоминаю свою первую работу. Сидим мы вдвоём с другом (оба третьекурсники, причём гуманитарии) на собеседовании:
— Вы программисты?
— Да, да
— Сайты умеете делать?
— Умеем, конечно.
— Нам надо вот такое, такое, такое, вот тут каталог товаров с редактированием, вот тут админка… Можете сделать?
— Да, без проблем.
— Хорошо, вот контракт
Подписали, вышли.
— Макс, я пойду почитаю, как эти сайты вообще делаются, а ты наверное в фотошопе разберись, там же куча всяких картинок будет.
И да, проект мы сдали в срок, заказчика всё устроило.
vvviperrr
2007 год, лето, я закончил второй курс. пытаюсь устроиться на первую работу. разослал резюме примерно в 70-80 контор, возьмите студента на лето, а потом буду ходить 2-3 дня в неделю. половина вообще не ответила. вторая половина сказала, что это их не устраивает. на собес пригласили 2 конторы. в первой ( || ), дали тест по С++ на 2 часа, и в итоге отказали. вторая была (да и сейчас есть) мелкая контора, продавала pos терминалы со своим софтом для баров и ресторанов, ну и обслуживанием занималась. собеседование было примерно такое — с++ знаешь? знаю. ну давай посмотрим, как пойдет. 20к устроит? — конечно (2007 год, курс доллара еще 23, а я нищий студент). короче, отработал я там 5 лет. одно из лучших мест, где я работал.
solver
Вот это очень зыбкая формулировка)
Заказчик в большинстве случаев не способен оценить на сколько хорошо сделали работу.
Слишком много раз я видел тихий ужас, который при этом "устроил заказчика".
DrPass
Это был 2000-й год. С тех пор прошло 20 лет, практически все из которых я отработал программистом. Поэтому первый проект могу вполне трезво оценить, оглядываясь назад. И знаете, могу сказать: мне за него не стыдно. Вообще. Он не был шедевром разработки, он имел несколько странную как для веба архитектуру — админка на Delphi, СУБД Interbase и веб-морда под IIS, но там не было откровенной лажи. Да, писалось по книжкам, но мы по крайней мере не тупо копировали, а старались понять и разобраться, и в итоге оно действительно вполне адекватно выполняло свои функции, и смотрелось ничуть не хуже любого другого корпоративного сайта 2000-го года.
Пожалуй, единственный существенный недостаток у него был лишь в том, что после нас поддерживать его было очевидно некому, т.к. веб-программист со знанием Delphi, это нонсенс. Но тем не менее, лет пять он проработал до редизайна.
strang3r
От нонсенса слышу! :(
Rive
Школы успешно работают над тем, чтобы будущие веб-программисты знали Turbo Pascal, а значит и могли оперативно перейти на Delphi.
?° ?? ?°
Dikoy
Паскаль и Си — основа большинства синтаксисов. Зная их, выучить яву или пхп в разы проще, чем заходить с нуля. Так что не надо катить на паскаль. В конце концов, комплюхтеры у всех уже есть дома — учи что хочешь. Сдать школьную контрошку на паскале зная яву (или подобный более свежий синтаксис) тем более как 2 байта переслать
между изолированными сегментами памяти.major-general_Kusanagi
Паскаль на яву и пых совсем не похож (похож на си). Но, зато Паскаль похож на Аду, а PL/SQL основан на Аде.
Dikoy
Я это и написал. Зная Си и Паскаль не потеряешься в большинстве современных синтаксисов. Так или иначе они туда прорастают корнями. Так что изучать их в школах — не худшее решение для знакомства с программированием. А если ты уже знаком, то отсортировать массив на паскале ради пятёрки — задача на час даже не зная его совсем. Те, кто кричат про бесполезную трату времени, просто не знаю сколько бесполезных задач им ещё предстоит сделать в жизни, пусть и на супер-пупер современных языках. И сколько раз им придётся разбираться в новых и незнакомых синтаксисах, потому что «надо».
Baigildin
Вы сделали отдельный клиент для веба на delphi?
DrPass
Да, это было ISAPI-расширение
singerfox
Я, лет 15 назад, парсеры для веба тоже на дельфях писал. Так что, не вижу ничего необычного в данном решении, тем более простыле вещи на дельфи пишутся очень легко и быстро.
shoorick
Я на дельфях писал двадцать с хвостиком лет назад и сильно удивился, увидев пару лет назад, как коллеги из соседнего отдела до сих пор используют дельфи и пишут на нём здоровенные программы для задачи, которая на перле чуть ли не однострочником решается.
DistortNeo
Поддерживаю. В начале 00-х альтернативе Delphi для многих задач попросту не существовало. Это был комбайн, который умел всё, причём из коробки: простое написание GUI-приложений, работа с HTTP, с базами данных и прочими радостями кровавого энтерпрайза.
При этом язык Delphi, в отличие от C++, был более простым, на нём было сложнее делать глупые ошибки. Ну и до кучи время компиляции: программа на Delphi компилировалась практически моментально, тогда как та же программа, но на C++ компилировалась несколько минут.
Dikoy
C++ builder — тот же делфи, только на Си вместо паскаля. Я как-то на билдер переполз в те годы… К тому же бытовало мнение, что он быстрее и эффективней делфи, но практических подтверждений этому я не нашёл.
Ошибок и в билдере сложно было сделать, он все основные ловушки Си угадывал и подсвечивал.
JPEGEC
В билдере половина модулей была на паскале.
Забавный был продукт.
Dikoy
Ага, и делфийские модули мог подсасывать.
sw0rl0k
Когда искал свою первую работу, честно написал, что коммерческого опыта у меня ноль. Но при этом сверстал штук 5 сайтов по макетам из интернета, в качестве портфолио + добавил в них разного интерактива на js.
Из примерно 10 — 15 джуниорских вакансий, на которые я откликнулся, мне не пришло ни одного ответа. Тогда я выдумал себе год стажа в вебстудии, которая якобы закрылась и вот теперь ищу работу =) Из 5 вакансий, на которые я откликнулся — ответ пришел по всем. По результатам собеседований получил 5 офферов, один из них принял и достаточно продолжительно работал.
lightmaann
Можно сделать немножко хитрее. Можно взять некий свой «некоммерческий» опыт и сказать, что работали у знакомых за определённую сумму. Как бы и не в компании, но и не бесплатно. Таким образом, учебный опыт станет «коммерческим». Главное, чтобы он действительно был полезным, а то получится, как в статье)
shvez
про индусов здорово, но если вот так поразмыслить, то соседи обычно друг другу помогают. Т.е. ты в теме того, что сосед делает и тоже получаешь опыт из его работы, хотя конечно и не такой как непосредственный исполнитель.
Так что тут может быть не всё так страшно :)
saboteur_kiev
друг: я понял как чистить старые индексы в ElasticSearch
ты: круто
друг: я разобрался как их шардировать
ты: класс
На собеседовании:
Интервьювер: Как можно уменьшить объем данных в эластике
Ты: хм, почистить старые индексы
Интервьювер: как вы будете это делать? Можно ли это сделать штатными инструментами
Ты: Хм… не знаю, друг не рассказывал
shvez
Смешно, но не обязательно правда. Мне всегда были интересны и детали.
ApeCoder
Знание возможности часто бьет знание деталей.
Я совсем не разбираюсь в эластике, то, что можно нагуглить по теме как именно удалить индексы работает?
saboteur_kiev
Вот в то-то и дело, что то, что вы нагуглили как раз ВООБЩЕ не решает проблему удаления «старых» данных.
Вообще архитектура эластика нетривиальна и не совсем интуитивна, если до этого работал с реляционными sql базами, и штатного средства удалять старые данные там нет.
Например можно в архитектуру закладывать это, сохраняя новые данные в новые индексах, например по дням. Или попробовать найти внешние решения, не всегда бесплатные.
Между прочим, это я тоже знаю со слов друга, который решал проблему, я так, рядом сидел, но чуток интересовался.
0xd34df00d
Хм, не помню, погуглю.
У меня лет 8 назад в одном из проектов было, например, kd-дереао, собственноручно написанное. Если вы про него что-то спросите — я так и отвечу. Или, если говорить об инструментах, в личном опенсорсе был лично настроенный Jenkins с докером для CI. Если вы меня о них спросите — я тоже так отвечу.