Спасибо большое, интересное собеседование и хорошего уровня кандидат))
@macgrigory11 ай бұрын
Работал с Олегом, многому меня научил, буду всегда благодарен ему =)
@oo_ilin11 ай бұрын
О, какие люди ) Привет !!!
@existanz11 ай бұрын
Дима хорош. Даже в тех вопросах, которые не знал наверняка, не тушевался, думал, анализировал. И то что он размышлял над задачей вслух очень положительно сказалось на смотрибельность самого интервью. В последней задаче есть классическая ошибка новичков - ренж по слайсам идёт по индексу, элементу. Если указать только одну переменную она будет содержать индекс.
@Kondratyevv11 ай бұрын
"В последней задаче есть классическая ошибка новичков - ренж по слайсам идёт по индексу, элементу. " - это вообще не критично. Из пальца высосано. IDE подсветит и со временем запомнит.
@existanz11 ай бұрын
@@Kondratyevv "Из пальца высосано." - заведомо грубая фраза, которую используют когда собеседник делает ложные выводы, основанные на неверных данных или не обоснованные вовсе. Какое именно моё утверждение является ложным? В данном случае идешка действительно подсветит, но если гофер будет ранжироваться по интам, то неизвестно в какой момент он неприятно удивится.
@dragonwave265211 ай бұрын
Пожалуйста отправьте мой заказ с озона, уже месяц жду... Он даже со склада не вышел
@БорисКрасных-ц8н2 ай бұрын
Так там потому что deadlock: all goroutines are sleeping, вот заказ и завис на складе намертво.
@hentan49126 ай бұрын
Интересное интервью, спасибо) Олегу респект за то, что не просто говорит правильно или нет, а еще подсказывает правильное решение)
@_c_est_la_vie42778 ай бұрын
Ozon набор на route256: решите 8 около олимпиадных задач, чтоб попасть к нам на обучение Собес на джуна: что значит неизменяемый тип данных....
@ChernovSanek5 ай бұрын
я тоже с этого поугарал)))
@psevdochlen65445 ай бұрын
У меня уже теория, что это специально делается для раздувания хайпа, мол смотрите как легко все И чтоб потом анальникам меньше платить
@Александр-б1б6ш5 ай бұрын
А ты прошел на отборе?
@oo_ilin2 ай бұрын
В Route256 не все так просто. В первую очередь не забывайте что это бесплатная школа и у нее другая цель. Цель отобрать потенциальных кандидатов. Так что там смотрится не только решение задач, но и резюме и опыт. Так же есть входное собеседование. Если вы не прошли возможно вы не подошли по какому-то из критериев отбора кандидатов. Основная цель Route256 обучить и нанять.
@AAAaaa-i9p3o3 ай бұрын
Интересно было посмотреть. Спасибо!
@ev1lyas11 ай бұрын
Полезное видео, спасибо большое!
@ИгорьКозлов-о8т7 ай бұрын
и кандидат и задачи кайф, коммент для продвижения !)
@АлександрВасильев-в1е10 ай бұрын
Хороший собес, лайк!
@Albert-nc1rj11 ай бұрын
Спасибо Вам большое!
@oo_ilin11 ай бұрын
И Вам спасибо 🤗
@qbee110 ай бұрын
мб я путаю, но в задании со строками при range гошка сама же в руны преобразовывает, а чтобы идти по байтам надо Итовый форик, и тащить по индексу?
@RomanMalah-e8w10 ай бұрын
Ты прав, бро
@MrKentoNionАй бұрын
Какой смысл этого собеседования если вы не берёте джунов, у вас только мидлы 3+ года
@Erdaulet100Ай бұрын
Мне одному показалось или чувак подсматривал и гугли быстро ответы?)
@ПавелБачурин-д3к10 ай бұрын
В задаче про мердж каналов мы возвращаем закрытый канал. Что нам потом делать с закрытыми каналом? На 7 строчке мы всегда будем виснуть, потому что из этого канала никто не читает. Примерно код должен выглядеть так; out := make(chan int) defer close(out) go func() { // Код записи из всех каналов в out } return out
@moneybridge62355 ай бұрын
В последнем задании канал должен быть буферизированным на len(cs), нет? Иначе горутины просто не смогут записать значения туда, а вейтгруппа никогда не закончит ожидание - это deadlock.
@Ярослав-е2ш2 ай бұрын
Там синтаксис параметров ...
@enj0yer766 ай бұрын
Че то в комментах никто не отметил кек про Ass сместо Add 😂
@AnimeEpicMoments-cj9kcАй бұрын
Какое-то странно легкое собеседование, у меня не так было
@user-igor-199211 ай бұрын
1:00:30 на 14 строке, defer же выполняется перед return, сработает блокировка, затем разблокировка, и только потом в return обращение к мапе. Получается, что нужно было делать через промежуточную переменную?
@x-streami11 ай бұрын
если бы defer выполнялся до return, то в go не было бы возможности в defer переопределять результаты возврата, как например тут: func foo() (result string) { defer func() { result = "Change World" // change value at the very last moment }() return "Hello World" }
@Ярослав-е2ш2 ай бұрын
@@x-streamiдефер выполняется после ретерна, но перед возвратом результата функции, поэтому мы можем так менять
@oo_ilin2 ай бұрын
@@Ярослав-е2ш я в принципе это и написал )
@gerojstalnoj970810 ай бұрын
Чувак пол собеса палил ответы с экрана🤣 Топ🤘
@Maria-xd7xk6 ай бұрын
Точно Я и не замечала, а действительно подсматривает
@bubbletubbe3 ай бұрын
он сказал вытесняющая многозадачность и его не поправили 🤨🤌 .. там кооперативная многозадачность
@Ярослав-е2ш2 ай бұрын
А разве не совместная?
@Ярослав-е2ш2 ай бұрын
Тоесть вытесняющая многозадачность на этапе компиляции и, если не ошибаюсь, возможность явно отдать ресурс другой горутине с помощью runtime.Gosched() ?
@bubbletubbe2 ай бұрын
@@Ярослав-е2ш runtime.Gosched() это пример кооперативной многозадачности ) т.к. горутина сама решает в какой момент отдать управление, в вытесняющей шедуллер может остановить поток когда посчитает нужным
@kuzuru2 ай бұрын
@@Ярослав-е2ш Нет, в Go у нас неявная кооперативность. Горутина уступает место другим при обращении к вводу-выводу, каналам, syscall(-ам) - вызовам ОС, но при этом также может уступить место при вызове любой функции. Про runtime.Gosched() - это лишь явный способ переключить планировщик на другую горутину, но её использование в основном и не требуется. Это в принципе не вписывается в парадигму кооперативности в Go
@АлексейКанаев-р8хАй бұрын
Кооперативная многозадачность была в старых версиях языка
@gregory._8 ай бұрын
1:06:44
@ИльяЖиленков-ь6ы9 ай бұрын
в вопросе с дефером где 123 и 456 вообще то в исходном задании выводится 456 а не 123
@Periskis219 ай бұрын
Интервюер мямлит, вебки закрывают код
@CultureofSpeech4 ай бұрын
В русском Языке нет слов "слайс" и "грейд" , не так ли ⁉️ Неужели Так лень использовать известные словрогве слова?
@MightyMindsDev3 ай бұрын
Golang не русская технология, как и it в целом Привыкаем к англицизмам или занимаемся более простыми занятиями
@ПавелБачурин-д3к10 ай бұрын
Чувак вообще не понимает основы программирования и компьютер сайнс, какой ему junior ему бы ещё годик поучиться
@IvanFedulov6 ай бұрын
дружище, давай без пустых заявлений. аргументированно есть что написать? побольше конкретики - всем джунам поможешь.
@davidmamunc72746 ай бұрын
Мне тоже интересно что же должен понимать джун ? Конкретно можешь аргументировать свой комментарий?
@Maria-xd7xk6 ай бұрын
🤡
@timur.piftaev5 ай бұрын
@@IvanFedulovБро, привет. Я думаю он говорит про западающие моменты из первой части интервью: на вопрос с рунами чувак немного запутался - не видит разницы между руной и ASCII символом, абстрактно рассуждает. Когда ответ чувака, который шарит за CS на уверенном ответит - что для компьютера любой символ это число под капотом. И Go очень упростила жизнь разработчикам - под ASCII символы есть byte(аналог char в C), а для эмодзи и других языков кроме английского - UNICODE(rune). Также можно сказать про виденье кандидатом как работает строка, слайс, указатель. Кандидат просто абстрактно размышляет над тем, как это все устроено, например, массив это какая то область памятиии…. где ниче не изменяется….. Вместо уверенных ответов - массив это выделенная область памяти, в следующей ячейки памяти может не быть места, поэтому массив увеличить нельзя. Слайс же отличается тем, что за ним точно есть выделенное место, ограниченное capacity. Если закончится и capacity, то гошка выделит тебе новую область памяти с увеличенным на 2 capacity.
@timur.piftaev5 ай бұрын
@@davidmamunc7274привет, ответил на твой вопрос))
@RGsr2345 ай бұрын
1:00:00 А почему нельзя было в цикле горутину заблокировать?
@oo_ilin2 ай бұрын
Не совсем понял про какую горутину идет речь. В задаче была структура в которой было не безопасное обращение к мапе. Именно это мы и решали. Если делать мьютекс в цикле, то это не верно с точки зрения дизайна программы, так как нам прийдется каждый раз использую такую структуру помнить что любая работа с ней требует мьютекса. Соответственно поэтому мьютекс добавлен в саму структуру