Во-первых законом тестовые задания не запрещены, и я не знаю откуда вы взяли этот бред. Равно как и не понимаю почему вы назвали его принудительным, вы сами подались на вакансию, не хотите - не надо.
после собеседования сразу нанимать и оценивать работу уже в процессе испытательного срока.
Вы очень плохо себе представляете рынок труда и законы в Европе. Да, внезапно, я живу в Швейцарии и компания внезапно тоже здесь. Нанять "сразу" у вас не выйдет просто потому что notice period здесь обычно от 2-3 месяцев и выше, а не 2 недели как в России. Нельзя просто "взять и нанять".
Далее, я живу в Женеве, население 500к человек, и для Европы это нормальный город. Айти здесь не особо популярно, соответственно 99% соискателей живут в лучшем случае в радиусе 100км, а обычно ещё дальше, у нас был ровно один чувак из непосредственно Женевы. То есть после принятого оффера соискателю придётся натурально переезжать как минимум в другой город, и скорее всего - в другую страну, со всеми вытекающими арендами, счетами, регистрациями и т.д.. В такой ситуации выгнать тряпками на мороз через 3 месяца испытательного просто по-человечески некрасиво, потому и делается полный день на месте чтоб и мы, и кандидат убедились что по крайней мере не бесит друг друга.
Как только оказывается, что надо платить
И вот на этот счёт - я там выше написал что жилье и проезд оплачен. И я имел ввиду не метро, а самолёт из условного Мадрида и отель в Женеве. Это стоит денег, поверьте.
В плане? Это собеседование. Проезд/жилье оплачиваем если соискатель из другого города/страны. Проект к основному бизнесу не относится никак вообще, его результаты мы тоже кроме оценки соискателя использовать не будем, это отдельно прописано в той кипе бумаг которую подписывают перед собесом. Вы что, платите деньги за собеседование? Я б прошёл в таком разе.
Проект на день с 9 до 5, это он-сайт интервью (дорогу/проживание покрываем), закрытие минут 30-40 включая демо, пару вопросов по не вошедшим тикетам типа "а как бы сделали", ну и просто за жизнь поговорить. Всё синхронно, можно общаться с командой, задавать вопросы и прочее. По сути пытаемся приблизить тест к жизни (удалёнку не практикуем, только офис). Потому же и задание идёт частями, продукт всё-таки не сразу имеет все возможные тз на весь цикл, сначала mvp, дальше по ситуации.
Плюс очень большой момент с выдачей по частям это chatgpt, он довольно быстро теряет контекст задачи и начинает генерить бред. У нас уже была пара chatgpt-программистов, такое себе, код красивый и абсолютно бессмысленный.
Самим заданием не поделюсь, по понятным причинам. Подробнее - сначала мы просим сделать совсем примитивную фигню типа "нужно приложение которое умеет Х" (например страница форума с кнопкой "ответ" и записью в базу, без регистрации и смс). На это идёт 2-3 часа чтоб человек успел взять кофе, оттупить и вообще.
Дальше идут доп "тикеты" типа "прикрути регистрацию", "прикрути редактирование", "загрузка файлов", "деплой" и прочее. И к ним идёт условие что "приложение должно жить", то есть никаких вайпов базы и прочего. Тикеты бывают разной сложности, от "напиши докерфайл" до "сделай биллинг с моками" (утрирую, биллинга нет).
На тест идёт целый день, с 9 до 5 с обедом. До этого мини-разговор по видео и онлайн-тест (примитивный)
Статья хорошая, правда для нашего интервью косяков не нашёл. Мы делаем мини-проект из двух частей, которые симулируют жизненный цикл проекта. Первая часть mvp на пару часов, дальше мини-тикеты на его улучшение. Такой структурой убиваем сразу пачку зайцев: chatgpt теряет контекст (пользоваться можно всем) и кандидаты без головы отлетают; видим как человек адаптируется к изменениям; задачи сменяются и человеку интересно; можно оценивать сколько доп тикетов сделано и их уровень
Да, отказаться можно было. Но по сути тогда штудент теряет полгода (вернее год, когда курс пойдёт на новый цикл). Да, если это курс по выбору (коих было 60% из кредитов) - можно добрать чем-то ещё. Но это все равно потеря времени, а 3/4 неместные, общага стоит прилично, квартира еще больше, мама-папа скажут "атата". А если это обязательный (для получения major/minor был список на 120 кредитов, где-то 40 обязательно) - теряешь год железно, плюс кафедра теряет выпуск, это нехорошо. Я могу расписать как там отстояли (от слова отстой) дела с финансами если интересно, но будет грустно.
Вообще для обязательных курсов это всё надо было решать тестом при поступлении, но его обычно смотрят не те люди которые потому учат этих самых студентов.
Вот кстати да. Я учился в двух разных вузах в разных странах, у нас по фиксированной программе и в Финляндии по гибкой. И в обоих несколько раз вел занятия.
И уровень студентов в Финляндии был просто ппц. Грубо говоря можно было в любой момент взять любой курс, наплевав на все рекомендации что именно нужно знать, в итоге вместо distributed automation system design я напополам с другим чуваком объяснял студентам чем объект от класса отличается. Не, там было написано что нужно "уметь программировать", но кто ж читает описание курса, правда?
Так что при всех минусах фиксированной программы она таки имхо лучше гибкой. А то получается 30 потерянных детей на курсе которые вообще не врубают что они тут делают и зачем, и выбирают курсы потому что "название прикольное"
Там дело не в самом сторе, а именно в том что вокруг него (те самые проценты в том числе). Гуглоплей это не только листинг приложений (амазон и самнунг тоже имеют магазины), это ещё и тонна подвязок на IAP, всякие варнинги от ОС при установке из других приложений и прочее, не говоря уж о том что гуглоплей стоит "по умолчанию" и без него (вернее без play services) система начинает работать как корявое шапито.
Как раз интернетик листать она скорее всего и перегреется, а торренты норм. Попробуйте на rpi запустить какую графану крутить мониторинги на экране - перегреется только в путь, а графана это далеко не худший случай интернета
С одной стороны вы правы. Но посмотрите на это под другим углом: вы живёте в небольшом городе где есть только супермаркеты магнит и пятёрка; вы построили птицефабрику, выращиваете курей, решили помимо мелкого магазина на фабрике продавать кур через сети. Приходите в магнит, вам говорят комиссия 30%. И пятёрка аналогично. Да, безусловно они в своём праве, у них кассиры, помещение и прочее, не нравится - продавайте через свой магазин возле фабрики. Но вам не кажется что отдавать за это треть своих доходов (именно доходов, не прибыли, куры жрать не перестали) это немного перебор? Дикий капитализм это нифига не весело
Я часто ловлю себя на том, что переусердствую с проектированием, когда нахожусь в «потоке»
Потому что проектированием нужно заниматься до этого. Я когда нахожусь "в потоке" - просто механически пишу код как робот по заранее придуманной модели, а когда нужно проектировать и вообще думать мозгом - ни о каком "потоке" и речи быть не может.
Про быстродействие не согласен, пользователю будет лучше ждать в два, а то и в три раза меньше загрузки ответа, например, от сервера
Вот это крайне спорная тема. Для вебни есть тысячи других вещей которые могут тормознуть запрос, самые простые - отсутствие cdn и большое расстояние, ну и просто хреновое соединение. Плюс всякие облачные базы тоже докинут тормозов уже на бэке. Вполне обычная ситуация когда на крестах нужно будет 10мс машинного времени, на пистоне 100мс, а пинг от юзера до бэка 500мс
Я может фигню скажу, но кмк намного лучше себя показывают специализированные сопроцессоры под конкретные задачи. Тот же gpu например, всякие сопроцы для шифрования и прочее. Вместо массива однородных процессоров которые делают все но средне сделать разные которые умеют делать что-то одно но хорошо
самой популярной страной среди российских специалистов стала Франция
Странно. Франция это мягко говоря не it-центр мира. В Дублин или Цюрих/Базель - да, в Польшу тоже едут, ну или там в Испанию чисто греться. Но Франция это странный выбор
Я джунам именно про цикл рассказывал, туда очень органично легли всякие sleep(0), опасность блокировки цикла cpu-bound задачами, очереди, порядок выполнения и прочее. Но я питонист, в питоне судя по другим комментам проще чем в котлине, по умолчанию loop только один.
Тогда не проще ли думать/объяснять корутины именно в контексте этих циклов? Ну, условно что join выходит из контекста задачи обратно у цикл, и задача не пойдёт в выполнение (будет пропущена в цикле) до тех пор пока не завершится ожидание помеченной join корутины. И ради иллюстраций взять обычную ladder diagram.
Кмк это намного проще для понимания чем "измерения" или "некоторое время на запуск"
Я не андроид-разработчик, но разве корутины в котлине не следуют обычному cooperative multitasking, когда грубо говоря есть системный цикл который по очереди проходит по всем scheduled задачам (корутинам) и выполняет их насколько это возможно (если нет io, если прошёл delay, если завершилась отрисовка и т.д.)? Ну и соответственно пока не произойдёт переключение контекста (выход из контекста текущей задачи в системный цикл) - корутина не запустится.
QA должны проверять что критерии проверки сформулированы и проверка проведена-реализуема
Кмк это зависит от того как построен процесс. По моему опыту, гораздо лучше когда QA сам придумывает сценарии и обсуждает их с разработкой (что можно автоматизировать, что нельзя, что опасно и т.д.). По большей части это связано с тем что во время работы над задачей мыслительный процесс разработчика, опять же по моим наблюдениям, сильно отличается от QA: разработчик больше думает со стороны создания, а QA - со стороны возможных косяков. Понятно что разработчик должен и про косяки думать, но в общем случае у QA это получается лучше чисто ввиду разделения труда. Это особенно заметно если бэк и фронт разделены (не full stack), некоторые кейсы могут казаться ппц важными разработчику но для QA это будет откровенно corner case и наоборот.
Во-первых законом тестовые задания не запрещены, и я не знаю откуда вы взяли этот бред. Равно как и не понимаю почему вы назвали его принудительным, вы сами подались на вакансию, не хотите - не надо.
Вы очень плохо себе представляете рынок труда и законы в Европе. Да, внезапно, я живу в Швейцарии и компания внезапно тоже здесь. Нанять "сразу" у вас не выйдет просто потому что notice period здесь обычно от 2-3 месяцев и выше, а не 2 недели как в России. Нельзя просто "взять и нанять".
Далее, я живу в Женеве, население 500к человек, и для Европы это нормальный город. Айти здесь не особо популярно, соответственно 99% соискателей живут в лучшем случае в радиусе 100км, а обычно ещё дальше, у нас был ровно один чувак из непосредственно Женевы. То есть после принятого оффера соискателю придётся натурально переезжать как минимум в другой город, и скорее всего - в другую страну, со всеми вытекающими арендами, счетами, регистрациями и т.д.. В такой ситуации выгнать тряпками на мороз через 3 месяца испытательного просто по-человечески некрасиво, потому и делается полный день на месте чтоб и мы, и кандидат убедились что по крайней мере не бесит друг друга.
И вот на этот счёт - я там выше написал что жилье и проезд оплачен. И я имел ввиду не метро, а самолёт из условного Мадрида и отель в Женеве. Это стоит денег, поверьте.
В плане? Это собеседование. Проезд/жилье оплачиваем если соискатель из другого города/страны. Проект к основному бизнесу не относится никак вообще, его результаты мы тоже кроме оценки соискателя использовать не будем, это отдельно прописано в той кипе бумаг которую подписывают перед собесом. Вы что, платите деньги за собеседование? Я б прошёл в таком разе.
Проект на день с 9 до 5, это он-сайт интервью (дорогу/проживание покрываем), закрытие минут 30-40 включая демо, пару вопросов по не вошедшим тикетам типа "а как бы сделали", ну и просто за жизнь поговорить. Всё синхронно, можно общаться с командой, задавать вопросы и прочее. По сути пытаемся приблизить тест к жизни (удалёнку не практикуем, только офис). Потому же и задание идёт частями, продукт всё-таки не сразу имеет все возможные тз на весь цикл, сначала mvp, дальше по ситуации.
Плюс очень большой момент с выдачей по частям это chatgpt, он довольно быстро теряет контекст задачи и начинает генерить бред. У нас уже была пара chatgpt-программистов, такое себе, код красивый и абсолютно бессмысленный.
Самим заданием не поделюсь, по понятным причинам. Подробнее - сначала мы просим сделать совсем примитивную фигню типа "нужно приложение которое умеет Х" (например страница форума с кнопкой "ответ" и записью в базу, без регистрации и смс). На это идёт 2-3 часа чтоб человек успел взять кофе, оттупить и вообще.
Дальше идут доп "тикеты" типа "прикрути регистрацию", "прикрути редактирование", "загрузка файлов", "деплой" и прочее. И к ним идёт условие что "приложение должно жить", то есть никаких вайпов базы и прочего. Тикеты бывают разной сложности, от "напиши докерфайл" до "сделай биллинг с моками" (утрирую, биллинга нет).
На тест идёт целый день, с 9 до 5 с обедом. До этого мини-разговор по видео и онлайн-тест (примитивный)
Статья хорошая, правда для нашего интервью косяков не нашёл. Мы делаем мини-проект из двух частей, которые симулируют жизненный цикл проекта. Первая часть mvp на пару часов, дальше мини-тикеты на его улучшение. Такой структурой убиваем сразу пачку зайцев: chatgpt теряет контекст (пользоваться можно всем) и кандидаты без головы отлетают; видим как человек адаптируется к изменениям; задачи сменяются и человеку интересно; можно оценивать сколько доп тикетов сделано и их уровень
Да, отказаться можно было. Но по сути тогда штудент теряет полгода (вернее год, когда курс пойдёт на новый цикл). Да, если это курс по выбору (коих было 60% из кредитов) - можно добрать чем-то ещё. Но это все равно потеря времени, а 3/4 неместные, общага стоит прилично, квартира еще больше, мама-папа скажут "атата". А если это обязательный (для получения major/minor был список на 120 кредитов, где-то 40 обязательно) - теряешь год железно, плюс кафедра теряет выпуск, это нехорошо. Я могу расписать как там отстояли (от слова отстой) дела с финансами если интересно, но будет грустно.
Вообще для обязательных курсов это всё надо было решать тестом при поступлении, но его обычно смотрят не те люди которые потому учат этих самых студентов.
Вот кстати да. Я учился в двух разных вузах в разных странах, у нас по фиксированной программе и в Финляндии по гибкой. И в обоих несколько раз вел занятия.
И уровень студентов в Финляндии был просто ппц. Грубо говоря можно было в любой момент взять любой курс, наплевав на все рекомендации что именно нужно знать, в итоге вместо distributed automation system design я напополам с другим чуваком объяснял студентам чем объект от класса отличается. Не, там было написано что нужно "уметь программировать", но кто ж читает описание курса, правда?
Так что при всех минусах фиксированной программы она таки имхо лучше гибкой. А то получается 30 потерянных детей на курсе которые вообще не врубают что они тут делают и зачем, и выбирают курсы потому что "название прикольное"
Там дело не в самом сторе, а именно в том что вокруг него (те самые проценты в том числе). Гуглоплей это не только листинг приложений (амазон и самнунг тоже имеют магазины), это ещё и тонна подвязок на IAP, всякие варнинги от ОС при установке из других приложений и прочее, не говоря уж о том что гуглоплей стоит "по умолчанию" и без него (вернее без play services) система начинает работать как корявое шапито.
Как раз интернетик листать она скорее всего и перегреется, а торренты норм. Попробуйте на rpi запустить какую графану крутить мониторинги на экране - перегреется только в путь, а графана это далеко не худший случай интернета
С одной стороны вы правы. Но посмотрите на это под другим углом: вы живёте в небольшом городе где есть только супермаркеты магнит и пятёрка; вы построили птицефабрику, выращиваете курей, решили помимо мелкого магазина на фабрике продавать кур через сети. Приходите в магнит, вам говорят комиссия 30%. И пятёрка аналогично. Да, безусловно они в своём праве, у них кассиры, помещение и прочее, не нравится - продавайте через свой магазин возле фабрики. Но вам не кажется что отдавать за это треть своих доходов (именно доходов, не прибыли, куры жрать не перестали) это немного перебор? Дикий капитализм это нифига не весело
Потому что проектированием нужно заниматься до этого. Я когда нахожусь "в потоке" - просто механически пишу код как робот по заранее придуманной модели, а когда нужно проектировать и вообще думать мозгом - ни о каком "потоке" и речи быть не может.
Вот это крайне спорная тема. Для вебни есть тысячи других вещей которые могут тормознуть запрос, самые простые - отсутствие cdn и большое расстояние, ну и просто хреновое соединение. Плюс всякие облачные базы тоже докинут тормозов уже на бэке. Вполне обычная ситуация когда на крестах нужно будет 10мс машинного времени, на пистоне 100мс, а пинг от юзера до бэка 500мс
Я может фигню скажу, но кмк намного лучше себя показывают специализированные сопроцессоры под конкретные задачи. Тот же gpu например, всякие сопроцы для шифрования и прочее. Вместо массива однородных процессоров которые делают все но средне сделать разные которые умеют делать что-то одно но хорошо
Странно. Франция это мягко говоря не it-центр мира. В Дублин или Цюрих/Базель - да, в Польшу тоже едут, ну или там в Испанию чисто греться. Но Франция это странный выбор
И свой цикл есть у каждого потока и пул задач между ними общий?
Я джунам именно про цикл рассказывал, туда очень органично легли всякие sleep(0), опасность блокировки цикла cpu-bound задачами, очереди, порядок выполнения и прочее. Но я питонист, в питоне судя по другим комментам проще чем в котлине, по умолчанию loop только один.
Тогда не проще ли думать/объяснять корутины именно в контексте этих циклов? Ну, условно что join выходит из контекста задачи обратно у цикл, и задача не пойдёт в выполнение (будет пропущена в цикле) до тех пор пока не завершится ожидание помеченной join корутины. И ради иллюстраций взять обычную ladder diagram.
Кмк это намного проще для понимания чем "измерения" или "некоторое время на запуск"
Я не андроид-разработчик, но разве корутины в котлине не следуют обычному cooperative multitasking, когда грубо говоря есть системный цикл который по очереди проходит по всем scheduled задачам (корутинам) и выполняет их насколько это возможно (если нет io, если прошёл delay, если завершилась отрисовка и т.д.)? Ну и соответственно пока не произойдёт переключение контекста (выход из контекста текущей задачи в системный цикл) - корутина не запустится.
Кмк это зависит от того как построен процесс. По моему опыту, гораздо лучше когда QA сам придумывает сценарии и обсуждает их с разработкой (что можно автоматизировать, что нельзя, что опасно и т.д.). По большей части это связано с тем что во время работы над задачей мыслительный процесс разработчика, опять же по моим наблюдениям, сильно отличается от QA: разработчик больше думает со стороны создания, а QA - со стороны возможных косяков. Понятно что разработчик должен и про косяки думать, но в общем случае у QA это получается лучше чисто ввиду разделения труда. Это особенно заметно если бэк и фронт разделены (не full stack), некоторые кейсы могут казаться ппц важными разработчику но для QA это будет откровенно corner case и наоборот.
Так вот зачем это дурацкое расположение зарядного порта, чтоб наклонять удобно было, никогда б не подумал
/sarcasm