Mock-собеседование по Go (Junior) от Team Lead из Ozon

  Рет қаралды 28,743

it-interview

it-interview

Күн бұрын

Пікірлер: 61
@ДаядУкар
@ДаядУкар 9 ай бұрын
Николай II на собеседовании, вот чудеса!
@dragonwave2652
@dragonwave2652 10 ай бұрын
Пожалуйста отправьте мой заказ с озона, уже месяц жду... Он даже со склада не вышел
@БорисКрасных-ц8н
@БорисКрасных-ц8н Ай бұрын
Так там потому что deadlock: all goroutines are sleeping, вот заказ и завис на складе намертво.
@funnyduck6326
@funnyduck6326 9 ай бұрын
Спасибо большое, интересное собеседование и хорошего уровня кандидат))
@existanz
@existanz 10 ай бұрын
Дима хорош. Даже в тех вопросах, которые не знал наверняка, не тушевался, думал, анализировал. И то что он размышлял над задачей вслух очень положительно сказалось на смотрибельность самого интервью. В последней задаче есть классическая ошибка новичков - ренж по слайсам идёт по индексу, элементу. Если указать только одну переменную она будет содержать индекс.
@Kondratyevv
@Kondratyevv 10 ай бұрын
"В последней задаче есть классическая ошибка новичков - ренж по слайсам идёт по индексу, элементу. " - это вообще не критично. Из пальца высосано. IDE подсветит и со временем запомнит.
@existanz
@existanz 10 ай бұрын
@@Kondratyevv "Из пальца высосано." - заведомо грубая фраза, которую используют когда собеседник делает ложные выводы, основанные на неверных данных или не обоснованные вовсе. Какое именно моё утверждение является ложным? В данном случае идешка действительно подсветит, но если гофер будет ранжироваться по интам, то неизвестно в какой момент он неприятно удивится.
@macgrigory
@macgrigory 10 ай бұрын
Работал с Олегом, многому меня научил, буду всегда благодарен ему =)
@oo_ilin
@oo_ilin 10 ай бұрын
О, какие люди ) Привет !!!
@hentan4912
@hentan4912 5 ай бұрын
Интересное интервью, спасибо) Олегу респект за то, что не просто говорит правильно или нет, а еще подсказывает правильное решение)
@AAAaaa-i9p3o
@AAAaaa-i9p3o 2 ай бұрын
Интересно было посмотреть. Спасибо!
@_c_est_la_vie4277
@_c_est_la_vie4277 6 ай бұрын
Ozon набор на route256: решите 8 около олимпиадных задач, чтоб попасть к нам на обучение Собес на джуна: что значит неизменяемый тип данных....
@ChernovSanek
@ChernovSanek 4 ай бұрын
я тоже с этого поугарал)))
@psevdochlen6544
@psevdochlen6544 4 ай бұрын
У меня уже теория, что это специально делается для раздувания хайпа, мол смотрите как легко все И чтоб потом анальникам меньше платить
@Александр-б1б6ш
@Александр-б1б6ш 4 ай бұрын
А ты прошел на отборе?
@oo_ilin
@oo_ilin 24 күн бұрын
В Route256 не все так просто. В первую очередь не забывайте что это бесплатная школа и у нее другая цель. Цель отобрать потенциальных кандидатов. Так что там смотрится не только решение задач, но и резюме и опыт. Так же есть входное собеседование. Если вы не прошли возможно вы не подошли по какому-то из критериев отбора кандидатов. Основная цель Route256 обучить и нанять.
@qbee1
@qbee1 9 ай бұрын
мб я путаю, но в задании со строками при range гошка сама же в руны преобразовывает, а чтобы идти по байтам надо Итовый форик, и тащить по индексу?
@RomanMalah-e8w
@RomanMalah-e8w 9 ай бұрын
Ты прав, бро
@АлександрВасильев-в1е
@АлександрВасильев-в1е 9 ай бұрын
Хороший собес, лайк!
@Albert-nc1rj
@Albert-nc1rj 10 ай бұрын
Спасибо Вам большое!
@oo_ilin
@oo_ilin 10 ай бұрын
И Вам спасибо 🤗
@ev1lyas
@ev1lyas 9 ай бұрын
Полезное видео, спасибо большое!
@ИгорьКозлов-о8т
@ИгорьКозлов-о8т 6 ай бұрын
и кандидат и задачи кайф, коммент для продвижения !)
@ПавелБачурин-д3к
@ПавелБачурин-д3к 8 ай бұрын
В задаче про мердж каналов мы возвращаем закрытый канал. Что нам потом делать с закрытыми каналом? На 7 строчке мы всегда будем виснуть, потому что из этого канала никто не читает. Примерно код должен выглядеть так; out := make(chan int) defer close(out) go func() { // Код записи из всех каналов в out } return out
@moneybridge6235
@moneybridge6235 4 ай бұрын
В последнем задании канал должен быть буферизированным на len(cs), нет? Иначе горутины просто не смогут записать значения туда, а вейтгруппа никогда не закончит ожидание - это deadlock.
@Ярослав-е2ш
@Ярослав-е2ш Ай бұрын
Там синтаксис параметров ...
@AnimeEpicMoments-cj9kc
@AnimeEpicMoments-cj9kc 7 күн бұрын
Какое-то странно легкое собеседование, у меня не так было
@MrKentoNion
@MrKentoNion 9 күн бұрын
Какой смысл этого собеседования если вы не берёте джунов, у вас только мидлы 3+ года
@user-igor-1992
@user-igor-1992 9 ай бұрын
1:00:30 на 14 строке, defer же выполняется перед return, сработает блокировка, затем разблокировка, и только потом в return обращение к мапе. Получается, что нужно было делать через промежуточную переменную?
@x-streami
@x-streami 9 ай бұрын
если бы 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_ilin
@oo_ilin 24 күн бұрын
@@Ярослав-е2ш я в принципе это и написал )
@enj0yer76
@enj0yer76 5 ай бұрын
Че то в комментах никто не отметил кек про Ass сместо Add 😂
@bubbletubbe
@bubbletubbe Ай бұрын
он сказал вытесняющая многозадачность и его не поправили 🤨🤌 .. там кооперативная многозадачность
@Ярослав-е2ш
@Ярослав-е2ш Ай бұрын
А разве не совместная?
@Ярослав-е2ш
@Ярослав-е2ш Ай бұрын
Тоесть вытесняющая многозадачность на этапе компиляции и, если не ошибаюсь, возможность явно отдать ресурс другой горутине с помощью runtime.Gosched() ?
@bubbletubbe
@bubbletubbe Ай бұрын
@@Ярослав-е2ш runtime.Gosched() это пример кооперативной многозадачности ) т.к. горутина сама решает в какой момент отдать управление, в вытесняющей шедуллер может остановить поток когда посчитает нужным
@kuzuru
@kuzuru 19 күн бұрын
@@Ярослав-е2ш ​ Нет, в Go у нас неявная кооперативность. Горутина уступает место другим при обращении к вводу-выводу, каналам, syscall(-ам) - вызовам ОС, но при этом также может уступить место при вызове любой функции. Про runtime.Gosched() - это лишь явный способ переключить планировщик на другую горутину, но её использование в основном и не требуется. Это в принципе не вписывается в парадигму кооперативности в Go
@АлексейКанаев-р8х
@АлексейКанаев-р8х 9 күн бұрын
Кооперативная многозадачность была в старых версиях языка
@gerojstalnoj9708
@gerojstalnoj9708 9 ай бұрын
Чувак пол собеса палил ответы с экрана🤣 Топ🤘
@Maria-xd7xk
@Maria-xd7xk 5 ай бұрын
Точно Я и не замечала, а действительно подсматривает
@gregory._
@gregory._ 7 ай бұрын
1:06:44
@ИльяЖиленков-ь6ы
@ИльяЖиленков-ь6ы 7 ай бұрын
в вопросе с дефером где 123 и 456 вообще то в исходном задании выводится 456 а не 123
@Periskis21
@Periskis21 7 ай бұрын
Интервюер мямлит, вебки закрывают код
@CultureofSpeech
@CultureofSpeech 2 ай бұрын
В русском Языке нет слов "слайс" и "грейд" , не так ли ⁉️ Неужели Так лень использовать известные словрогве слова?
@MightyMindsDev
@MightyMindsDev 2 ай бұрын
Golang не русская технология, как и it в целом Привыкаем к англицизмам или занимаемся более простыми занятиями
@RGsr234
@RGsr234 3 ай бұрын
1:00:00 А почему нельзя было в цикле горутину заблокировать?
@oo_ilin
@oo_ilin 24 күн бұрын
Не совсем понял про какую горутину идет речь. В задаче была структура в которой было не безопасное обращение к мапе. Именно это мы и решали. Если делать мьютекс в цикле, то это не верно с точки зрения дизайна программы, так как нам прийдется каждый раз использую такую структуру помнить что любая работа с ней требует мьютекса. Соответственно поэтому мьютекс добавлен в саму структуру
@ПавелБачурин-д3к
@ПавелБачурин-д3к 8 ай бұрын
Чувак вообще не понимает основы программирования и компьютер сайнс, какой ему junior ему бы ещё годик поучиться
@IvanFedulov
@IvanFedulov 5 ай бұрын
дружище, давай без пустых заявлений. аргументированно есть что написать? побольше конкретики - всем джунам поможешь.
@davidmamunc7274
@davidmamunc7274 5 ай бұрын
Мне тоже интересно что же должен понимать джун ? Конкретно можешь аргументировать свой комментарий?
@Maria-xd7xk
@Maria-xd7xk 5 ай бұрын
🤡
@timur.piftaev
@timur.piftaev 3 ай бұрын
@@IvanFedulovБро, привет. Я думаю он говорит про западающие моменты из первой части интервью: на вопрос с рунами чувак немного запутался - не видит разницы между руной и ASCII символом, абстрактно рассуждает. Когда ответ чувака, который шарит за CS на уверенном ответит - что для компьютера любой символ это число под капотом. И Go очень упростила жизнь разработчикам - под ASCII символы есть byte(аналог char в C), а для эмодзи и других языков кроме английского - UNICODE(rune). Также можно сказать про виденье кандидатом как работает строка, слайс, указатель. Кандидат просто абстрактно размышляет над тем, как это все устроено, например, массив это какая то область памятиии…. где ниче не изменяется….. Вместо уверенных ответов - массив это выделенная область памяти, в следующей ячейки памяти может не быть места, поэтому массив увеличить нельзя. Слайс же отличается тем, что за ним точно есть выделенное место, ограниченное capacity. Если закончится и capacity, то гошка выделит тебе новую область памяти с увеличенным на 2 capacity.
@timur.piftaev
@timur.piftaev 3 ай бұрын
@@davidmamunc7274привет, ответил на твой вопрос))
VIP ACCESS
00:47
Natan por Aí
Рет қаралды 30 МЛН
Антон Сергеев, «Go под капотом»
36:37
Kolesa Group
Рет қаралды 104 М.
Собеседование в Альфа-Банк: Middle Java с лайв кодингом!
1:30:37
ШОРТКАТ — менторская программа
Рет қаралды 10 М.