Генеративное решение решает другую (возможно эквивалентную) задачу. Численный ответ тот же. Но без доказательства, что мы решаем ту же задачу такое применение - близко к ошибке.
Решение-1 -- Вася написал алгоритм, который выдаёт каждому студенту число 0 или 1 или 2. (сумма всех 20 чисел == 10). Решение-2 -- Вася написал алгоритм, который дважды выдаёт каждому студенту число 0 или 1 (сумма всех 40 чисел == 10).
И отдельно требуется доказать, что Решение-2 - применима (т.е. оба сформулированных условия эквивалентны).
Знаменатель будет складываться из трех «фиксированных» случаев для 19 оставшихся людей, в зависимости от того, какое число достанется Васе:
А это ещё зачем? В знаменателе будет стоять ровно такая же формула, как в числителе, только распределение по 19 людям (Upd: и к стати в решении-2 вы ровно это и сделали).
Общая идея такая: 1. Распределим все возможные распределения {1, 2, 0} по 20 людям (так чтобы сумма числе была 20). 2. Посмотрим с какой вероятностью в позиции N_0 будет стоять число "0" 3. Пункт-2 эквивалентен Сnt_19(человек) / Сnt_20(человек). Т.к. мы просто фиксируем Васю на начальном индексе и "хорошими" называем исходы, когда там 0. 3. Васю можно зафиксировать на 1м месте, т.к. из соображений симметрии все места равны (такое обоснование вполне принимается даже на школьных олимпиадах).
Соответственно у вас 2 одинаковых формулы в числителе и в знаменателе.
Ох.. сначала хотел написать про частности формулировок, потом появилась эта сентенция.
У вас некоторые задачи (в частности 2 и 3) - плохо сформулированы. Совет - не примите его за назидание - найдите в ВК группу Константина Кнопа (это автор задач и член жури школьного математического движения) "математические задачи и головоломки" и посмотрите как там формулируются задачи на вероятности, и какие замечания профессионалы выдвигают, когда мы с вами, обыватели, неаккуратно их формулируем. Вам будет полезно, поверьте.
============================== 1. Главного героя должны звать не Вася, а Петя (это соответствует русскоязычной традиции именования героев задач на вероятности - подобно традиции "Алиса" и "Боб" в англоязычных источниках).
2. В задаче 2 идея и решения основаны на предположении: события "студент решил задачу №_X" и "студент решил задачу №_Y" независимы. В реальном мире это не так. Соответственно надо или аккуратно переформулировать задачу. Или решить задачу для зависимых событий и посмотреть - уйдёт ли условная вероятность "решил задачу №_X при условии решил задачу №_Y" из конечной формулы или нет - с ходу видится, что решение не тривиальное.
3. В задаче 3 сентенция "Вася уже отобран в команду" - лишняя и сбивающая с толку. Намеренное сбивание решающего с толку - допустимо и поощряется в головоломках, но является плохой практикой для задач (если только не стоит какая-то цель столкнуть ученика с парадоксом, мнимым или реальным, - здесь этой цели нет).
Средняя зарплата в России по итогам Q1,Q2 2005 - 95_000р. Уже даже в провинциальной "пятёрочке" в Тамбове зарплаты 40 - и хочу напомнить торговля в России одна из самых низкооплачиваемых отраслей.
А люди в обсуждении IT всё ещё ЗП в 30 тысяч рублей вспоминают. У вас неактуальные данные и "палеолит" - как бы давно закончился.
по умолчанию ваша фраза "подготавливаешь интерфейс" понимается как "берёшь и пишешь новое внешнее API" и именно такая постановка вопроса является проблемой.
Такие договоры скорее всего не рабочие. Насколько я помню даже что-то подобное несколько лет назад откатывалось через суд.
Рад что вы честны. Но "в целом" выход в такой ситуации для людей с улицы один - платить им ровно столько, сколько прибыли они приносят. Ну то есть 0-10_000 в месяц в течении первых 3 месяцев для людей закончивших 6-9 месячные курсы программистов.
1. Так подождите - мы по кругу ходим. Когда компании выращивали стажёров "для себя" а стажёры у них сотавались - наставничество было. Стажёры перестали оставаться - компании перестали работать себе в убыток.
2. > подгатавливаешь какой то интерфейс, и говоришь джуну "на делай", тэк стак такой то > Но! Если вам нужно 15 минут чтобы объяснить простую задачу Я не то, чтобы жаждал поймать вас на несоответствии - но смотрите вы сначала предложили одно, а потом совершенно другое.
Вот 15 минут нужно (даже на простейшую задачу) - чтобы избежать таких, довольно очевидных ошибок непонимания. Конечно гораздо лучший способ - погрузить что-то уже понимающего в программировании человека в свою предметную область, чтобы он с полу-слова понимал что имеется в виду - и отпускать его на 1-2-5 дней работать. Но это нужен минимально грамотный специалист уже.
В боле-менее сложной предметной области это работать не будет.
Довольно долго объяснять почему. (Майкрософт по-моему так хотели делать лет 15 что-ли назад - но отказались потому, что это дебилизм).
Ну т.е. есть какая-то минимальная задача, которую разумно экономически разумно выделять. Ей соответствует минимальная квалификация "джуна". Вы вот говорите - давайте брать людей ещё раньше, нарезать задачи ещё мельче, и оформлять их не в виде объяснения, а прямо в виде интерфейса, давайте посмотрим какие проблемы на этом пути: 1 - если я уже написал интерфейс на маленькую задачу, то времени написать сам код уйдёт меньше, чем передать эту задачу стажёру. Т.е. после калькуляции - это он должен мне доплачивать за то, что я вместо "за 10 минут написал код" - 15 минут двигал тикеты в джире и ревьювил его код (не говоря о том дискомфорте, который мне это переключение контекстов деятельности доставит).
2 - а я вообще интерфейсы хорошо напишу? Т.е. - разберём проблему - прикинем что надо сделать; - прикинем интерфейсы - заимплементим реализацию - впишем в текущую систему. Без двух последних пунктов интерфейсы могут оказаться не совсем подходящими. А если надо будет что-то в интерфейсах поправить - стажёр же с высокой вероятностью не поймёт.
3 - таких маленьких задачек то густо топусто (вот мы когда студентов берём во-первых такие "выделимые" задачки отдельно для них готовим и иногда даже специально их не делаем, чтобы было чем студентов содержательно занять).
Если вы хоть раз сталкивались на работе с ситуацией "эх, сейчас бы помощника, пусть вот это сделает, пока я думаю" - то вы понимаете, для чего нужны джуны.
Это сказки какие-то. Ключевая проблема в том, что так, как вы это описали - в системном программировании / микроэлектронике почти никогда не работает (возможно в клепании сайтов - работает нормально). Обычному челу после курсов я объяснять что как и почему надо сделать - буду дольше чем сам писать. А там где это работает (например со студентами МГУ / МФТИ / ВШЭ) - так за ними очередь стоит из организаций желающих к себе пригласить их на оплачиваемую стажировку "подмастерьями" в вашей терминологии.
Т.е. типовые варианты примерно такие: - человек уже что-то умеет - ок добо пожаловать на вакансию джуна. - гарантировано толковый и почти хочет к вам (но мало что пока умеет) - добро пожаловать на вакансию стажёра. - человек "очень хочет научиться", никакое собеседование пройти не способен и в любой момент как чему-то научится готов свалить - ну ок, готов год проработать за 0 рублей (10 000 рублей / месяц)?
У вас примерно такое видение взаимодействия-вознаграждения или другое?
Ну тогда вы зашли с нерепрезентативным примером. Можем обсудить его - но учтите: он мало относится к текущей проблематике "в целом".
Когда я нанимал - я делал предложение одному самоучке (один из одного человека получил предложение), т.к. у меня было чёткое понимание, что раз человек разобрался самостоятельно - то и с нашими задачами справится хотя и требуется дорасти. С высокой вероятностью - взял бы и вас (ну т.е. у меня есть понимание, что если человек обучился сам, то он изначально на голову выше средних вкатышей через курсы), но как минимум прособеседовал бы.
Когда я входил в профессию - у меня было чёткое понимание, что трудовая этика такова: "сначала компания тебя дообучает, себе в убыток, а какое-то разумное время на них работаешь не перескакивая через год на ЗП повыше на 20%-50%"
Сегодня такой трудовой этики больше нет, в первую очередь благодаря пропаганде "рационального эгоизма". Ну ок раз так то обе части негласного договора "сначала мы дообучаем джуна себе в убыток потом он работает на нас" не выполняются. Поэтому СРАЗУ выставляем требования такими, чтобы джун обходился нам в не слишком большой убыток. Я не очень понимаю что в этом странного.
Опять же я вашу личную ситуацию не знаю, но когда я входил в профессию я получал меньше водителя в ЦентТелекоме где я работал "инженером-программистом".
По-человечески я вам сочувствую. Вам обещали "царский путь" в IT (вместо 5 лет института 9-18 месяцев курсов), а оказалось что обманули.
С профессиональной точки у меня к вам два вопроса:
В какой форме обычно вкатуны en masse приходят к мысли "явно обманывать работодателей при приёме на работу"? Это "личное дело каждого" или "подсмотрели идею на форумах" или ближе к концу курсов явно помогают так сделать (в виде советов по "приукрашиванию" резюме)? Насколько сильно и откровенно помогают?
Есть проблема - множество людей, квалификации которых не хватает для существующих вакансий. Как вы предлагаете проблему решать? (в данный момент "вкатуны" - хотят устроиться на вакансии обманом, где их квалификации не хватает и первый работодатель будет дообучать их за свой счёт - работодателей это не устраивает).
П.С. Требования к джунам адекватны текущей экономике - рабочая единица, которая почти нарабатывает на свою зарплату (о прибыли речи не идёт, вот честно).
Люди выдают явно учебные проекты за рабочие. Любой инженер в своей области - на раз их отличит Но для этого нужно время этого инженера - а наша задача разгрузить его от этой текучки.
Натренировать девочку-HR или даже нейросеть - малореально.
Фундаменталку могут делать 1.5 конторы в РФ (ну ладно я с десяток насчитал) - но запись такой конторы в резюме - уже повод поговорить с человеком.
А мелкие конторы - делают что-то очевидно прикладное и с очевидным применением в конкретной внешней системе.
> Можете привести пример адекватной, по вашему мнению, задачи для FPGA-мидла? - ethernet + кусок сетевого стека (потому, что HF + [training / CV / радары ) - криптография с конкретным прикладным применением - "бабочка" (DFT / Адамар) - с конкретными специфическими требованиями
*) Замечу, что людей уходящих из военки я не увидел (ну просто в начале 2024 перестал собеседовать). Но проглядев с 10к резюме - любой начнёт отличать реальную работу от записанного в резюме курсовика по CV.
HR создаёт шаблонную+- вакансию и использует шаблонные
Вы плохой Нострадамус. Текст вакансиий писал я сам, пояснение "что делаем мы" и "что нужно будет делать кандидату" - для начала общения HR-кандидат тоже я.
И да "подсказка" непонятна, поэтому задам два вопроса: - сколько собеседований вы провели с 2020 года? - как надо действовать, чтобы не тратить труд квалифицированных специалистов на отсеивание заведомо неподходящих вкатунов?
П.С. Даже если в заявке почти прямым текстом написано "вкатунов не беспокоить, требования такие что вы не справитесь" - всё равно подаются сотни резюме. Кажется что вкатуны на текущем рынке рассматривают первую работу (после курсов \ стажировки) - не как работу (где ты получаешь деньги за выполнение задач работодателя), а как "последний этап обучения", - где надо правдами и неправдами получить запись о годе работы в трудовой и свалить уже на "честную вакансию миддла".
Вам как бизнесу очень хочется, чтобы технические специалисты росли вширь. Т.е. программист, отвечавший раньше за технические решения в каком-то модуле взял техническую ответственность за всю подсистему.
Предиктором того, что человек идёт по этому пути - является большое число горизонтальных связей вокруг того блока, которым он занимается.
На месте менеджера можно установить для себя "некоторые маркеры" - человек растёт таким образом.
Fauxductivity - это хакинг тех самым "маркеров менеджера".
Т.е. ты не только делаешь свою делянку. Но и распускаешь павлиний хвост - как будто ты отвечаешь за всю крупную подсистему.
Послушайте ну вот в этом вашем комментарии неправильно почти всё. От начала и до конца.
1. Автор имеет право использовать термин в каком-то специфицированном виде (т.е. называть красный цвет "зелёным" нельзя, но называть специальный вид экзамена "экзаменом" - можно) . Автор неявно это сделал "экзамен - в том смысле в котором собес превратили в экзамен в последние 5 лет". Если вы умнее - вы же и должны написать, что термин использован неверно. А не вводить всех читающих в заблуждение. Когда в статье "экзамен" значит одно, а в вашем комментарии "экзамен" - значит другое.
2. Приходит собесится на синьёра != синьёр (и даже хотя бы миддл). Это собственно проблематика "вкатуны сломали найм" последних 5 лет, примерно. И вы именно этот момент напрочь игнорируете. Ещё раз - вы напрочь игнорируете собственно основной лейтмотив статьи: "Найм сломан "вкатунами". Корпорации приспосабливаются. Приспосабливаются из рук вон криво." (Нанимал - отсобеседовал на позицию "миддл system programmer" человек 20-30 в 2022-2023 годах. Т.е. проблематику 1.5 года назад понимаю вполне хорошо. Отменторил человек 10 за карьеру. На обоих последних местах работы у нас были базовые кафедры в хороших универах - первокуров-третьекуров не просто видел, лично дообучал).
3. Человек обязан уметь програть алгоритмы - это необходимое условие. Но очень, очень, ОЧЕНЬ недостаточное, особенно по последним временам. Основная проблема вашего подхода - вам нужен инженер (человек, который через 2-3 года станет инженером), а гоняете вы его по алгоритмам. Это сильно-сильно разные области знаний, и даже человеческой деятельности).
В статье говорится про тип плохих экзаменов, появление которых на собеседованиях мы наблюдаем лет 5 как - с тех пор, как мотивацией кандидатов на собеседовании стало "пройти этот фильтр".
Если вы считаете, что собеседования всегда были экзаменами - но у вас термин "экзамен" не такой, как у автора статьи - то о разнице в терминах следует писать явно. Кому следует? Тому, кто хочет чтобы его всерьёз воспринимали как нормального собеседника (а не как держащего фигу в кармане "ненадёжного рассказчика").
Ну и до кучи туда же:
> Что такое экзамен "как в статье", против чего выступает автор:
Что такое экзамен.
Ох уж это выборочное цитирование.
мне нужно убедиться... Что человек умеет программировать.
Сдаётся мне вы или лукавите или одно из двух хД: Люди умеют программировать, в смысле обхода двоичного дерева, - после 1го курса хорошего универа или после 2 курса среднего универа. Но в большинстве случаев сегодня для того, чтобы быть инженером-программистом этого недостаточно.
Что вам нужно: Убедиться, что человек, способен решать сложные инженерные задачи со свойствами: 1. они разнообразные 2. нечётко сформулированы, 3. с заранее неизвестным множеством решений 4. множество возможных решений не упорядочено "от лучшего к худшему". 5. вы ожидаете, что сотрудник на основе своей квалификации выберет наиболее подходящее в текущем контексте.
Что вы делаете: Вы поддерживаете идею "устраивать экзамен как в статье".
Что такое экзамен "как в статье", против чего выступает автор: решение задачек, со следующими свойствами: 1. задач ограниченное множество (часто заранее известное) - алги, язык, "паттерны" 2. Задачи имеют +/- канонические формулировки; 3. Задачи имеют +/- канонические решения 4. У задач есть канонические "решения лучше" и "решения хуже".
Я был бы только за. Но проблема в том, что это не работает - т.к. одна из необходимых вещей, которые надо вычленить, - "правдивое резюме" или нет. И "в общем случае" это не вычисляется. Только в каждой небольшой специфической области (*) А всерьёз вкладываться в нейросетку (пусть даже дообучение) которая полезна 10_000 человек во всём мире - пока никто не будет. Рынок не тот.
Ну и по сути это заменяют одной из стадий - алгоритмическое интервью. Хотя бы сразу же есть измеримый показатель "кандидат умеет программировать" - пусть и олимпиадно, но хоть как-то.
*) Ну вот в системном программировании, скажем - миддл не должен "писать пятистадийный конвейр вычислительного процессора на FPGA" или "реализовывать SHA/AES/... на CUDA" - это в лучшем случае курсовики студенческие. А вот какое-нибудь "писал USB-драйвер по Windows для общения с криптографическим токеном" - скорее всего правда.
до начала 2024 исполнял роль тимлида. На вакансию "миддл-программист" 1000 откликов. Из них 250 отбираются HR как подходящие для резюме (из них больше половины - вкатыши подделавшие свои резюме так, чтобы пройти HR-фильтр).
250 резюме отсмотреть выше моих сил. Готов я при этом к примерно - ну пусть 100 резюме отсмотреть и провести 20 собеседований.
Вопрос - как 250 резюме (с больше половины обманывающих вкатышей) сократить до 100 резюме / 20 собесов? Собственно "многоуровневые" интервью идут оттуда.
П.С.1 20 собесов - я готов провести нормально разговаривая с кандидатом о том, что релевантно в его опыте. - какие ваши три последние проекта? - какую про самую "крутую" вещь которую вы лично реализовали на этих проектах ("техническую или бизнесовую" - а это вы сами выбираете что рассказать) ....
П.С.2 К стати "реферальный найм", - разумеется если по рефералу "программист приводит программиста", - одно из лучших, пока, решений. Вот пусть тот миддл+ / синьёр в команде экспертизе которого я доверяю и проведёт промежуточный скрининг между мной и HR-ом. Чтобы довести число "очных собеседований" до 20.
Ой чёрт, согласен.
My fault.
Генеративное решение решает другую (возможно эквивалентную) задачу.
Численный ответ тот же. Но без доказательства, что мы решаем ту же задачу такое применение - близко к ошибке.
Решение-1 -- Вася написал алгоритм, который выдаёт каждому студенту число 0 или 1 или 2. (сумма всех 20 чисел == 10).
Решение-2 -- Вася написал алгоритм, который дважды выдаёт каждому студенту число 0 или 1 (сумма всех 40 чисел == 10).
И отдельно требуется доказать, что Решение-2 - применима (т.е. оба сформулированных условия эквивалентны).
А это ещё зачем?
В знаменателе будет стоять ровно такая же формула, как в числителе, только распределение по 19 людям (Upd: и к стати в решении-2 вы ровно это и сделали).
Общая идея такая:
1. Распределим все возможные распределения {1, 2, 0} по 20 людям (так чтобы сумма числе была 20).
2. Посмотрим с какой вероятностью в позиции N_0 будет стоять число "0"
3. Пункт-2 эквивалентен Сnt_19(человек) / Сnt_20(человек). Т.к. мы просто фиксируем Васю на начальном индексе и "хорошими" называем исходы, когда там 0.
3. Васю можно зафиксировать на 1м месте, т.к. из соображений симметрии все места равны (такое обоснование вполне принимается даже на школьных олимпиадах).
Соответственно у вас 2 одинаковых формулы в числителе и в знаменателе.
Cnt_19 / Cnt_20.
Cnt_N = Cnt | n == N
Ох.. сначала хотел написать про частности формулировок, потом появилась эта сентенция.
У вас некоторые задачи (в частности 2 и 3) - плохо сформулированы.
Совет - не примите его за назидание - найдите в ВК группу Константина Кнопа (это автор задач и член жури школьного математического движения) "математические задачи и головоломки" и посмотрите как там формулируются задачи на вероятности, и какие замечания профессионалы выдвигают, когда мы с вами, обыватели, неаккуратно их формулируем.
Вам будет полезно, поверьте.
==============================
1. Главного героя должны звать не Вася, а Петя (это соответствует русскоязычной традиции именования героев задач на вероятности - подобно традиции "Алиса" и "Боб" в англоязычных источниках).
2. В задаче 2 идея и решения основаны на предположении: события "студент решил задачу №_X" и "студент решил задачу №_Y" независимы.
В реальном мире это не так.
Соответственно надо или аккуратно переформулировать задачу.
Или решить задачу для зависимых событий и посмотреть - уйдёт ли условная вероятность "решил задачу №_X при условии решил задачу №_Y" из конечной формулы или нет - с ходу видится, что решение не тривиальное.
3. В задаче 3 сентенция "Вася уже отобран в команду" - лишняя и сбивающая с толку. Намеренное сбивание решающего с толку - допустимо и поощряется в головоломках, но является плохой практикой для задач (если только не стоит какая-то цель столкнуть ученика с парадоксом, мнимым или реальным, - здесь этой цели нет).
Ваши слова бы да в уши сегодняшним вкатунам году так в 2019 (когда всё это заверте.....).
Сегодня, к сожалению, в IT-найме думать некогда.
Надо придумывать всё более и более изобретательные фильтры, чтобы HR смог отфильтровать 1000 CV - до подъёмных инженером 20 собеседований.
Разумеется как всегда в ситуации мошенничества (и дорогих мер от мошенничества) - пострадавшим является рядовой и честный участник рынка IT.
Средняя зарплата в России по итогам Q1,Q2 2005 - 95_000р.
Уже даже в провинциальной "пятёрочке" в Тамбове зарплаты 40 - и хочу напомнить торговля в России одна из самых низкооплачиваемых отраслей.
А люди в обсуждении IT всё ещё ЗП в 30 тысяч рублей вспоминают.
У вас неактуальные данные и "палеолит" - как бы давно закончился.
по умолчанию ваша фраза "подготавливаешь интерфейс" понимается как "берёшь и пишешь новое внешнее API" и именно такая постановка вопроса является проблемой.
Такие договоры скорее всего не рабочие. Насколько я помню даже что-то подобное несколько лет назад откатывалось через суд.
Рад что вы честны. Но "в целом" выход в такой ситуации для людей с улицы один - платить им ровно столько, сколько прибыли они приносят. Ну то есть 0-10_000 в месяц в течении первых 3 месяцев для людей закончивших 6-9 месячные курсы программистов.
1.
Так подождите - мы по кругу ходим.
Когда компании выращивали стажёров "для себя" а стажёры у них сотавались - наставничество было.
Стажёры перестали оставаться - компании перестали работать себе в убыток.
2.
> подгатавливаешь какой то интерфейс, и говоришь джуну "на делай", тэк стак такой то
> Но! Если вам нужно 15 минут чтобы объяснить простую задачу
Я не то, чтобы жаждал поймать вас на несоответствии - но смотрите вы сначала предложили одно, а потом совершенно другое.
Вот 15 минут нужно (даже на простейшую задачу) - чтобы избежать таких, довольно очевидных ошибок непонимания.
Конечно гораздо лучший способ - погрузить что-то уже понимающего в программировании человека в свою предметную область, чтобы он с полу-слова понимал что имеется в виду - и отпускать его на 1-2-5 дней работать. Но это нужен минимально грамотный специалист уже.
В боле-менее сложной предметной области это работать не будет.
Довольно долго объяснять почему.
(Майкрософт по-моему так хотели делать лет 15 что-ли назад - но отказались потому, что это дебилизм).
Ну т.е. есть какая-то минимальная задача, которую разумно экономически разумно выделять. Ей соответствует минимальная квалификация "джуна".
Вы вот говорите - давайте брать людей ещё раньше, нарезать задачи ещё мельче, и оформлять их не в виде объяснения, а прямо в виде интерфейса, давайте посмотрим какие проблемы на этом пути:
1 - если я уже написал интерфейс на маленькую задачу, то времени написать сам код уйдёт меньше, чем передать эту задачу стажёру.
Т.е. после калькуляции - это он должен мне доплачивать за то, что я вместо "за 10 минут написал код" - 15 минут двигал тикеты в джире и ревьювил его код (не говоря о том дискомфорте, который мне это переключение контекстов деятельности доставит).
2 - а я вообще интерфейсы хорошо напишу? Т.е.
- разберём проблему
- прикинем что надо сделать;
- прикинем интерфейсы
- заимплементим реализацию
- впишем в текущую систему.
Без двух последних пунктов интерфейсы могут оказаться не совсем подходящими. А если надо будет что-то в интерфейсах поправить - стажёр же с высокой вероятностью не поймёт.
3 - таких маленьких задачек то густо топусто (вот мы когда студентов берём во-первых такие "выделимые" задачки отдельно для них готовим и иногда даже специально их не делаем, чтобы было чем студентов содержательно занять).
4 - самому написать куда надёжнее чем ревьювить.
...
Это сказки какие-то.
Ключевая проблема в том, что так, как вы это описали - в системном программировании / микроэлектронике почти никогда не работает (возможно в клепании сайтов - работает нормально).
Обычному челу после курсов я объяснять что как и почему надо сделать - буду дольше чем сам писать.
А там где это работает (например со студентами МГУ / МФТИ / ВШЭ) - так за ними очередь стоит из организаций желающих к себе пригласить их на оплачиваемую стажировку "подмастерьями" в вашей терминологии.
Т.е. типовые варианты примерно такие:
- человек уже что-то умеет - ок добо пожаловать на вакансию джуна.
- гарантировано толковый и почти хочет к вам (но мало что пока умеет) - добро пожаловать на вакансию стажёра.
- человек "очень хочет научиться", никакое собеседование пройти не способен и в любой момент как чему-то научится готов свалить - ну ок, готов год проработать за 0 рублей (10 000 рублей / месяц)?
У вас примерно такое видение взаимодействия-вознаграждения или другое?
Ну тогда вы зашли с нерепрезентативным примером. Можем обсудить его - но учтите: он мало относится к текущей проблематике "в целом".
Когда я нанимал - я делал предложение одному самоучке (один из одного человека получил предложение), т.к. у меня было чёткое понимание, что раз человек разобрался самостоятельно - то и с нашими задачами справится хотя и требуется дорасти.
С высокой вероятностью - взял бы и вас (ну т.е. у меня есть понимание, что если человек обучился сам, то он изначально на голову выше средних вкатышей через курсы), но как минимум прособеседовал бы.
Когда я входил в профессию - у меня было чёткое понимание, что трудовая этика такова: "сначала компания тебя дообучает, себе в убыток, а какое-то разумное время на них работаешь не перескакивая через год на ЗП повыше на 20%-50%"
Сегодня такой трудовой этики больше нет, в первую очередь благодаря пропаганде "рационального эгоизма". Ну ок раз так то обе части негласного договора "сначала мы дообучаем джуна себе в убыток потом он работает на нас" не выполняются. Поэтому СРАЗУ выставляем требования такими, чтобы джун обходился нам в не слишком большой убыток. Я не очень понимаю что в этом странного.
Опять же я вашу личную ситуацию не знаю, но когда я входил в профессию я получал меньше водителя в ЦентТелекоме где я работал "инженером-программистом".
По-человечески я вам сочувствую.
Вам обещали "царский путь" в IT (вместо 5 лет института 9-18 месяцев курсов), а оказалось что обманули.
С профессиональной точки у меня к вам два вопроса:
В какой форме обычно вкатуны en masse приходят к мысли "явно обманывать работодателей при приёме на работу"? Это "личное дело каждого" или "подсмотрели идею на форумах" или ближе к концу курсов явно помогают так сделать (в виде советов по "приукрашиванию" резюме)? Насколько сильно и откровенно помогают?
Есть проблема - множество людей, квалификации которых не хватает для существующих вакансий. Как вы предлагаете проблему решать?
(в данный момент "вкатуны" - хотят устроиться на вакансии обманом, где их квалификации не хватает и первый работодатель будет дообучать их за свой счёт - работодателей это не устраивает).
П.С.
Требования к джунам адекватны текущей экономике - рабочая единица, которая почти нарабатывает на свою зарплату (о прибыли речи не идёт, вот честно).
Люди выдают явно учебные проекты за рабочие.
Любой инженер в своей области - на раз их отличит Но для этого нужно время этого инженера - а наша задача разгрузить его от этой текучки.
Натренировать девочку-HR или даже нейросеть - малореально.
Фундаменталку могут делать 1.5 конторы в РФ (ну ладно я с десяток насчитал) - но запись такой конторы в резюме - уже повод поговорить с человеком.
А мелкие конторы - делают что-то очевидно прикладное и с очевидным применением в конкретной внешней системе.
====================================================
> Можете привести пример адекватной, по вашему мнению, задачи для FPGA-мидла?
- ethernet + кусок сетевого стека (потому, что HF + [training / CV / радары )
- криптография с конкретным прикладным применением
- "бабочка" (DFT / Адамар) - с конкретными специфическими требованиями
*) Замечу, что людей уходящих из военки я не увидел (ну просто в начале 2024 перестал собеседовать). Но проглядев с 10к резюме - любой начнёт отличать реальную работу от записанного в резюме курсовика по CV.
Вы плохой Нострадамус.
Текст вакансиий писал я сам, пояснение "что делаем мы" и "что нужно будет делать кандидату" - для начала общения HR-кандидат тоже я.
И да "подсказка" непонятна, поэтому задам два вопроса:
- сколько собеседований вы провели с 2020 года?
- как надо действовать, чтобы не тратить труд квалифицированных специалистов на отсеивание заведомо неподходящих вкатунов?
П.С.
Даже если в заявке почти прямым текстом написано "вкатунов не беспокоить, требования такие что вы не справитесь" - всё равно подаются сотни резюме.
Кажется что вкатуны на текущем рынке рассматривают первую работу (после курсов \ стажировки) - не как работу (где ты получаешь деньги за выполнение задач работодателя), а как "последний этап обучения", - где надо правдами и неправдами получить запись о годе работы в трудовой и свалить уже на "честную вакансию миддла".
Вам как бизнесу очень хочется, чтобы технические специалисты росли вширь.
Т.е. программист, отвечавший раньше за технические решения в каком-то модуле взял техническую ответственность за всю подсистему.
Предиктором того, что человек идёт по этому пути - является большое число горизонтальных связей вокруг того блока, которым он занимается.
На месте менеджера можно установить для себя "некоторые маркеры" - человек растёт таким образом.
Fauxductivity - это хакинг тех самым "маркеров менеджера".
Т.е. ты не только делаешь свою делянку.
Но и распускаешь павлиний хвост - как будто ты отвечаешь за всю крупную подсистему.
Послушайте ну вот в этом вашем комментарии неправильно почти всё. От начала и до конца.
1. Автор имеет право использовать термин в каком-то специфицированном виде (т.е. называть красный цвет "зелёным" нельзя, но называть специальный вид экзамена "экзаменом" - можно) . Автор неявно это сделал "экзамен - в том смысле в котором собес превратили в экзамен в последние 5 лет".
Если вы умнее - вы же и должны написать, что термин использован неверно. А не вводить всех читающих в заблуждение. Когда в статье "экзамен" значит одно, а в вашем комментарии "экзамен" - значит другое.
2. Приходит собесится на синьёра != синьёр (и даже хотя бы миддл).
Это собственно проблематика "вкатуны сломали найм" последних 5 лет, примерно. И вы именно этот момент напрочь игнорируете.
Ещё раз - вы напрочь игнорируете собственно основной лейтмотив статьи: "Найм сломан "вкатунами". Корпорации приспосабливаются. Приспосабливаются из рук вон криво."
(Нанимал - отсобеседовал на позицию "миддл system programmer" человек 20-30 в 2022-2023 годах. Т.е. проблематику 1.5 года назад понимаю вполне хорошо. Отменторил человек 10 за карьеру. На обоих последних местах работы у нас были базовые кафедры в хороших универах - первокуров-третьекуров не просто видел, лично дообучал).
3. Человек обязан уметь програть алгоритмы - это необходимое условие. Но очень, очень, ОЧЕНЬ недостаточное, особенно по последним временам.
Основная проблема вашего подхода - вам нужен инженер (человек, который через 2-3 года станет инженером), а гоняете вы его по алгоритмам. Это сильно-сильно разные области знаний, и даже человеческой деятельности).
В статье говорится про тип плохих экзаменов, появление которых на собеседованиях мы наблюдаем лет 5 как - с тех пор, как мотивацией кандидатов на собеседовании стало "пройти этот фильтр".
Если вы считаете, что собеседования всегда были экзаменами - но у вас термин "экзамен" не такой, как у автора статьи - то о разнице в терминах следует писать явно.
Кому следует? Тому, кто хочет чтобы его всерьёз воспринимали как нормального собеседника (а не как держащего фигу в кармане "ненадёжного рассказчика").
Ну и до кучи туда же:
Ох уж это выборочное цитирование.
Сдаётся мне вы или лукавите или одно из двух хД:
Люди умеют программировать, в смысле обхода двоичного дерева, - после 1го курса хорошего универа или после 2 курса среднего универа. Но в большинстве случаев сегодня для того, чтобы быть инженером-программистом этого недостаточно.
Что вам нужно:
Убедиться, что человек, способен решать сложные инженерные задачи со свойствами:
1. они разнообразные
2. нечётко сформулированы,
3. с заранее неизвестным множеством решений
4. множество возможных решений не упорядочено "от лучшего к худшему".
5. вы ожидаете, что сотрудник на основе своей квалификации выберет наиболее подходящее в текущем контексте.
Что вы делаете:
Вы поддерживаете идею "устраивать экзамен как в статье".
Что такое экзамен "как в статье", против чего выступает автор:
решение задачек, со следующими свойствами:
1. задач ограниченное множество (часто заранее известное) - алги, язык, "паттерны"
2. Задачи имеют +/- канонические формулировки;
3. Задачи имеют +/- канонические решения
4. У задач есть канонические "решения лучше" и "решения хуже".
Я ничего не упустил?
Я был бы только за.
Но проблема в том, что это не работает - т.к. одна из необходимых вещей, которые надо вычленить, - "правдивое резюме" или нет.
И "в общем случае" это не вычисляется. Только в каждой небольшой специфической области (*)
А всерьёз вкладываться в нейросетку (пусть даже дообучение) которая полезна 10_000 человек во всём мире - пока никто не будет. Рынок не тот.
Ну и по сути это заменяют одной из стадий - алгоритмическое интервью.
Хотя бы сразу же есть измеримый показатель "кандидат умеет программировать" - пусть и олимпиадно, но хоть как-то.
*) Ну вот в системном программировании, скажем - миддл не должен "писать пятистадийный конвейр вычислительного процессора на FPGA" или "реализовывать SHA/AES/... на CUDA" - это в лучшем случае курсовики студенческие.
А вот какое-нибудь "писал USB-драйвер по Windows для общения с криптографическим токеном" - скорее всего правда.
до начала 2024 исполнял роль тимлида.
На вакансию "миддл-программист" 1000 откликов. Из них 250 отбираются HR как подходящие для резюме (из них больше половины - вкатыши подделавшие свои резюме так, чтобы пройти HR-фильтр).
250 резюме отсмотреть выше моих сил.
Готов я при этом к примерно - ну пусть 100 резюме отсмотреть и провести 20 собеседований.
Вопрос - как 250 резюме (с больше половины обманывающих вкатышей) сократить до 100 резюме / 20 собесов?
Собственно "многоуровневые" интервью идут оттуда.
П.С.1
20 собесов - я готов провести нормально разговаривая с кандидатом о том, что релевантно в его опыте.
- какие ваши три последние проекта?
- какую про самую "крутую" вещь которую вы лично реализовали на этих проектах ("техническую или бизнесовую" - а это вы сами выбираете что рассказать)
....
П.С.2
К стати "реферальный найм", - разумеется если по рефералу "программист приводит программиста", - одно из лучших, пока, решений.
Вот пусть тот миддл+ / синьёр в команде экспертизе которого я доверяю и проведёт промежуточный скрининг между мной и HR-ом. Чтобы довести число "очных собеседований" до 20.