Так мотивация была понятна заранее - человек пришел, нелюбопытный, не задает вопросы. Вы сами же говорите - это неправильно, вот тебе инструкция, надо позадавать вопросы, такие задавай, такие не задавай. Сами его призываете "активно применять лабуду".
В заголовке, да и в самой статье вы сами пишите если хотите увеличить шансы пройти собеседования, то задавайте вопросы.
Про смысл я написал в 5 пунктах, начиная с "напишу, почему это так важно для руководителя:"
Можете пояснить, пожалуйста, я не пойму. Вот я кандидат пофигист, я не особо любопытен, мне неинтересна миссия компании, но я прочитал вашу статью и чтобы повысить шансы я подготоваливаю вопросы к собеседованию про миссию компании, про культуру в команде, про слабые и сильные места. Про печеньки не спрашиваю, но придумываю вопрос котороый вызовет азарт. Портрет мой не поменялся, как я был нелюбопытным, так им и остался. Что в итоге это дало руководителю?
Вообще не понимаю смысла таких статей. Ок, вы придумали какую-то свою корелляцию "не задает вопросы - плохо будет работать", но потом вы тут же пишите статью-инструкцию в которой объясняете,что чтобы попасть к вам надо позадавать вопросы. Канидаты её читают и понимают, чтобы пройти собеседование им надо задавать вопросы и, собственно, так и делают как их просят. Скил у них при этом не поменялся, кто был нелюбопытным, то нелюбопытным и остался. В чем смысл?
Ответ прост: чтобы заметить, что вам нужны алгоритмы, вам надо эти алгоритмы на достаточно хорошем уровне знать.
Как-то этот "простой" ответ идет вразрез с моим опытом. Если вы перечитайте мой первый пост, то увидите, что я замечал алгоритмы ДО того как знал на хорошем уровне, а когда знал их на хорошем уровне, то они мне не пригождались. Или может быть с вашей точки зрения хороший уровень знания по алгоритмам - это 2000 часов на литкоде?
Вообще, любая программа (если только не на HTML /s) - это алгоритм по определению.
А любой алгоритм/программа - это также еще и функция. Обязательно ли знать математический анализ, теоритическую логику(прям на таком уровне, что программисту университетскую задачу и просим решить) для того чтобы программировать? В общем случае - нет. В частных случаях бывает, что на какой-то работе прям потребуется(да ml тот же), ну и если вы хорошо знаете мат. анализ вполне возможно, что где-то вы воспользуетесь этим навыком и он поможет вам быстрее решить задачу по программированию. Мне, например, мат. база пригождалась, в так скажем, json-укладке, где вообще этого никто бы не ожидал. Но ходить и говорить, "люди математика - это база в программировании, все на stepic, вот у меня 10 кейсов- примеров", я точно не буду :)
Мой простой ответ таков(он собственно был уже написан в моем посте): есть программисты, которым пригождаются алгоритмы, есть, которым нет - возможно у последних задач нет по алгоритмам, а может они на другой навык ставку делают, что тоже вполне нормально, т.к. все навыки освоить невозможно.
Поскольку вы ответили на мой комментарий, то тогда продолжу дискуссию. Есть два человека: одному алгоритмы пригодились, другому нет. Какой тут вывод можно сделать? :)
Полностью согласен с вами, с языком очень хороший пример. Можно было бы сделать аналогичную статью про то, что fluent english - это база для программиста и вот у меня вот 45 примеров, как он пригодился в реальной жизни. Просто у людей так мышление устроено: они осваивают какой-то навык, начинают его применять, добиваются какого-то успеха и считают, что их путь единственно верный. Хотя на самом деле - это просто один из путей. Поговорка даже есть такая: освоивший молоток в каждой проблеме видит гвоздь.
Мне алгоритмы пригодились буквально 1 раз в начале моего карьерного пути, когда я был не то джуном и не то мидлом, в 2013 году. Я писал свой вариант поиска в ширину по графам, потому что библиотечная реализация не подходила. В то время алгоритмы не спрашивали ни в яндексе, ни в гугле(да, были и такие времена). Но вот сумел как-то без литкода разобраться, вспомнить университетскую программу по графам, да гугл помог. А уже потом появился тренд на собеседования по алгоритмам, тут уже хочешь не хочешь, но пришлось обогатить знания по ним. Я, конечно, не 2000, но часов 20-40 на теорию и практику потратил, в целом могу сказать, что на практике мне это пригодилось как "вложенный цикл - это O квадрат, так низя". Поскольку литкод я особо не нарешивал, то как результат имею 5-7 заваленных секций по алгоритмам(не в 0 конечно, но и не на 100% чисто), а также следующие из этого результата комментарии "фу, не программист, это база" на хабре :)
В реальности, чтобы погрузиться в проект на новой работе и начать приносить пользу нужно минимум 2-3 месяца
Я такое помню лет 12 назад, когда у нас не было никаких процессов, ни agile, мы наняли разработчика, он просидел месяц, чето там разбирался, пытался что-то накодить, но в итоге за этот месяц нифига не сделал, ни одного реквеста.
Сейчас то как такое возможно? В эпоху эффективности, софт-скиловости, agile, скрам-канбан. Ко мне приходили новички, нарезаешь им адекватные задачки, они за 2-3 дня их делают. И оценивать их как раз за 2 недели работы приходилось. Ну ок, потратят они день-два на то, чтобы проект поднять. Но потом пару задач он должен сделать, не сделал ни одной, ну тогда большие вопросы. Так что вообще не понимаю про что вы говорите и как так у вас процессы устроены.
А зачем проверять всех, в чем проблема проверять по порядку батчами по 5, например? Из этих 5 кто-то прошел - тех берём, закрываем вакансию. Сколько ни читаю комментарии у всех неопреодолимое желание выбрать "САМЫЙ вкусный бургер", почему нельзя взять просто вкусный?
Что говориться в статье? Что решение задач показывает не возможность решать задачи, а возможность действовать в стрессовой ситуации.
В статье лишь приведено мнение автора, такого же обычного человека как и я. И вот я говорю - не показывает. И кто прав? Пока у вас не будет какой-то доказательный базы - это просто гипотеза, пусть она вам и очень нравится.
Потом у неустойчивого к стрессу разработчика падает прод, а он вместо мобилизации всех своих сил перестает выходить на связь.
Понятно, что разработчик не должен работать постоянно в стрессе. Но дерьмо случается, к нему нужно быть готовым.
Еще можно брать в разрабочтики только людей с медицинским образованием. Вдруг дерьмо случится и на работе кому-то станет плохо, тогда он сможет диагностировать и оказать необходимую помощь.
Если серьезно, то проблема таких суждений, что у вас нет осознанного подхода. Вы взяли алгоритм, а потом придумали объяснение себе, почему он хороший. Должно быть ровно наоборот. У вас же получается вы режете 25% хороших кандидатов, которые пишут хороший код и готовы закрывать задачи, но не могут оперативно поднять прод в критической ситуации? Ну ок, пусть пишут код, а для поднятия прода назначьте специально заточенных людей. Но это я вообще в допущения пошел, хотя на самом деле следствие "не решил литкод - не будет брать трубку, когда упадет прод" - это максимальное натягивание совы на глобус, которое вы сами для себя придумали, чтобы оправдать литкод.
Почитать было интересно, но причина ваших переживаний как будто бы вообще другая. Компания вместо удобного для вас сеньора наняла софт скилового джуна или даже стажера. Которого надо обучать, брать за него ответственность и т.д. Ну ок, изначально вроде планировала мидла и вы подсветили им, что он технически не мидл. Вроде всё ровно. И вы не виноваты за весь процесс. А вот то, что вы идете против процесса в духе "я один знаю как правильно" - это не есть хорошо. Наоборот своим процессом компания как бы сообщает вам что она от вас хочет: "мы хотим нанять софтскилового джуна"
Всю жизнь играю в баскетбол и обожаю его. Но у него есть одна проблема для меня - это командная игра со всеми вытекающими. То есть даже на про уровне могут решать не столько навыки, а коммуникация и сыгранность. Если берёшь на себя ответственность за какое-то решение в игре,то надо быть готовым, что в случае ошибки, тебе прилетит от всей команды. То есть пришло понимание, что в первую очередь надо качать харизму, коммуникацию, уметь договариваться с партнерами, быть психологом, а мне тупо хочется разгрузить свой мозг и поделать рутинные действия, качать навыки и потом за счет этого кого-то победить :)
И в связи с этим начал подумывать о том, чтобы сменить командный вид спорта, на индивидуальный. Как раз присматриваюсь к большому теннису, ни разу не играл в него, но ходил в секцию по настольному теннису в детстве, возможно у них есть что-то общее. Единственное, что настораживает - это недешевый вид спорта. Групповая тренировка - от 1.5к за час. 3 раза в неделю по 2 часа - 36 тысяч в месяц и это без индивидуальных тренировок. Психологически тяжело такие деньги отдавать за спорт :)
Лайкодинг имеет хотя бы какую-то доказательную силу.
Если там будут задачи имеющие отношения к реальности, то, пожалуй, да. Типа возьми клиента, сходи в сервис, отдай json. Пользуйся чем хочешь, гуглом, нейронкой и т.д. Как на работе.
А вот литкод, тоже найм по вайбу. Нанимаете тех, кто подготовился по литкоду, ну или в целом, есть скил решения литкод задач, неважно откуда. Который с решениями задач вашей компании слабо кореллирует.
Опять серебряную пулю нашли? Чем больше у человека областей ответственности, тем хуже он в них разбирается. В итоге код из говна и палок, бизнес метрики непонятно что и для чего меряют и ещё и пользователям на интервью нагрубил.
Я в руководстве складских комплексов отработал много лет и сейчас не могу найти новую достойную работу с зарплатой, приближенной а прошлому рабочему месту. А чему я научился на прошлом месте работы? Орать на людей и подгонять их, чтобы не прерывать бизнес-процессы логистического объекта? Ну да, принимал участие по внедрению wms системы. У меня, как у IT портфолио не сформировать.
Ну то есть у вас срабатывает компенсаторика и вы хотите, чтобы ребенок добился того, что не получилось у вас? Самая главная проблема тут, что у вас не получилось и вы не знаете как это путь пройти и сейчас по тем же граблям будете толкать ребенка да еще скорей всего против его воли. Есть такая фраза воспитание ребенка - это воспитание себя. Хотите, чтобы ребенок пошел в айти, наоборот вам нужно самому стать айтишником, пройти через все проблемы, а ребенок просто будет видеть, собезъяничает и пойдет по вашему пути.
Я считаю, что в IT человек развивается, знакомится с документацией и обновлением той или иной информации…
Вы тут немного путаете, не тот кто приходит в айти развивается по умолчанию, а в айти приходит и выживает только тот, кто хочет развиваться. Короче говоря, разиваться можно не только в айти можно и это от желания человека зависит, а не от сферы.
Очень проще да, когда компьютер стоил как крыло от самолёта, а чтобы устроиться на работу надо переезжать в другой город, за 400 км. И это еще повезло, что близко. Т.к. в твоём городе из вакансий по питону в поиске только ЧОП "Питон"(не шутка, кстати). И это я только 2004-2009 описал.
А где взять полноценный объем знаний сейчас?
Ну в те то года знаниями то просто заваливали(сарказм). Интернет стоил 4 рубля за мегабайт, не было не то что курсов, ютуба не было, статей тоже не очень. Английский пока еще не знаешь, переводчиков как щас нет. Prompt был, который настолько криво переводил, что никто им не пользовался. Я на первом курсе купил книгу по Паскаль и просто читал и разбирался. Рылся по инету и нашел на фрилансе задачу - автоматизировать несколько http-запросов, сидел со сниффером и разбирался как это сделать, повторюсь статей не было, библиотек таких удобных как сейчас тоже не было.
И никому точно также нужны были просто выпускники, которые решали паскаль в универе. Все точно также искали людей у которых был какой-то опыт, какой-то интерес, какой-то проект не для резюме, а по своему желанию.
Так мотивация была понятна заранее - человек пришел, нелюбопытный, не задает вопросы. Вы сами же говорите - это неправильно, вот тебе инструкция, надо позадавать вопросы, такие задавай, такие не задавай. Сами его призываете "активно применять лабуду".
В заголовке, да и в самой статье вы сами пишите если хотите увеличить шансы пройти собеседования, то задавайте вопросы.
Можете пояснить, пожалуйста, я не пойму. Вот я кандидат пофигист, я не особо любопытен, мне неинтересна миссия компании, но я прочитал вашу статью и чтобы повысить шансы я подготоваливаю вопросы к собеседованию про миссию компании, про культуру в команде, про слабые и сильные места. Про печеньки не спрашиваю, но придумываю вопрос котороый вызовет азарт. Портрет мой не поменялся, как я был нелюбопытным, так им и остался. Что в итоге это дало руководителю?
Вообще не понимаю смысла таких статей. Ок, вы придумали какую-то свою корелляцию "не задает вопросы - плохо будет работать", но потом вы тут же пишите статью-инструкцию в которой объясняете,что чтобы попасть к вам надо позадавать вопросы. Канидаты её читают и понимают, чтобы пройти собеседование им надо задавать вопросы и, собственно, так и делают как их просят. Скил у них при этом не поменялся, кто был нелюбопытным, то нелюбопытным и остался. В чем смысл?
Как-то этот "простой" ответ идет вразрез с моим опытом. Если вы перечитайте мой первый пост, то увидите, что я замечал алгоритмы ДО того как знал на хорошем уровне, а когда знал их на хорошем уровне, то они мне не пригождались. Или может быть с вашей точки зрения хороший уровень знания по алгоритмам - это 2000 часов на литкоде?
А любой алгоритм/программа - это также еще и функция. Обязательно ли знать математический анализ, теоритическую логику(прям на таком уровне, что программисту университетскую задачу и просим решить) для того чтобы программировать? В общем случае - нет. В частных случаях бывает, что на какой-то работе прям потребуется(да ml тот же), ну и если вы хорошо знаете мат. анализ вполне возможно, что где-то вы воспользуетесь этим навыком и он поможет вам быстрее решить задачу по программированию. Мне, например, мат. база пригождалась, в так скажем, json-укладке, где вообще этого никто бы не ожидал. Но ходить и говорить, "люди математика - это база в программировании, все на stepic, вот у меня 10 кейсов- примеров", я точно не буду :)
Мой простой ответ таков(он собственно был уже написан в моем посте): есть программисты, которым пригождаются алгоритмы, есть, которым нет - возможно у последних задач нет по алгоритмам, а может они на другой навык ставку делают, что тоже вполне нормально, т.к. все навыки освоить невозможно.
Поскольку вы ответили на мой комментарий, то тогда продолжу дискуссию. Есть два человека: одному алгоритмы пригодились, другому нет. Какой тут вывод можно сделать? :)
Полностью согласен с вами, с языком очень хороший пример. Можно было бы сделать аналогичную статью про то, что fluent english - это база для программиста и вот у меня вот 45 примеров, как он пригодился в реальной жизни. Просто у людей так мышление устроено: они осваивают какой-то навык, начинают его применять, добиваются какого-то успеха и считают, что их путь единственно верный. Хотя на самом деле - это просто один из путей. Поговорка даже есть такая: освоивший молоток в каждой проблеме видит гвоздь.
А вам пригодились алгоритмы в реальной жизни?
Мне алгоритмы пригодились буквально 1 раз в начале моего карьерного пути, когда я был не то джуном и не то мидлом, в 2013 году. Я писал свой вариант поиска в ширину по графам, потому что библиотечная реализация не подходила. В то время алгоритмы не спрашивали ни в яндексе, ни в гугле(да, были и такие времена). Но вот сумел как-то без литкода разобраться, вспомнить университетскую программу по графам, да гугл помог. А уже потом появился тренд на собеседования по алгоритмам, тут уже хочешь не хочешь, но пришлось обогатить знания по ним. Я, конечно, не 2000, но часов 20-40 на теорию и практику потратил, в целом могу сказать, что на практике мне это пригодилось как "вложенный цикл - это O квадрат, так низя". Поскольку литкод я особо не нарешивал, то как результат имею 5-7 заваленных секций по алгоритмам(не в 0 конечно, но и не на 100% чисто), а также следующие из этого результата комментарии "фу, не программист, это база" на хабре :)
Я такое помню лет 12 назад, когда у нас не было никаких процессов, ни agile, мы наняли разработчика, он просидел месяц, чето там разбирался, пытался что-то накодить, но в итоге за этот месяц нифига не сделал, ни одного реквеста.
Сейчас то как такое возможно? В эпоху эффективности, софт-скиловости, agile, скрам-канбан. Ко мне приходили новички, нарезаешь им адекватные задачки, они за 2-3 дня их делают. И оценивать их как раз за 2 недели работы приходилось. Ну ок, потратят они день-два на то, чтобы проект поднять. Но потом пару задач он должен сделать, не сделал ни одной, ну тогда большие вопросы. Так что вообще не понимаю про что вы говорите и как так у вас процессы устроены.
А зачем проверять всех, в чем проблема проверять по порядку батчами по 5, например? Из этих 5 кто-то прошел - тех берём, закрываем вакансию. Сколько ни читаю комментарии у всех неопреодолимое желание выбрать "САМЫЙ вкусный бургер", почему нельзя взять просто вкусный?
В статье лишь приведено мнение автора, такого же обычного человека как и я. И вот я говорю - не показывает. И кто прав? Пока у вас не будет какой-то доказательный базы - это просто гипотеза, пусть она вам и очень нравится.
Еще можно брать в разрабочтики только людей с медицинским образованием. Вдруг дерьмо случится и на работе кому-то станет плохо, тогда он сможет диагностировать и оказать необходимую помощь.
Если серьезно, то проблема таких суждений, что у вас нет осознанного подхода. Вы взяли алгоритм, а потом придумали объяснение себе, почему он хороший. Должно быть ровно наоборот. У вас же получается вы режете 25% хороших кандидатов, которые пишут хороший код и готовы закрывать задачи, но не могут оперативно поднять прод в критической ситуации? Ну ок, пусть пишут код, а для поднятия прода назначьте специально заточенных людей. Но это я вообще в допущения пошел, хотя на самом деле следствие "не решил литкод - не будет брать трубку, когда упадет прод" - это максимальное натягивание совы на глобус, которое вы сами для себя придумали, чтобы оправдать литкод.
Почитать было интересно, но причина ваших переживаний как будто бы вообще другая. Компания вместо удобного для вас сеньора наняла софт скилового джуна или даже стажера. Которого надо обучать, брать за него ответственность и т.д. Ну ок, изначально вроде планировала мидла и вы подсветили им, что он технически не мидл. Вроде всё ровно. И вы не виноваты за весь процесс. А вот то, что вы идете против процесса в духе "я один знаю как правильно" - это не есть хорошо. Наоборот своим процессом компания как бы сообщает вам что она от вас хочет: "мы хотим нанять софтскилового джуна"
Всю жизнь играю в баскетбол и обожаю его. Но у него есть одна проблема для меня - это командная игра со всеми вытекающими. То есть даже на про уровне могут решать не столько навыки, а коммуникация и сыгранность. Если берёшь на себя ответственность за какое-то решение в игре,то надо быть готовым, что в случае ошибки, тебе прилетит от всей команды. То есть пришло понимание, что в первую очередь надо качать харизму, коммуникацию, уметь договариваться с партнерами, быть психологом, а мне тупо хочется разгрузить свой мозг и поделать рутинные действия, качать навыки и потом за счет этого кого-то победить :)
И в связи с этим начал подумывать о том, чтобы сменить командный вид спорта, на индивидуальный. Как раз присматриваюсь к большому теннису, ни разу не играл в него, но ходил в секцию по настольному теннису в детстве, возможно у них есть что-то общее. Единственное, что настораживает - это недешевый вид спорта. Групповая тренировка - от 1.5к за час. 3 раза в неделю по 2 часа - 36 тысяч в месяц и это без индивидуальных тренировок. Психологически тяжело такие деньги отдавать за спорт :)
А можете привести пример, пожалуйста, как вы это оцениваете? Когда человек думает хорошо и когда плохо?
А для чего вы это проверяете? У вас в работе нужно быстро код писать и не гуглить?
Если там будут задачи имеющие отношения к реальности, то, пожалуй, да. Типа возьми клиента, сходи в сервис, отдай json. Пользуйся чем хочешь, гуглом, нейронкой и т.д. Как на работе.
А вот литкод, тоже найм по вайбу. Нанимаете тех, кто подготовился по литкоду, ну или в целом, есть скил решения литкод задач, неважно откуда. Который с решениями задач вашей компании слабо кореллирует.
Опять серебряную пулю нашли? Чем больше у человека областей ответственности, тем хуже он в них разбирается. В итоге код из говна и палок, бизнес метрики непонятно что и для чего меряют и ещё и пользователям на интервью нагрубил.
del
Ну то есть у вас срабатывает компенсаторика и вы хотите, чтобы ребенок добился того, что не получилось у вас? Самая главная проблема тут, что у вас не получилось и вы не знаете как это путь пройти и сейчас по тем же граблям будете толкать ребенка да еще скорей всего против его воли. Есть такая фраза воспитание ребенка - это воспитание себя. Хотите, чтобы ребенок пошел в айти, наоборот вам нужно самому стать айтишником, пройти через все проблемы, а ребенок просто будет видеть, собезъяничает и пойдет по вашему пути.
Вы тут немного путаете, не тот кто приходит в айти развивается по умолчанию, а в айти приходит и выживает только тот, кто хочет развиваться. Короче говоря, разиваться можно не только в айти можно и это от желания человека зависит, а не от сферы.
А за два десятка собесов и часы подготовки на литкоде вам сколько платят обычно?
Очень проще да, когда компьютер стоил как крыло от самолёта, а чтобы устроиться на работу надо переезжать в другой город, за 400 км. И это еще повезло, что близко. Т.к. в твоём городе из вакансий по питону в поиске только ЧОП "Питон"(не шутка, кстати). И это я только 2004-2009 описал.
Ну в те то года знаниями то просто заваливали(сарказм). Интернет стоил 4 рубля за мегабайт, не было не то что курсов, ютуба не было, статей тоже не очень. Английский пока еще не знаешь, переводчиков как щас нет. Prompt был, который настолько криво переводил, что никто им не пользовался. Я на первом курсе купил книгу по Паскаль и просто читал и разбирался. Рылся по инету и нашел на фрилансе задачу - автоматизировать несколько http-запросов, сидел со сниффером и разбирался как это сделать, повторюсь статей не было, библиотек таких удобных как сейчас тоже не было.
И никому точно также нужны были просто выпускники, которые решали паскаль в универе. Все точно также искали людей у которых был какой-то опыт, какой-то интерес, какой-то проект не для резюме, а по своему желанию.