Добрый день, %YOUR_NAME%!
Пару дней назад отправляла Вам тестовую задачу на вакансию Senior JSON Developer, но не получила ответ.
Уточните, пожалуйста, планируете ли Вы выполнение тестовой задачи и когда можно ожидать результат?
Я как жесткий спамер, который 24/7 спамит все подряд, часто вижу, что HRы кидают ссылку на тестовое задание как предварительный этап собеседования даже в ООО «Рога и копыта». Я лично никогда их не делаю, но интересен процент тех, кто нарушает массовый бойкот тестовых.
За проверку тестовых и собеседования вообще должны доплачивать по идеи, потому-что от того что можно увидеть в большинстве готовых тестовых заданий просто хочется застрелиться и перестать верить в людей и этот мир окончательно.
А вот делать или нет, человек решает сам, и никто под дулом пистолета его делать его не заставляет, более того если задание неадекватно всегда можно его не делать или просто еще и указать на собеседовании, что вот эта часть тестового неадекватна и не делать. Тот кто проверяет страдает больше, чем тот кто делает.
как-то просили написать плейбук ансибла и всё. обычно я даю ссыль на свой гит и все, но кадровики иногда сами пытаются его найти и зыркнуть еще до собеса. вообще, засылать тестовые задания сеньорам это тупо и я б таких кретинов точно бы послал сразу.
Вон в яндексе и то тестовые есть. Я туда собесился несколько лет назад, там на втором (вроде) этапе нужно было решить несколько мелких задач в онлайн редакторе, который сразу видит интервьюер и при этом вы с ним в видеозвонке находитесь. Было очень некомфортно и я затупил и не прошел.
Это не тестовые, это собеседование с решением задач. В случае с тестовыми кандидат и компания находятся в разных положениях - кандидат тратит несколько дней на решение тестового, а компания тратит потом несколько секунд на то чтобы отправить шаблонный отказ, даже не посмотрев твое тестовое. В случае с собеседованием и ты и компания в равных позициях и вы оба тратите свое время.
В идеале я бы хотел что бы тестовое задание было бы единственным вариантом проверки того как ты кодишь, без написания кода на доске в момент оффлайн собеседования или в онлайн-веб-связи. При этом естественно тестовое должно быть максимально приближенным к рабочим задачам, а не задачей которую можно закодировать за 30-60 минут, но задачей на решение которой могут уйти несколько дней.
Только если оно оплачивается и гарантируется фидбек. Сейчас ситуация такая, что эти тестовые никто даже не смотрит. Ты тратишь свое время чтобы потом увидеть в почте шаблонный отказ. Тестовые эта рак современного IT. Только задачи на доске!
я трясусь, даже если мне эта работа вообще не впилась и я знаю что туда в итоге не пойду. я перед любыми публичными выступлениями(а я так воспринимаю собесы) трясусь, вот такой я человек.
Ты слишком мало собеседований проходил и мало выступал. В какой-то момент тебе становится насрать.
На лайвкодинге не об этом надо думать. Просто пишешь код, забыл метод, говоришь, я забыл метод, думаю он называет так и пишешь свое придуманное имя. Если что, собеседующий подскажет. И это не будет минусом на интервью. «IntelliSense» и прочее это просто гнилые отмазки.
А бывает что это первое собеседование после 5 лет и ты хочешь чтобы тебя взяли. Вот там трясет конечно.
Ну что за бред вообще? Кто тебе мешал ходить на собесы последние 5 лет? Зачем хотеть чтобы тебя взяли? Компаний чтоль мало? Тебе на собесе насрать должно быть.
Это когда, например, тебе скидывают pdf на 50 страниц и просят реализовать протокол, который там описан. А что, в одной крипто-шараге мне такое предложили в качестве «тестового» год назад.
Я делаю тестовые если компания уже очевидно потратила на меня больше времени, чем я потрачу на тестовое. Если общение с компанией начинается с тестового - идут мимо.
Иногда просто какие-то безумные предложения с тестовыми попадаются. Летом пишет мне якобы фаундер какого-то стартапа в личку на линке
From this message and from seeing your top skills I think we can actually already jump you to the second stage of the interview which is the technical assessment, so what I've done is add XXX and YYY from our hiring team who will give you a challenge. If you can complete this week when you have time that would be best. They will also share instructions. Once the test is complete XXX/YYY will reach out with next steps. I can't wait to chat!!
All my best!
PS - You can see all our open roles on our job page. senior web engineer role , QQQ and WWW roles. This product engineering role was the one I was reaching out about (MVP React and Typescript assessment)
If you are good at node.js (sounds like you are a backend guy... then you might prefer to take that one for our platform or QQQ roles. It is up to you. Please let the team know what you prefer.
Имена и названия продуктов удалил. У меня к этому чуваку только один вопрос был – ты, блин, мой профиль вообще видел? Какие нахер node.js react и typescript? Еще пишет, что удостаивает меня чести сразу пройти на второй этап интервью процесса!
А зачем, если работу менять не планируешь? Я вот сейчас не планирую, так всех херок, что мне пишут, лесом шлю.
Зачем хотеть чтобы тебя взяли?
Потому что наконец-то работа мечты попалась(ну или зарплата х3-х5 к текущей). Редко, но бывает.
Один раз был случай, что после всех собесов, всё отлично и в итоге меня зарубил безопасник. Потому что по их каналам, меня лишали прав в Иркутске за пьянку. А я и в Иркутске ни разу в жизни не был.
напиши заявление в полицию. пора уже этих бесполезников по 137 укрф сажать, тем более там уголовку подвезли за использование взломанных баз для пробивов
Плохо отношусь, несколько раз делал такие, и выглядело не как тестовое, а целая работа, и хотя я в указанные сроки уложился, никакой обратной реакции не было, т.е. они или реально никого не искали и просто почву прощупывали, или взяли человека не на основе теста, так как не верю, что с таким тестом был огромный конкурс, и они в такой короткий срок, смогли найти того кто лучше это сделал, или вообще использовали меня как бесплатный аутсорс. Впрочем особых сожалений тоже нет, добавил эти работы как пример для резюме. Думаю если есть что показать, то соглашаться на тестовые которые делаются за сколько-то минут и не более скажем 20 строк кода, нет смысла. Так как шанс, что конкретная контора возьмет, слишком низкий, то чтобы ради такого шанса жопу рвать, и еще после того как тебя не возьмут, оставаться с жопной болью и ощущением, что тебя поимели, такое себе.
Я у коллеги подсмотрел задачку с инкрементом [1]. Пользуюсь ею. Еще у одного видел на простенькую сортировку [2].
Очередной слабоумный вращатель деревьев. Весь этот алгодроч, который ты спёр у своих коллег по дурке относится к программированию крайне косвенно. Сделали карго-культ из какой-то неведомой хуйни. Одни фичи языков дрочат, другие алгоритмы, которые даже на практике никогда не применяют в 95% случаев.
Ну я не знаю, что тебе ответить, если ты серьезно считаешь, что один цикл это уже «алгодрочь». И что же, по твоему, относится к настоящему прогроммированию?
И что же, по твоему, относится к настоящему прогроммированию?
Настоящее программирование - это выкатить готовый продукт, который просуществует и будет актуален хренову тучу лет. Пример, вон один финский студент сделал такой продукт и ты им пользуешься, а твои циклы и деревья нормальные люди на одном органе вертели.
Я уже заметил, что в IT вместо нормальных инженеров понанимали хрен пойми кого, которые теперь воспроизводят себе подобных.
Ааа, ты из маркетингового отдела. Так бы сразу и сказал.
Нет, я настоящий программист-инженер. Про маркетинг я ни слова не говорил.
Ты хоть код того продукта открывал? Там цикл на цикле и это все на деревьях развешено.
Если ты, например, разработчику модулей ядра предложишь «повращать деревья» на собесе, то будь готов что тебя могут обоссать в ответ, потому что разработчики ядра занимаются разработкой под железо (другими словами программного продукта), им не интересно ковыряться в деревьях, в хитровыебанных разновидностях связных списков и прочей карго-культной около-алгоритмической хрени. То что ты не вырос из студентоты в человека - это твои проблемы. Если ты пытаешься это проецировать на других - то ты автоматически идешь на конфликт и вообще это уже патология и в IT тебе по нормальному делать нечего.
Я уже заметил, что в IT вместо нормальных инженеров понанимали хрен пойми кого
«А потом начинайте беседу о дураках. Конечно, никто из аудитории не станет принимать это на свой счет, и разговор естественным образом перейдет на «них». Дальше легко и приятно будет шутить о дураках, как будто дураков среди участников темы по умолчанию нет. Более того, вы ограждены от критики, потому что на встречу любому замечанию вы можете сделать скорбное лицо как бы говорящее, да я же в тебя верил, ну не может быть! И больше всего вы сами автоматически приобретаете индульгенцию против дурака - ну кто угодно дурак, но не лектор же.» (с)
Нет, я настоящий программист-инженер. Про маркетинг я ни слова не говорил.
Если ты почитаешь любую литературу о настоящих программистах, будь то упомянутый тобой Линус или прочие гринблаты с томпсонами, то ты увидишь, что им класть было на «продукт» большую перфорированную карту. Они программировали ради программирования и крутили деревья just for fun. Так что, твоя апелляция к Линусу напрасна.
Если ты, например, разработчику модулей ядра предложишь «повращать деревья» на собесе, то будь готов что тебя могут обоссать в ответ, потому что разработчики ядра занимаются разработкой под железо (другими словами программного продукта), им не интересно ковыряться в деревьях, в разновидностях связных списков и прочей карго-культной около-алгоритмической хрени.
Я Шипилева уже упоминал. Судя по тому, что его наняли в Амазон он там никого не обосцал. Напротив, он эту практику даже оправдывает. Повторюсь. У тебя странное представление о разработке настоящего софта. Настоящего, а не всяких крудов и прочего дерьма, типа соц. сетей для собак.
То что ты не вырос из студентоты в человека - это твои проблемы. Если ты пытаешься это проецировать на других - то ты автоматически идешь на конфликт и вообще это уже патология и в IT тебе по нормальному делать нечего.
Чиво? На кого это я что-то проецирую? Покажи пальцем.
…им класть было на «продукт» большую перфорированную карту. Они программировали ради программирования и крутили деревья just for fun. Так что, твоя апелляция к Линусу напрасна.
Ты лукавишь, потому что успех Линукса заключается как раз в проекте под названием «Linux kernel», всё остальное - это мишура.
Судя по тому, что его наняли в Амазон он там никого не обосцал. Напротив, он эту практику даже оправдывает.
Про крупные корпорации промолчим, у них там свои карго-культы. Все уже поржали над требованиями найма у того же Яндекса.
Ты лукавишь, потому что успех Линукса заключается как раз в проекте под названием «Linux kernel», всё остальное - это мишура.
Ты книгу его читал то?
Про крупные корпорации промолчим, у них там свои карго-культы. Все уже поржали над требованиями найма у того же Яндекса.
Ну знаю, кто такие все и с чего именно вы ржёте. Я 10 лет назад собеседовался в Яндекс и собеседования были отличными: адекватные вопросы, про как родить прототайп из синглтона не спрашивали. Думаю, не нужно говорить, что там были лучшие коллеги которых я встречал за 20 лет.
Я уверен Столяров запросто решит любые сложные задачи, он на это надрочен.
Очень маловероятно, что Столяров пройдет современное coding-тестирование. Там есть временной лимит, и код должен быть рабочим. Даже если предположить, что Столяров помнит все основные алгоритмы и умеет их разглядеть в задаче, он со своим C++ без STL просто не успеет их набрать.
Столяров уходит из всех сфер, где его можно оценить как программиста. Его нет на GitHub, его нет на LeetCode (или на любом подобном сайте), так как там живая конкуренция, и его быстро положат на лопатки.
Thalassa лежит на сайте; код еще надо скачать и распаковать. Это уже убирает большинство желающих оценить его код.
Вот я сегодня скачал и оценил.
Моя реакция была эмоциональной. Впечатления давящие и мрачные. Огромное количество текста ради примитивной задачи, которая решается на порядок меньшим количеством кода. Похоже на кодовую графоманию: там, где один вызов SQLite, 2000 строк описания собственной иерархической базы данных на текстовых файлах.
Отказ от минимальных технических инструментов, таких как STL и SQL, превращает весь проект в пустую трату человеко-часов. Как ни странно, coding-тестирование такой типаж программистов выявляет на ура. Пройти coding-тестирование с установкой «только чистый Си» практически невозможно.
А вот тот же github далеко не во всех веб-браузерах корректно работает.
Это надуманный аргумент.
А если от соискателя потребуется работа именно с такой кодобазой?
Это искусственная кодовая база, написанная «преподавателем в отставке» в свободное время. Программирование ради программирования. В боевых проектах такой кодовой базы либо нет, либо, если уж по какому-то стечению обстоятельств она появилась, ее будут переписывать на что-то более практичное.
Самопальная база данных на текстовых файлах вместо как следует протестированного и оптимизированного SQLite никому не нужна.
Всё так. Литкод показывает только умение решать литкод, и больше ничего, несмотря на заверения каргокультистов.
Погодите. Leetcode — это база данных задач. Подразумевается, что при собеседовании кандидат должен понятно объяснить ход решения задачи, выбранную тактику и написать готовый рабочий код, часто на листе бумаги.
Цель не только проверить алгоритмы, но и способность сотрудника объяснять и аргументировать свои решения.
Еще есть «машинное тестирование», когда кандидат выполняет задачи самостоятельно, как первый фильтр перед собеседованием. Но сейчас такое действие уже под вопросом, так как задачи спокойно пишет AI.
Сначала нанимают олимпиадников, а потом удивляются, что всё падает, тупит, и в коде неподдерживаемое говно.
Тут никакой связи нет между олимпиадником и плохим кодом. Это не значит, что лыжник будет по офису в лыжах бегать, а хокеист клюшкой швырять шайбы в монитор техлида.
Если человек не способен отличать условия олимпиад от практической деятельности, то это вопрос уже не к олимпиадам. Точно так же как загоны гражданина Столярова о «чистом Си» мало связаны с МГУ и высшим образованием. Загоны загонами, олимпиады олимпиадами, вузы — вузами. Столяров хейтит Python, а Курячий уже который курс читает в МГУ по Python и выкладывает лекции на YouTube.
Хотя можно было бы сказать: «Вот посмотрите, МГУ ваш, только Си и знает». На одного заклинившего олимпиадника — сотня квалифицированных программистов с опытом олимпиад.
при собеседовании кандидат должен понятно объяснить ход решения задачи, выбранную тактику и написать готовый рабочий код, часто на листе бумаги
Чтобы что? Как часто на практике тебе потребуется написать код на листе бумаги, под придирчивые взгляды оценивающих тебя людей и без доступа к справочным данным?
В реальной работе ты будешь сидеть за своим компьютером в углу и вдумчиво решать поставленную задачу. Если тебе понадобится повертеть дерево - ты не будешь реализовывать это на память, а просто найдешь готовое описание алгоритма у Кнута и не будешь иметь себе мозг.
Реальную ценность представляют обзорные знания, что какие-то структуры данных и алгоритмы существуют; понимание О-нотации, чтобы не городить говнокод на вложенных циклах; знания тонкостей сетевых протоколов, набитая рука, понимание принципов проектирования и прочее.
Программирование во многом - это инженерия. Никто в здравом уме не будет нанимать физика-теоретика, чтобы проектировать трансмиссию для танка, найдут инженера-механика. Но почему-то каргокультисты от программирования считают, что именно знания алгоритмов демонстрируют сакральную способность писать код вообще.
Цель не только проверить алгоритмы, но и способность сотрудника объяснять и аргументировать свои решения.
Отличная цель. Вот только в реальности ты будешь нанимать олимпиадников, гениальных сортирователей списков и прочих литкод-задротов с хорошо, по-инфоцыгански подвешенным языком, которые смогли за полгода научиться решать типовые задачи, и поплывут, когда ты их посадишь за продуктовый проект, и превратят его в кучу неподдерживаемого говна, зато с уникальными вращалками деревьев.
А вот стеснительный автор нескольких модулей ядра и специалист по сетям останется за бортом, потому что ему тяжело писать код, когда на него смотрит несколько пар глаз, и он ограничен во времени. Литкод-собес покажет, что он вообще никакой не программист, раз даже дерево не в состоянии провернуть без десяти ошибок.
Социальный аспект очень важен. Но кретины на литкод-собесах считают, что инфоцыган, надрочившийся на решение типовых задач, лучше профессионала.
Тут никакой связи нет между олимпиадником и плохим кодом.
Связь самая прямая. Если человек только и делает, что гуляет по собесам и решает алгоритмические задачи, у него не будет шанса набраться практического опыта. Всюду, где он побывает, он будет оставлять за собой говнокод.
Отвлеченная история: когда я учился в музыкалке, у меня был экзамен по фортепиано. К нему надо было выучить два разных произведения, чтобы от зубов отскакивало. И я выучил, меня можно было посреди ночи поднять, и я играл их идеально. А вот перед экзаменатором я разволновался, не попадал по клавишам и вообще забывал ноты.
Алгоритмический собес примерно так же и работает. Пропускает людей с посредственными навыками программирования, но хорошими навыками зубрения и чесания языком, и отсеивает специалистов, которые не могут кодить, когда им в монитор оценивающе глядят каргокультисты.
К нему надо было выучить два разных произведения, чтобы от зубов отскакивало. И я выучил, меня можно было посреди ночи поднять, и я играл их идеально. А вот перед экзаменатором я разволновался, не попадал по клавишам и вообще забывал ноты.
Всё правильно. Не надо заучивать Leetcode задачи, чтоб от зубов отскакивало, надо понимать как работают алгоритмы.
Алгоритмический собес примерно так же и работает. Пропускает людей с посредственными навыками программирования, но хорошими навыками зубрения и чесания языком, и отсеивает специалистов, которые не могут кодить, когда им в монитор оценивающе глядят каргокультисты.
Нет, он так не работает. Он работает как раз обратно.
P.S. Возможно, где-то «слышали звон, да не знают где он», но задачи у алгоритмических собеседований в том, чтоб определить умеет ли человек решать задачи и умеет ли он объяснять свое решение по ходу.
Всё правильно. Не надо заучивать Leetcode задачи, чтоб от зубов отскакивало, надо понимать как работают алгоритмы.
То есть, нужны обзорные знания, как я написал выше.
Нет, он так не работает. Он работает как раз обратно.
Как? Объясни, пожалуйста, я не понимаю. Надрочиться решать литкод можно за пару месяцев. Это будут сферические задачи в вакууме, мало связанные с реальностью. При этом важным пунктом алгособеса является программирование или на листочке/доске, или на ноутбуке, пока на тебя смотрят и подгоняют.
Объясни, как ЭТО не будет отсеивать тех, кто не может писать код, когда на него смотрят? Какие это показывает навыки, кроме того, что человек надрочился читать условия с литкода и решать типовые задачи?
Как? Объясни, пожалуйста, я не понимаю. Надрочиться решать литкод можно за пару месяцев.
Инженеры работают коммандами, нужны люди способные решать абстрактные задачи и объяснять их решение. По этому кандидатов тестируют на абстраткных задачах, которые надо объяснить как решать. Объяснить. Не мычать «ну это то, это как бы это понаимаешь, ну врод как записать… это… ну ты понял, а нет.».
Двигаемся дальше. Литкод за два месяца не подготовить. Это неовозможно. Слишком много тем, слишком доскональное их понимание требуется.
Объясни, как ЭТО не будет отсеивать тех, кто не может писать код, когда на него смотрят?
Значит у них нет достаточных навыков общения для работы в коммандах. Надо эти навыки развивать. Leetcode это база данных задач для крупных компаних которые пишут новые языки, создатют фреймворки, ослуживают сервисы для сотен миллионов пользвателей.
Один из знаментых проектов Торвальдса основан на реализации направленых графов.
То что вы привели - это «edge case». Он не имеет никакого отношения к тем проектам, которые разработчики делают в своих компаниях, так же как и всякие тесты на «вращения деревьев» не имеют никакого отношения к обычной работе.
надрочился читать условия с литкода и решать типовые задачи?
Потому что не надо «надрачиваться», нужно досконально понимать алгоритмы. Взять, к примеру, бинарный поиск. Не просто иметь базовое представление о том, как найти элемент в отсортированном массиве, а понимать, как найти элемент в повернутом (shifted) отсортированном массиве, как найти самый левый или самый правый элемент в массиве с дубликатами, как найти элемент, который меньше либо равен, или наоборот, больше либо равен.
Это нужно понимать, а не зазубирвать.
С чего вы взяли, что алгоритмы надо зазубирвать? Это невозможно зазубирть такое количество вариаций алгоритма. Те более что интервьюер спросит. Хорошо вот вы нашли элемент в бинарном поиске, а если массив содержит дубликаты? А если он отсоритрован по убыванию. И т.д. и т.п. все это для того, чтоб при проектировании какой-то программы можно было разбираться в сложных ситуациях.
То что вы привели - это «edge case». Он не имеет никакого отношения к тем проектам, которые разработчики делают в своих компаниях, так же как и всякие тесты на «вращения деревьев» не имеют никакого отношения к обычной работе.
Вы абсолютно правы, на определенном уровне компентции вращать деревья не надо, можно пользоваться готовыми библиотеками.
Но вот на уровне Торвальдса уже вращать деревьями необходимо. В тех задачах которые он решает.