Собеседование по Kotlin. Проводит Кирилл Розов

Поделиться
HTML-код
  • Опубликовано: 27 ноя 2024

Комментарии • 62

  • @AK-eg5rr
    @AK-eg5rr 8 месяцев назад +49

    Такие собеседования похожи на то чтобы если профессор русского языка спрашивал иностранца о тонкостях языка приводя примеры типа, «За песчаной косой лопоухий косой пал под быстрой косой косой бабы с косой». Такие примеры хоть и показывают возможности языка, но практически никогда не применяются в жизни.

    • @АндрейСоболев-ъ1р
      @АндрейСоболев-ъ1р 8 месяцев назад +1

      А что тогда спрашивать конкретно по котлину? То, что спрашивали уже миллиард раз и все знают ответ? Или то, что реально используется на практике и тогда собес закончится за 15 минут?

    • @olegleonov1310
      @olegleonov1310 8 месяцев назад

      ​@@АндрейСоболев-ъ1р Так цель собеседования узнать может решать реальные задачи на проекте или нет. Если это можно узнать за одну минуту одним вопросом, то так и должно быть.

    • @AndroidBroadcast
      @AndroidBroadcast  8 месяцев назад +6

      Зачастую возможности не применяются просто потому что вы не знаете как можно сделать по другому

    • @AndroidBroadcast
      @AndroidBroadcast  8 месяцев назад +5

      Я пытаюсь найти пределы и понять как мыслит человек, смотрит ли он дальше того что использует конструкцию. Так и отличается Senior от Junior, а не сколько проектов он написал

    • @AK-eg5rr
      @AK-eg5rr 8 месяцев назад +16

      Я согласен что количество != качество и сложно найти человека который действительно пытается понять как это работает. Но как часто получается, синьор это уже не тот кто знает как работает та или иная конструкция языка, а тот кто знает как работает проект в целом. И его задачей становится чтобы код этого проекта был максимально простым и понятным. На мой взгляд для таких тонких вопросов языка хорошо было бы пригласить человека который бы изучал язык с академической точки зрения. Было бы приятно услышать двух знающих людей обсуждающих языковые возможности и насущные проблемы.

  • @A-pe5yy
    @A-pe5yy 8 месяцев назад +38

    Когда ты прочитал книжку на пару страниц вперед и хвастаешься перед друганом 😅

  • @vladimirpyrkh4422
    @vladimirpyrkh4422 8 месяцев назад +21

    Почему-то сложилось впечатление что у Кирилла мало опыта именно в проведении собеседований. Парень поплыл и по ощущениям просто терял нить беседы, а Кирилл не пытался это исправить.
    По задаче тоже не однозначно вышло, я бы сказал что Кирилл больше хотел всем рассказать как он решил эту задачу недавно у себя. Задача была реализовать и собеседуемый сделал это, по хорошему в конце нужно было просто спросить всё ли нравится и как можно это улучшить. А набрасываться с претензией типо плохо и медленно, оно не справится со 100500 джсонами в наносекунду это так себе предмет для дискуссии.
    Возможно парень гений и если бы задача была оптимизировать данный код, то он смог бы написать такой хитрый маппер, что ему и фильтр не нужен был бы для попадания в заданные условия по скорости работы.

  • @MajesticNut
    @MajesticNut 3 месяца назад +2

    Отличный вопрос про expect/actual и интерфейс. Сам этим вопросом задавался, когда изучал КММ. И мне нравится, что Кирилл рассказывает, как бы он эту задачу сам решил. Это даёт кандидату хорошее представление о том, в какую сторону ему нужно двигаться.
    Про волнение тоже хочется сказать. На собеседованиях я обычно так же волнуюсь на первых 3-4 вакансиях, куда подаю. Из головы вылетает просто всё, что знаю, хватаюсь за мысли, но они ускользают от меня словно воздух. Это лишний раз доказывает, что на собеседованиях опыт работы слабо решает, если нет опыта собеседований. Это два совершенно разных опыта и навыка. Причем это касается как собеседующего так и собеседуемого.

  • @mrsaih1295
    @mrsaih1295 8 месяцев назад +17

    При всем к Вам уважении, Кирилл, создается впечатление, что у вас нет опыта проведения собеседований. Возможно, Вы привыкли к более опытным девам, но вот такой уровень собеседовать Вам тяжело дается. В реально бы жизни, я бы попросил прекратить собеседование еще на вопросе про return 1 и просто отключился. У меня 11 лет опыта андроид разработки, в том числе сотни проведенным собеседований, и такие вопросы просто вставляют клин между собеседующим и кандидатом, так как показывают полную некомпетентность первого. Данные вопросы не покажут глубину знаний, они скорее покажут, задрот он или нет, что никак не отразиться на реальной работе. Это просто теоретическое знание ради теоретического знания, которое не поможет никогда и нигде(ну разве что в споре). В целом видно, что моментами парень сыпеться, а Вы ему не помогаете. А в конечном итоге выглядит как "смотри какие фишки я знаю, а ты нет. ахахаах".

    • @MikhailCh-o3z
      @MikhailCh-o3z 4 месяца назад

      похоже что собес и был проведен для того чтоб показать аудитории "сатрите как я шарю, перед этим почитав пару книг и статей", а лучший способ это сделать вот так вальнуть не супер опытного паренька, зато на собесе с Гладковым пык мык)
      собеседуемому респект!

  • @maxdiland3025
    @maxdiland3025 8 месяцев назад +25

    познавательно. Но обычно когда задаётся вопрос на собеседовании, собеседующий пытается что-то для себя понять. Обычно глубину знаний собеседуемого в той или иной области. Собеседуемый не претендует на звание синиора или выше и ожидаемо что не знает детали на счёт Nothing и хитрая крокозябра в виде val a = return. В реальной жизни вот такие детали, на сколько важно понимать в деталях? Я за котлине пишу уже лет 6-7 и наверное вообще никогда не указывал возвращаемый тип Nothing. Знаю что он есть, знаю что в документации написано что пример: метод всегда бросает исключение и никогда не возвращает никакое значение. Потому собственно у Nothing и конструктор приватный. Еще предположил что возможно если метод крутит бесконечный луп и никогда из него не выходит - можно подсказать другому разработчику что метод никогда ничего не вернёт и будет крутиться вечно с помощью Nothing. Какое всё таки реальнон применение этих всех знаний?

    • @OlegGolubev_yolo
      @OlegGolubev_yolo 8 месяцев назад +3

      синтетические вопросы призванные проверить насколько много литературы ты читал перед собеседованием. Это как поверните направо, но через левый поворот
      И что забавно на собеседованиях в РФ они реально часто встречаются

    • @AndroidBroadcast
      @AndroidBroadcast  8 месяцев назад +3

      Вот по копанию внутрь и понимаю работы языка и его возможностей, глубины этих знаний и можно понять Senior или Junior

    • @_velord
      @_velord 8 месяцев назад +8

      ​@@AndroidBroadcastсеньйор этим не определяется.

    • @trollberserker1515
      @trollberserker1515 8 месяцев назад +9

      @@AndroidBroadcastSenior это как раз виденье всей системы в целом, умение предвидеть проблемы в проекте. Систем дизайн.
      А в сортах Nothing разбираться это как раз удел джунов.

  • @inferniq
    @inferniq 8 месяцев назад +8

    Боль всех собеседуемых в одном видео, главное получить точки роста, не сдаваться и идти дальше без гив апа

  • @zoompartyru
    @zoompartyru 8 месяцев назад +5

    Полезный контент! На собседовании я бы не хотел чтобы так глубоко копали:) но полезно

  • @ДарьяГришина-т6т
    @ДарьяГришина-т6т 8 месяцев назад

    Спасибо за видео! Формат собеседований по топикам зашел.
    Как идея для улучшения - было бы удобно тайм коды с вопросами видеть и ссылки на материалы где можно подробнее почитать про определенные вопросы)
    Андрей красавчик!

  • @olegleonov1310
    @olegleonov1310 8 месяцев назад +17

    После val a = return 1 можно сразу уходить с собеса, так как понятно, что литр вопросы не связаны с реальным кодом, либо связаны, но никакой нормальный разработчик не захочет работать с таким кодом.😂

    • @AndroidBroadcast
      @AndroidBroadcast  8 месяцев назад +8

      Я думаю что многие писали
      val a = b ?: return
      val c = d ?: throw ...

    • @_velord
      @_velord 8 месяцев назад +18

      ​@@AndroidBroadcastно никто не писал val a = return 1 и не будет писать

  • @ИванЕмелин-ш9ш
    @ИванЕмелин-ш9ш 8 месяцев назад +5

    19:30 Кирилл говорит, что “non-nullable типы являются супертипом их nullable варианта, … он шире, соответственно он ниже”. Не должно ли быть наоборот? Ведь иначе получается, что валидно будет класть наследника (nullable тип) в ссылку на родителя (non-nullable тип)

    • @AndroidBroadcast
      @AndroidBroadcast  8 месяцев назад +7

      Да, была ошибка. Any? - это супер тип для Any

  • @Cat4eg
    @Cat4eg 8 месяцев назад +28

    моргни если тебя держат в заложниках!)

    • @KarandaLLI666
      @KarandaLLI666 8 месяцев назад

      😂

    • @космическийхомяк-ш3ф
      @космическийхомяк-ш3ф 8 месяцев назад

      😅

    • @_velord
      @_velord 8 месяцев назад

      Почему нет отбора как человек выглядит? То калека, то лысый, то ещё кто-то. Просто мерзко смотреть

    • @lvovnaMaria
      @lvovnaMaria 8 месяцев назад +13

      @@_velordахренеть, надеюсь за твою токсичность тебя никуда не берут

  • @andreikudryavtsev3193
    @andreikudryavtsev3193 8 месяцев назад +7

    Видно было, что маленько нервы подводили иногда. Со скидкой на это - нормалёк. Андрей молодец. Кириллу спасибо за собес

    • @AndroidBroadcast
      @AndroidBroadcast  8 месяцев назад

      Андрей - молодец! Когда у меня был аналогичный опыт в годах в IT не решился бы на публичное собеседование

  • @tyt66612
    @tyt66612 3 месяца назад

    В 8 джаве, в джава коде нельзя создать наследника от sealed класса, компилятор будет ругаться (Java class cannot be a part of Kotlin sealed hierarchy) 38:32

  • @kee1o
    @kee1o 8 месяцев назад

    Хороший пример того, как можно понять, что неплохо бы написать online к своей функции, если это функция высшего порядка.

  • @TheChosenOne171
    @TheChosenOne171 8 месяцев назад +2

    Кирилл разнес пацана в пух и прах просто

  • @KarandaLLI666
    @KarandaLLI666 8 месяцев назад

    Я думаю такие тонкие вопросы для того, чтобы понять на сколько кандидат глубоко копает в задачу, на сколько широко он к ней подходит и на сколько хорошо задает вопросы.

  • @serdar9521
    @serdar9521 8 месяцев назад +1

    Для функций не возвращающих значение "val a = b ?: return" a примет тип Unit. А в случае "val a = return 1", код после "return 1" не будет достигнут, так как мы из нее выйдем.

  • @kee1o
    @kee1o 8 месяцев назад

    Кажется, return по умолчанию возвращает Unit, а не Nothing.

  • @maximelmanov6719
    @maximelmanov6719 6 месяцев назад +1

    Очень странный уровень собеседуемого для 2г 8м на котлине

  • @romanlate3654
    @romanlate3654 8 месяцев назад

    Хороший формат, но возможно стоит делать промежуточный отбор кандидатов, чтобы все выглядело немного плотнее

  • @_stc_1600
    @_stc_1600 7 месяцев назад

    Классный собес, интересно самому пытаться отвечать на вопросы и слушать Кирилла. Собеседующий все ответы поясняет. Чё вы набросились то?)
    Классный формат, а то,что диалог был якобы в одни ворота, то это только потому что кандидат не вывез. Собес был буквально по Kotlin Eternals, человек просто не подготовился, поэтому и плыл, а у Кирилла так то список вопрос был на который он ожидал получить ответы.
    В самом начале видео был дисклеймер,что это ТЕМАТИЧЕСКИЙ собес, так что удивляться со словами "да я за 5 лет это ни разу не использовал" - странно мягко говоря))

  • @OneTwo00
    @OneTwo00 7 месяцев назад

    Интересно было посмотреть, так сказать повторил то что "забыл за лето") кажется парень в опреденный момент растерлся и по этому нпчал терятся.
    P.s. Спасибо за видео.

  • @maximk0
    @maximk0 8 месяцев назад +2

    Интересное собеседование, спасибо Кириллу и Андрею за реализацию)) Появилась такая идея: после собеса собеседующий, если есть желание, выступает на канале Кирилла с темой, в которой кандидат плавал больше всего или которая вызвала споры в ходе собеседования))

    • @Das.Kleine.Krokodil
      @Das.Kleine.Krokodil 7 месяцев назад

      Отличая идея. Но для Андрея этот собес - большой шаг вперёд

  • @premi_uz
    @premi_uz 7 месяцев назад

    Спасибо

  • @evenvrgvxsd
    @evenvrgvxsd 7 месяцев назад

    Кирилл, сделай потом, пожалуйста, таймкоды

  • @umnikya7874
    @umnikya7874 7 месяцев назад +1

    Начал смотреть, посмотрел 15 мин, первое впечатление, супер тут Кирилл молодец, хорошие вопросы, хорошие ответы и хорошие объяснения от Кирилла.🎉

  • @no_cola
    @no_cola 3 месяца назад

    Это такой способ развлечений, как бдсм. Cо стороны выглядит крипово, пользы никакой в реальной жизни.
    Сюда можно еще добавить много такого шлака, типа вопросы по солид, шаблоны программирования.
    Все настолько динамично, что подобные прекрасные архитектуры и языки устаревают пока успеешь завершить пару проектов на них.
    Интересно мнение андроидовцев которых подобными хитрыми вопросами пытали пока они учили java, потом котлин, потом перемешали с компоСтом ...
    Или мнение иосников которые тот же путь идут через objc/swift / swiftui / rx ....

  • @ДенисСаранин-м1и
    @ДенисСаранин-м1и 7 месяцев назад

    Когда по компоту собес?

  • @ОлександрХанюков
    @ОлександрХанюков 8 месяцев назад +1

    паренька аж жалко, 150 гр и собесы проходят легче

  • @ITisonline
    @ITisonline 8 месяцев назад

    Было больно смотреть на кандидата

  • @bogatovnikita
    @bogatovnikita 8 месяцев назад +1

    Затея годная. Нужно тогда плейлист создать, и в названии видео указать, какая тема

  • @lobaevni
    @lobaevni 8 месяцев назад +3

    андрюха респект

  • @РадикНазмиев-б5ь
    @РадикНазмиев-б5ь 8 месяцев назад

    Позновательно.

  • @PavelStr-x5w
    @PavelStr-x5w 6 месяцев назад

    Кирилл, большое спасибо за видео-ролик, Вам очень идет короткая прическа)

  • @Anonymous-jb7xx
    @Anonymous-jb7xx 8 месяцев назад

    Ничего криминального в вопросах Кирилла не увидел, если честно. Ведь собеседование - это в первую очередь разговор двух коллег, а в основе любого программирования лежит глубокая теория, которую знать никому не вредно.

  • @ilyaglaz7632
    @ilyaglaz7632 4 месяца назад

    Интеренсые вопросы. Но качание на стуле очень отвлекает.