Собеседование C# Junior developer, что спрашивают в 2021 году?! Техподдержка идет программировать.

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

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

  • @SBeregovoyRU
    @SBeregovoyRU  2 года назад +49

    Оценим шансы кандидата получить первую работу. Как по вашему, возьмут на работу с такими знаниями или надо еще доучивать?

    • @artemartem6993
      @artemartem6993 2 года назад +52

      Junior гоняют серьезней чем На Middle, проходил через это

    • @SBeregovoyRU
      @SBeregovoyRU  2 года назад +1

      @@artemartem6993 Как думаете, почему так?

    • @artemartem6993
      @artemartem6993 2 года назад +15

      @@SBeregovoyRU ну в принципе, этому есть объяснение, чаще, джуна берут без опыта, и чтобы понять какая у него база, логика такого количества вопросов есть. Однако, Я бы больше обращал внимание на его софт скилы, на умение коммуницировать и знание английского.

    • @lerokanz3482
      @lerokanz3482 2 года назад +36

      Можно я следующий - тоже так хочу ))) Только из Юриста в Программисты =)) Да еще и в 34 =)

    • @artemartem6993
      @artemartem6993 2 года назад +21

      @@lerokanz3482 Возраст в этой сфере не важен) Всегда учишься.

  • @alexh3379
    @alexh3379 2 года назад +337

    Очень познавательно. Посмотрел пару собеседований на вашем канале.
    Как предложение: заморочьтесь с монтированием, и там где кандидат не ответил, или ответил не всё, вставляйте врезки "как бы я ответил / какой правильный краткий ответ", мне кажется поможет поднять популярность видосов

    • @yurypusovsky6290
      @yurypusovsky6290 2 года назад +11

      в топ)

    • @SBeregovoyRU
      @SBeregovoyRU  2 года назад +23

      Мне кажется я тут прокомментировал почти все вопросы или по крайней мере дал наводку на ответ.

    • @kelias7833
      @kelias7833 2 года назад +19

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

    • @РодионСоловьев-к1ч
      @РодионСоловьев-к1ч 2 года назад +2

      Совет действительно годный

    • @admin7715
      @admin7715 Год назад +1

      че он еще должен? спасибо и за то, что уже заморочился сделать видео...они ему еще советы дают

  • @ДмитрийПодлепич
    @ДмитрийПодлепич 2 года назад +25

    Работаю мидлом. Смотрю собес джуна и все равно пару новых вещей узнал) Спасибо

  • @firemanhood1526
    @firemanhood1526 2 года назад +41

    побольше таких собесов! ставлю на паузу и отвечаю сам) помогает. Если ответы еще будете выводить на экран, как бы вы ответили, цены бы не было) спасибо)

  • @vespa6407
    @vespa6407 2 года назад +25

    Очень здорово 👍 побольше бы такого контента. я так погрузилась в это собеседование, что меня даже потряхивало немного) как будто я на месте этого парня собес прохожу)

  • @want2learncsharp
    @want2learncsharp 2 года назад +41

    Отличная рубрика! Помогает понять, на что делать акцент, когда готовишься к собесам. По ощущениям, джунов гоняют на собесах сильнее, чем мидлов.
    Когда проходил собес на мидла, это скорее выглядело, как диалог о том, что я делал на прошлом месте работы, с какими проблемами сталкивался и как их решал.
    Когда ты джун, нужно доказать, что ты сможешь сам решать задачи - что добавляет сложности, т.к. это тяжело проверить.
    Виталий, удачи тебе, заполни пробелы в знаниях и у тебя все получится!
    p.s. привет из Тольятти)

    • @timtom489
      @timtom489 2 года назад +50

      У нас джунов гоняют даже на порядок больше чем в этом ролике, глянул как-то вопросы у нашего теха на столе, а там в стиле какие паттерны проектирования вы знаете и расскажите о них. Потом в стиле, что вы можете рассказать про паттерн фабричный метод. Ещё до кучи вопросы про триггеры и хранимые процедуры в SQL. Не особо понял зачем джунов этим грузят, дать простые задания и посмотреть как решает, а дальше в процессе работы уже втянется) Ну не суть. Приходил к нам как-то человек, хотел устроиться на позицию джуна, технически всё делал правильно, тестовое задание тоже все выполнил отлично, видно что мозги работают как надо. А вот речь не поставленна, запинается, плохо формулирует мысли, не может объяснить и техническими вопросами до кучи допинали. Сказали ему что он не подходит и ему ещё надо подучиться, а через пару дней его взяли в нашем же бизнес центре в другой компании на ту же позицию. А наши вместо него взяли чувака который разбирался кое-как, зато язык был подвешен и уверенности будто он второй Марк Цукерберг и красный диплом вишенкой на торте. Как итог, за 3 с небольшим года тот первый парень вырос в крутого спеца, из серии "было скучно, выучил за ночь норвежский", а наше второе пришествие Марка Цукерберга уволили не продержав и месяца потому что он был необучаем и считал что уже всё знает.

    • @MariMari-222
      @MariMari-222 2 года назад +3

      @@timtom489 поучительная история, и пишете вы классно)) 👍

    • @babibabich9801
      @babibabich9801 2 года назад +3

      @@timtom489 Прям поставил бы +миллион к вашему комментарию. Действительно, от программистов, в том числе и потенциальных, не стоит ждать супер подвешенного языка. Рад за того парня, который попал в ту компанию, где вырос

    • @vladimirandreev9022
      @vladimirandreev9022 Год назад

      @@timtom489 Это говорит о том, что компании, в основном, хотят, чтобы джун в теории разбирался на заебись, Это бред. Джун на то и джун, чтобы на работе многое изучать. Стажеры и вовсе почти ничего не знают. В баню. Этому челу нужно на уровень миддла собеседоваться, если он практик, конечно. Там не будет дурацких теоретических вопросов.

    • @vladimirandreev9022
      @vladimirandreev9022 Год назад +1

      @@timtom489 я удивляюь, откуда джун будет помнить фабричный метод, когда у него практики мало. Для того, чтобы запомнить паттерн, нужно его пару раз на практике попробовать. А этих паттернов общеизвестных десятки. Пока все опробуешь, уже года полтора продет. Уже нужно будет на позицию миддла устраиваться, а не юниора.

  • @AlexSmith-oe6pr
    @AlexSmith-oe6pr 2 года назад +25

    "Если пропускаешь базу, то потом специфичность становится магическим!", - хорошо сказано!

    • @vladimirandreev9022
      @vladimirandreev9022 Год назад

      Можно базу не пропустить, а часть базы забыть. Например, я неплохо знаю С++ уровня 2014 года. С# немного знаю. Если спросят по плюсам, на которых я прагаю совсем не часто, не факт, что на все теоретические вопросы я отвечу. Если спросят про С#, на котором я тоже прагаю редко, то я не отвечу на треть теоретических вопросов. Вот так. Нужно дать тестовое онлайн и посмотреть как он справится с ним. Офлайн тестовое на несколько часов без оплаты - плохой тон.

  • @babibabich9801
    @babibabich9801 2 года назад +18

    Интересный и очень полезный ролик для тех, кто только начинает карьеру. Но, возможно, некоторые вопросы слишком широкие для джуна. К примеру как работает сборка мусора. Очень обширная тема, начиная с простого упоминания поколений, режимов работы GC и заканчивая наличием allocation context и причин выпадения OOM. Кажется, что для джуна может быть сложновато. По мелочам, про Using. Развернется он не в try/catch/finally, а в try/finally - но мелочь, просто небольшая придирка с моей стороны)) И мне кажется, что для джуна жестковато подразумевать, что он полезет на старте изучения в IL-код и будет смотреть, что во что разворачивается)) По поводу рекомендации изучить как работает стек и куча - отличная рекомендация, которая действительно поможет в базе понять, как аллоцируется память и как там размещаются данные.
    Возможно, на базовые важные вопросы парень и не ответил, но в целом кругозор весьма неплох, подтянется немного и пойдет дальше, я считаю, что держался весьма достойно.
    В общем, Степан, большой респект вам за подобные видео, я думаю, что многим начинающим будет полезно посмотреть. Но не с целью понять и заучить, а что же спрашивают на собеседованиях, а с целью изучения именно того, что первоначально нужно для начала нормальной работы.

  • @techbuterbrod
    @techbuterbrod 2 года назад +23

    У меня опыт 2 года и то некоторые вопросы пошел гуглить. Люблю такие видео, т.к. помогают развиваться.

    • @OpalGooDog
      @OpalGooDog 2 года назад +1

      +++ аналогично

    • @timtom489
      @timtom489 2 года назад +15

      Тут ситуация как с вождением, водить все умеют, а отправь сейчас повторно на экзамен по вождению и если повезет то может треть с правами останется)

    • @ВолодимирКолягін
      @ВолодимирКолягін 2 года назад +8

      А это потому что спрашивают ненужную чепуху которую не используют в реале.

  • @valeriavicious2172
    @valeriavicious2172 2 года назад +14

    парнишка молодчина, желаю ему успеха в его цели)

  • @ВовкаКим-ч2ы
    @ВовкаКим-ч2ы 2 года назад +12

    Спасибо, Сергей, за ваш канал. Видео интересное, парню удачи в обучении и поиск работы. Данный формат видео - золотая жила. И было бы здорово, если бы вы озвучивали правильные ответы если собеседник ошибается

  • @yomer355
    @yomer355 2 года назад +16

    37:58 тут ошибочка, строка работает так же, как и все другие ссылочные типы, то есть если присвоить одну строку к другой, то они будут ссылаться на один и тот же объект в памяти.
    Мало того, благодаря такой штуке, как string interning, даже
    str1 = "foo";
    str2 = "foo";
    Будут ссылаться на один и тот же объект. И даже
    str1 = "foobar";
    str2 = "foo" + "bar";
    Ссылаются на один и тот же объект (то есть когда конкатенация может быть выполнена на этапе компиляции)

  • @TwilightGamerChronicles
    @TwilightGamerChronicles Год назад +81

    К собеседующему претензия, что если кандидат не отвечает на вопрос, он должен сам ответить, потому что такие ответы усвоятся сразу и надолго! Так делают в нормальных компаниях, а не то, что собеседующий всегда отвечает "Ну там потом почитаешь". При таком ответе собеседующего у меня возникают вопросы к его компетенции!

    • @gameriderus
      @gameriderus Год назад +5

      Ну собеседующий к тому же часть вопрос сам смотрит с тетрадки или с чего то еще)

    • @MrNBelkov
      @MrNBelkov Год назад +2

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

    • @ИванДовлатов-х3ж
      @ИванДовлатов-х3ж 6 месяцев назад

      ​@@MrNBelkovхарооош)

  • @Bogdan-he3sq
    @Bogdan-he3sq 2 года назад +103

    Miposhka пробует себя в програмировании, честно сказать не ожидал, но парень молодец даже после победы на TI 10 всё равно ищет разные способы реализации!

    • @DruidMoonkin1
      @DruidMoonkin1 2 года назад +14

      Честно вообще не похож

  • @sledleo
    @sledleo 2 года назад +9

    Шикарно, чем жестче, тем интереснее и полезнее, спасибо!

  • @anatolisc3511
    @anatolisc3511 2 года назад +7

    Спасибо большое, даже несмотря то что собеседование об C#, помогло мне вспомнить некоторые детали Java. Немного было сложно понимать некоторые вопросы из за недостатка незнание слов на русском, так как изучал на итальянском..

    • @TheNofxsss
      @TheNofxsss 2 года назад +13

      Ля сеньор, муча грасиэс дэ компайлер

  • @Ruslan_Ishmuratov
    @Ruslan_Ishmuratov 2 года назад +19

    Отличнейший формат . Кандидату спасибо за смелость ,ты очень не плох . Жду интервью о твоей первой работе разработчика 👍

    • @denisn6408
      @denisn6408 2 года назад

      А вот тут проблемка будет, нужен опыт, а чтобы был опыт нужна работа))

    • @Ruslan_Ishmuratov
      @Ruslan_Ishmuratov 2 года назад

      @@denisn6408 ну как то люди начинают работать ,иначе бы никто и не работал 🤣

    • @denisn6408
      @denisn6408 2 года назад

      @@Ruslan_Ishmuratov по факту, конверсия очень маленькая.

    • @Ruslan_Ishmuratov
      @Ruslan_Ishmuratov 2 года назад

      @@denisn6408 а вы сами работаете ?

    • @ГригорийФарафонов
      @ГригорийФарафонов 2 года назад +3

      Уже работает) Мой коллега)

  • @RobinGoodwe872
    @RobinGoodwe872 2 года назад +2

    Интересный ролик, полезный, спасибо автору.

  • @andreybundin6102
    @andreybundin6102 2 года назад +11

    У меня в том году было 4е собеседования, 2 - на XAMARINе, 1 - Fullsteck и 1 - WPF и Backend. И ни на одном у меня не спрашивали то чего спрашивали в первой половине видео, спрашивали про опыт про паттерны, показывали код или я показывал код, для последнего собеседования сделал тестовое задание. Про GC спрашивали на двух собеседованиях, почти везде про DI, ну и про ООП

    • @HappyMAN-lv5xu
      @HappyMAN-lv5xu 5 месяцев назад

      взяли хоть на работу

  • @Tinyismyson
    @Tinyismyson 2 года назад +5

    Спасибо за видео, Степан. Очень познавательно. Сам хочу свитчнуться (36) и ожидаю своего 4 технического собеса. две трети вопросов из озвученных здесь мне никогда даже не задавали, никогда не знаешь что тебя ждёт.

    • @yourownazog8069
      @yourownazog8069 Год назад

      как успехи?

    • @Tinyismyson
      @Tinyismyson Год назад +1

      @@yourownazog8069 предлагали тогда идти на qa я чет отказался :) сижу дальше ищу

    • @yourownazog8069
      @yourownazog8069 Год назад

      @@Tinyismyson то есть, вы пошли на собеседование, немного его завалили и вам потом сказали, что .NET разработчиком взять не могут, но могут предложить работу (стажировку) QA C#?

    • @yourownazog8069
      @yourownazog8069 Год назад

      @@Tinyismyson вы уже больше 4 собеседований посетили?

    • @Tinyismyson
      @Tinyismyson Год назад +1

      @@yourownazog8069 ага, теперь пробуюсь поварится в опенсорс, на проекте space station 14. Как начну читать его без проблем - попробую еще раз

  • @aziat3945
    @aziat3945 2 года назад +51

    Душнилово собес. Всегда поражался с таких уважаемых. Я б спросил работу с памятью, оптимизацию, паттерны, структуры данных и вуаля. Беги парень от таких собесов)

    • @ВладБродко
      @ВладБродко Год назад

      С такими собесами на джуна, лучше сразу на мидла идти)))

    • @SergFreest
      @SergFreest Год назад +2

      Прикалываешься? Парень ноль полный

    • @vladimirandreev9022
      @vladimirandreev9022 Год назад +8

      @@SergFreest Это ты прикалываешься? Если бы парень был полным нолем, то он почти ни на один вопрос правильно бы не ответил. Ноль это ты, скорее всего. Теоретически может быть ты и не ноль, а по практике около ноля. Знаю такие конторы, которые только по теоретическим знаниям берут. Потом увольняют таких работников.

    • @hop173
      @hop173 Год назад +9

      Спрашивать про оптимизацию, работу с памятью у человека претендующего на позицию джуна?)

    • @angrycatstudio2816
      @angrycatstudio2816 Год назад

      Ну вроде обычный собес, что бы прощупать

  • @FixedA
    @FixedA 2 года назад +8

    Гораздо прикольнее когда себеседующий отвечает на вопросы а не просто говорит - иди почитай.

    • @Юрчик-л8у
      @Юрчик-л8у 11 месяцев назад

      а что гениально и умнее кажешься хD

  • @user-rz1hv
    @user-rz1hv 2 года назад +12

    37:57 нет, при присвоении строки копируются по ссылке, другое дело, что изменить их внутренне нельзя, потому что они неизменяемые (immutable), у них нет состояния, а при присвоении литерала в новую переменную попадает новая ссылка, поэтому в старой переменной остается прошлое значение

    • @denisn6408
      @denisn6408 2 года назад +1

      Изменить при желании можно)

    • @eniluck5071
      @eniluck5071 2 года назад +2

      string s1 = "Привет";
      string s2 = s1;
      bool EqualsResult = Object.ReferenceEquals(s1, s2); // TRUE

    • @BigDmitry
      @BigDmitry 2 года назад

      @@Hunter314414 Нет, строки копируются по ссылке. Правило интернирования действует только на известные во время компиляции строки (т.е. на константы) и тогда, когда вы явно вызываете String.Intern.

  • @pvel_506
    @pvel_506 2 года назад +12

    Кандидат держался достойно, видно, что сейчас изучает многие вещи и имеет стартовые знания.
    Но при этом ни раз кандидат говорил КАК делать правильно, но не мог капнуть и рассказать ПОЧЕМУ.
    ИМХО, я бы рекомендовал не зацикливаться на книжках, а закрывать именно те пробелы, что вскрываются на подобных собеседованиях.
    Можно даже попробовать еще пройти где-то собеседования и понять какие вообще знания сейчас нужны на рынке. Посмотреть на какую сумму могут оценить текущие знания и понять, что нужно подтянуть, если хочется прыгнуть выше. Или же просто посмотреть статьи на Хабре на тему собеседований, изучить список типичных вопросов и ответов.

  • @Skarlotyina
    @Skarlotyina 2 года назад +70

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

    • @zergzerg4844
      @zergzerg4844 2 года назад

      А сколько обычно такие собесы отводится времени? Или они дробятся, сегодня познакомились пообщались с hr, бабки мотивация , цели, в другой день уже техническое собес и потом тестовое?

    • @vladimirandreev9022
      @vladimirandreev9022 Год назад +2

      @@zergzerg4844 Тестовое не везде есть. Тестовое, если оно офлайн, не должно выполняться за бесплатно. Особенно, если на его выполнение уйдет больше 1-2 часов. В крупных компаниях собес дробится на, минимум, 2 части: 1) hr; 2) техническое интервью. По видосу видно, что контора не далеко ушла от шараш-монтажа.

    • @vasilyh4588
      @vasilyh4588 10 месяцев назад

      Собеседование обычно 1 час максимум и их обычно 3 штуки:
      1. с HR - до получаса,
      2. С техлидом - до 1 часа. Вместо этого может быть назначено тестовое (отдельное время и степень неадеквата тут может быть самой разной как по времени так и по задачам) + разговор по тестовому заданию.
      3. С принимающим на работу - разговор по деньгам + подписание документов, если готов сделать это сразу - до получаса.

    • @eduardlazarenko7910
      @eduardlazarenko7910 9 месяцев назад +1

      Согласен. + Вопросы лушные, я бы уже на втором вопросе ливнул. Что будет если поделить 2 на 3 в INT. Брет блять. Бан будет, достаточно знать что нехер в целочисленный тип, сунуть результат деления, даже если он без остатка.

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

      @@eduardlazarenko7910я вообще считаю, что не нужны эти вопросы на собеседованиях, пустая трата времени. ничего они не дают

  • @lastcode9363
    @lastcode9363 2 года назад +5

    Отличное видео, полезный контент, интересно временами посмотреть коллег по цеху, познавательно) 👍

  • @Mr43046721
    @Mr43046721 2 года назад +10

    Знания как для начального уровня хорошие, кандидат молодец!

  • @amezhlumov
    @amezhlumov 2 года назад +1

    еще раз вам спасибо ! очень хочется с вами по общаться в свободное время !

  • @darkcrusaderzxc
    @darkcrusaderzxc 2 года назад +18

    Парень молодец, очень много знает для джуна, с вопросами про стек и кучу не ответил, это серьезный минус, еще не был задан вопрос про "ref и out" параметры, как они изменяются в методе, это тоже часто спрашивают. Если отталкиваться от знаний шарпа, то много тем было пропущено, да и вообще оценить уровень фундаментальных знаний в шарпе не так уж и просто, при желании человека всегда можно отсеять, если копнуть чуть глубже, хотя бы до уровня Рихтера. Для быстрого "въезда" c# не подходит, так же как и c++ или java, другое дело python или рhp, парню однозначно уважение и надеюсь ему повезет с работой, потому что фундаментальные знания это хорошо, но даже они без практики быстро забываются, а вечно учить теорию не возможно, через какое то время одна информация, начнет затирать другую.
    Автору спасибо за ролик, я как человек с опытом в шарпе для себя некоторые вещи новые узнал.

    • @VetalGimbarr
      @VetalGimbarr 2 года назад +4

      Спасибо за поддержку :) про стек и кучу я потом посмотрел и я бы не сказал, что эти знания сильно помогают в работе, если до этого я знал про то, что вэлью типы работают быстрее, что они копируются при передаче в метод, а чтобы не копировались нужно передавать с ref, что out параметр кидает значение в переменную метода, помеченную, как out, что ссылочные типы наоборот не копируются при передаче в метод и нужно делать велосипед в виде var ... = new ... {New.p1 = old.p1, ... }. Когда знаешь про область видимости переменных в методах. Я копал как бы в практические, так сказать, постулаты, применения методов, но не в их причину. Через стек и кучу можно в это зайти и будет даже быстрее понимание. Но само здание что стек это быстрая память приложения, а куча память компьютера и что в стеке хранятся вэлью и ссылки, а в куче значения ссылок, не рассматривая исключения, типа когда программист зачем-то сделал структуру и засунул в нее 3 ссылочных типа и подобных штук, не помогает в работе. Я учил, получается, именно как можно делать и как нельзя делать по причине просто потому что опытные ребята так сказали, если копнуть глубже то там оказывается вот теория про память, которая не применяется, а если ещё глубже, то там будет уровень ассемблера, а ещё глубже физика процессора и разных поколений. Но при этом я выбрал C#, как высокоуровневый язык как раз, чтобы не копать туда, я мог бы выбрать Си или ассемблер и я пытался в них разобраться, но это просто не интересно было. Мне нравится делать рабочие прототипы программ, чтобы данные удобно водились пользователем, ошибки обрабатывались, на сервере все тоже хорошо обрабатывалась, приложение работало быстро и приносило пользу. В последнее время мне ещё стала интересна тема архитектуры приложения и я туда копать стал, но никак не в более низкий уровень. Этому и ответы такие были. Ну и собес был чтобы закрыть свои дыры как раз.
      Если провести итог, то я редко хочу узнать, что лежит под копотом штук, которые дали разработчики языка или разработчики nuget. Для меня главное, чтобы они работали так, как указано в их документации. Детали реализации там обычно никто не указывает. И всякие вопросы по типу: а во что разворачивается out на уровне il кода? А на asembler? А как это на процессоре передается? Или аналог про слова string, int, delegate, new, this, event, using, class, virtual и т.д. Завалить можно, как ты сказал, на чем угодно, если копнуть поглубже, согласен.

    • @darkcrusaderzxc
      @darkcrusaderzxc 2 года назад +1

      @@VetalGimbarr На практике большинство из того что спрашивают на собеседовании редко нужно, даже если затрагивать тему оптимизации, то пока у тебя все работает, то заботится о ней не нужно, а все эти вопросы только для того чтобы пройти собеседование, я не так давно проходил собеседование в один крупный банк и у меня все это спрашивали, понятно что везде разные требования и junior это надолго пока не научишься не только повторять это, но и думать в контексте этих данных. Но ты молодец и советы коллеги тебе дают хорошие, удачи.

    • @ЕвгенийГорелов-е1з
      @ЕвгенийГорелов-е1з 2 года назад +2

      @@darkcrusaderzxc Согласен)) НО, если появится "узкий" кусок кода, ты не сможешь его оптимизировать, если про память и ASM ничего не знаешь)) Другое дело, что вряд ли в работе современного "бэкэндера" он появится)) На моей практике, такие куски кода появляются только в моих домашних проектах, вот последний раз писал A* для поиска пути на большой карте, для моего бота WoW, там пригодилось, все-таки граф в 100 000 000 нод - это не шутки)) Бизнесу нужны тупые, повторяющиеся действия, высшая математика и знания компуктера почти не требуется)) Особенно смешно, что современные "Веб-программисты" мидл уровня даже не знают как сеть работает, а зачастую не смогут даже HTTP запрос в блокноте написать, ну а что такое маска сети это вообще тайна)))

    • @vladimirandreev9022
      @vladimirandreev9022 Год назад

      Чтобы ответить на вопросы про стек и кучу нужно знать С++ хотя бы на более-менее сносном уровне. Он его явно не знает.

  • @Spitzel42
    @Spitzel42 Год назад +10

    Интересно, а что делать если собеседователь неправ?) Как, например на 38:00 . s2 в данном моменте будет иметь ссылку на ТУ ЖЕ строку что и s. Отличается только поведение при попытке "переписать" строку, так как она immutable.

    • @fidem9232
      @fidem9232 2 месяца назад

      Говоришь, что собеседователь не прав и доказываешь.

  • @ilyha1801
    @ilyha1801 Год назад +3

    Привет! Спасибо за интервью, но я так и не понял почему на 37:30 говорится, что ссылки будут указывать на разные объекты в памяти? Они же будут ссылаться на 1 обьект. В данном случае строки ведут себя как ссылочный тип

  • @nickolashrytsenko5753
    @nickolashrytsenko5753 2 года назад

    Насправді дуже круте відео, дякую за такий контент.

    • @SBeregovoyRU
      @SBeregovoyRU  2 года назад

      рад, что видео полезно для вас

  • @gadzemur
    @gadzemur 5 месяцев назад

    спасибо. Отличное видео)

  • @oxfaaaaa9687
    @oxfaaaaa9687 Год назад +2

    Так про строки собеседующий сам не в курсе. Когда пишут
    string s = "a";
    string s1=s;
    Не будет создаваться новая строка для s1. Откуда вы вообще взяли это?
    При конкатенации да, будет, но не в этом случае. Это блин принципиальный момент, можно сказать идеологический

  • @ビターリ
    @ビターリ 2 года назад +14

    Читаю книгу Троелсена и оказывается там описано все что было бы на собеседовании

    • @TheNofxsss
      @TheNofxsss 2 года назад

      Про свою жену и детей он там не пишет?

    • @ビターリ
      @ビターリ 2 года назад +1

      @@TheNofxsss вроде нет у Рихтера(CLR) вроде бы написано о своей семье

  • @tigranavagyan1587
    @tigranavagyan1587 Год назад

    Спасибо. Видео очень полезное.

  • @dzianism.556
    @dzianism.556 2 года назад +33

    string s = "привет"; string s2 = s; - ответ не правильный! ссылаться будут на один объект т.к. есть такая штука, как интернирование! и строки изменить можно небезопасным кодом, но потом не только поменяются значения всех её переменных, но и вызов и присвоение неизменённой версии будет возвращать всегда изменённую!

    • @vladimirandreev9022
      @vladimirandreev9022 Год назад

      Это какой язык? В C++ и C# не так. В данном случае переменная s2 не будет ссылаться на переменную s. В C++: string & s2 = s - будет ссылаться на переменную s. В C#: ref string s2 = ref s.

    • @dzianism.556
      @dzianism.556 Год назад

      @@vladimirandreev9022 Это какой язык? В английском не так. В данном случае вообще буквы не из того алфавита.

    • @TwilightGamerChronicles
      @TwilightGamerChronicles Год назад +1

      @@vladimirandreev9022 так тут и не написано, что переменная s2 ссылается на переменную s! Они обе ссылаются на один и тот же объект в памяти, и если изменить переменную s = "пока", то только она будет указывать на новый объект в памяти, в то время, как s2 будет хранить старое значение, тобиш "привет".

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

    Все опнравилось, но честно говоря, первый вопрос очень с float/decimal/double душный. От кандидата я бы просто хотел услышать в таком случае, что при работе с критичиски важными арифметическими операциями нужно граммотно подходить к типам данных чисел. А валидный тип можно путем поиска инфы в гугле найти

  • @yummybunny7351
    @yummybunny7351 2 года назад +6

    Сергей, борода Вам очень шла к лицу.

    • @SBeregovoyRU
      @SBeregovoyRU  2 года назад +4

      Надоела

    • @SBeregovoyRU
      @SBeregovoyRU  2 года назад +5

      Но отрастает быстро) Если че дело не долгое :-)

    • @kompotalive
      @kompotalive 2 года назад +1

      @@SBeregovoyRU не стоит вестись на чужое мнение. Будь собой

  • @Д-рВедьмак
    @Д-рВедьмак Год назад +2

    Это на Junior или на Middle?
    Для Junior вполне нормально - я бы его взял

  • @otkwass
    @otkwass 2 года назад +1

    ну нормальный пацан на самом деле.
    по теории проседает, но на практике вроде какой-то опыт есть - а теория она приходит по факту.
    ко мне приходили на мидлов и похуже :)
    и я вообще с позиции swift на все это смотрю, некоторые моменты удивляют, но в целом все достаточно похоже, ну за рядом отличий, например у нас сборки мусора нет - есть ARC и по нему обычно хорошо гоняют на собесах. по факту это просто retain release на этапе компиляции, но многие "мидлы" думают что это какой-то там цикл в рантайме ( некоторые даже ранлуп вспоминают ради этого ), который убивает мусор.
    забавно что у нас была одинаковая реакция когда он упомянул про наследование и про DI - я тоже втупил и аж на паузу поставил чтоб осознать :)

  • @seoonlyRU
    @seoonlyRU 2 года назад +1

    спасибо, интересно вышло, лайк от СЕООНЛИ

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

    Мне страшно представить какие вопросы задаются на собеседование джуна C++

  • @amezhlumov
    @amezhlumov 2 года назад

    сппсибо вам огромное !

  • @ramil9209
    @ramil9209 2 года назад +2

    Степан, можете оставлять вопросы с таймкодами, спасибо за выпуск!

  • @DardellX
    @DardellX 2 года назад +4

    26:18 порядок булевых операторов же, сначала идёт &&, потом ||, те понимание различия есть, но ответ абсолютно неправильный. Т.е. в первом выражении если A=true, то дальше ничего не проверяем

    • @VetalGimbarr
      @VetalGimbarr 2 года назад +1

      Вопрос был про разницу между && и &. Весьма странный комментарий)

    • @DardellX
      @DardellX 2 года назад

      @@VetalGimbarr Ну те по вашей логике, если вас спрашивают про правило жи-ши, а всё остальное предложение написано абсолютно неправильно и с ошибками 1 класса, то плевать, главное то, про что спросили?

    • @yomer355
      @yomer355 2 года назад

      ​@@DardellX эм, разумеется, про что спросили, про то и ожидается ответ. Котлеты отдельно, мухи отдельно.

  • @aleksandrPavlov1777
    @aleksandrPavlov1777 Год назад

    Очень хорошее видео, Спасибо!! Смотрю и вижу, что было с моей стороны правильным решением изучать С++ по видеолекциям с торрента. После них нет вопросов по массивам и типам данных. Видимо в лекциях по С# это упускают. Кодить приходилось кустарно и на С++ и больше всего на С#.

  • @Bont1860
    @Bont1860 2 года назад +3

    Мне одному кажется, что Виталий его сын?)

  • @I_am_V
    @I_am_V 2 года назад +11

    Почему проходит собеседование он, а дикий мандраж у меня? Тоже начал стул в разные стороны крутить :D

    • @forty_se7en
      @forty_se7en 2 года назад +5

      Испанский мандраж😁

    • @SBeregovoyRU
      @SBeregovoyRU  2 года назад +2

      Да, собес это нервное дело. И кстати для того кто спрашивает тоже.

    • @leonidpro3664
      @leonidpro3664 2 года назад +1

      @@SBeregovoyRU значит неправильно подходите к этому процессу

    • @SBeregovoyRU
      @SBeregovoyRU  2 года назад +3

      @@leonidpro3664 Хз, как по мне решать в какой-то степени чью то судьбу ответственный, нервный процесс. Не хочется принять ошибочное решение причем ошибочным может быть как найм так и отказ.

  • @Mani_Fast
    @Mani_Fast 2 года назад +6

    1:17:40 внимание на субтитры XD

  • @Владимир-ш8э3п
    @Владимир-ш8э3п 2 года назад +2

    Да с парнем все предельно ясно - это вылитый прогер, бледный флегмат в очках), а за собес лайк

  • @ДмитрийУрюпин-ч6у
    @ДмитрийУрюпин-ч6у 2 года назад

    Прошел собеседование благодаря этому видео, многие вопросы повторялись. Правда результата пока жду)

    • @HeIvis
      @HeIvis 2 года назад

      И как, прошел? Сколько вообще заняло обучение?

    • @ДмитрийУрюпин-ч6у
      @ДмитрийУрюпин-ч6у 2 года назад +2

      @@HeIvis "вы хорошо прошли собеседование, но мы нашли кандидата с более глубоким опытом". С год примерно, но тут у каждого свой график, по свободному времени. У меня его было мало

  • @bloodrik
    @bloodrik 2 года назад +3

    37:30
    Не совсем с вами согласен. s2 действительно будет ссылкой и они вместе с s будут ссылаться на одну область памяти. Но строки immutable, изменить значение по ссылке не является возможным.
    Это кстати легко проверить
    var s = "hello";
    var s2 = s;
    Console.WriteLine(object.ReferenceEquals(s, s2));
    //OUTPUT: true

    • @SBeregovoyRU
      @SBeregovoyRU  2 года назад +1

      Да, я уже писал в комментах, что пример неудачный.

    • @ЕвгенийГорелов-е1з
      @ЕвгенийГорелов-е1з 2 года назад

      Тоже когда смотрел, т.к. есть понимание АСМ и т.д. и того, что строки иммутабельны, возник в башке вопрос - "а нахрена в случае копирования создавать новую строку?")) И Было предположение, что вряд ли создатся, что просто копируется адрес и что майки не дегенеры))) Спасибо, что подтвердили)

    • @demonspel
      @demonspel 2 года назад +1

      @@Hunter314414
      var s = "hello";
      var s2 = new String("hello"); // ReferenceEquals false

    • @sergeyandrianov8518
      @sergeyandrianov8518 2 года назад +3

      @@demonspel При чем в данном случае new? Вы сознательно указали новый объект строки.Конечно здесь ссылки будут разные.

  • @ГлебБерёзкин-л1о
    @ГлебБерёзкин-л1о 2 года назад +1

    Спасибо за видос, помогло устроиться на стажировку в классную IT компанию)

  • @УбийцаХомяков-ь4б
    @УбийцаХомяков-ь4б 2 месяца назад

    string Text = "Привет";
    string SubText = Text;
    В данном случае SubText будет указывать на тот же самый объект строки в памяти. Ничего нового создаваться не будет. Это можно проверить "object.ReferenceEquals(Text , SubText)".
    Но если вдруг переменная SubText измениться, то только тогда приведёт к созданию нового объекта в памяти.

  • @A-mi-D
    @A-mi-D Год назад +1

    Правильный тон собеседования это когда кандидат ошибся или не знает, объяснить/расскрыть кратко ему правильный ответ. Иди читай.. Не очень комфортный вариант

  • @kotikovdmitry4274
    @kotikovdmitry4274 2 года назад +9

    Когда гость канала уже ответил на вопрос, очень не хватает правильного ответа или дополнения ответа.

    • @SBeregovoyRU
      @SBeregovoyRU  2 года назад +7

      Я очень много прокомментировал и где-то дал ну очень развернутые ответы. На реальном собесе такого не будет.

    • @mefodymo7456
      @mefodymo7456 2 года назад

      Не факт

  • @artes2664
    @artes2664 2 года назад +3

    Если это Junior, то как тогда выглядит собеседование на Mid и Senior? Боюсь представить 🤣🙈

    • @Avans0908
      @Avans0908 Год назад +3

      На mid/senior совсем другой принцип собеса. На Junior мало кто ждёт правильного ответа на все вопросы. Тут важнее узнать общий кругозор. Ну и увидеть принцип мышления. В выборе джуна важнее то, как хорошо и быстро он будет учиться и какая у него есть база.
      При выборе мидла и сеньора мы берём уже сформировавшегося разраба и на его обучение не хочется тратить деньги и время. Тут важнее узнать про его опыт, как он решал те или иные проблемы. И, возможно, про конкретные технологии, которые используются в компании.
      По итогу, собеседование на джуна, как мне кажется, самое сложное.

  • @fedorchernikov238
    @fedorchernikov238 2 года назад

    Виталий силен. Программировать будет по любому. Умный парень. Интересно узнать - работает ли он уже?

    • @VetalGimbarr
      @VetalGimbarr 2 года назад +3

      Работает)) собес помог найти слабые стороны, подтянуть их и устроиться

  • @AleksPanable
    @AleksPanable Год назад +1

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

  • @scolopendrachilopoda9704
    @scolopendrachilopoda9704 2 года назад +2

    это точно на джуна собес? :)

  • @MerlinMoorlo
    @MerlinMoorlo 2 года назад +5

    Это собеседование на сеньора. Я не верю, что такими знаниями должен обладать джуниор.

    • @sp1ne2104
      @sp1ne2104 2 года назад

      любой, кто прочитал пару книг по шарпу ответит на все вопросы и даже глубже на все вопросы из первой части видео

    • @lucefan2816
      @lucefan2816 Год назад

      @@sp1ne2104 какие книги посоветуете?

    • @doberman7395
      @doberman7395 Год назад +1

      @@lucefan2816 Andrew Troelsen "Pro C# 10 with .NET 6"

    • @lucefan2816
      @lucefan2816 Год назад

      @@doberman7395 спасибо!

  • @nikitayasnev
    @nikitayasnev 2 года назад +3

    Как человек за кучу вопросов к нему поймет что-то о компании и что ему следует здесь работать? Кроме того что здесь очень нудно и время тратится впустую

    • @SBeregovoyRU
      @SBeregovoyRU  2 года назад

      если вам нудно программировать и заниматься самосовершенствованием в программировании - вы явно выбрали не ту профессию

    • @nikitayasnev
      @nikitayasnev 2 года назад +3

      @@SBeregovoyRU тут дело не в нудности, а в неадекватности подборщика

  • @1_KHJ
    @1_KHJ 2 года назад +2

    ДУШНО ОЧЕНЬ xDDD

    • @SBeregovoyRU
      @SBeregovoyRU  2 года назад

      Может форточку открыть?

    • @vladimirandreev9022
      @vladimirandreev9022 Год назад

      @@SBeregovoyRU На собесах у себя форточки открывайте)

  • @MEZENchannel
    @MEZENchannel 2 года назад +4

    Степан, здравствуйте. Подскажите пожалуйста, какой из этих двух людей на ваш взгляд станет программистом - Первый это тот, кто фанатеет от программирования, но не обладает хорошим логарифмическим мышлением. А второй наоборот - имеет среднюю мотивацию к изучению, но очень хорош в математике и логарифмах ?
    Вопрос веду к тому, что более ценно в программировании - фанатизм, усидчивость или с рождения умение решать хорошо задачи и качественно ? Но выбрать можно только одно.

    • @SBeregovoyRU
      @SBeregovoyRU  2 года назад +10

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

    • @namelessboar
      @namelessboar 11 месяцев назад

      Что такое логарифмическое мышление? Это умение решать алгоритмичиские задачки по логарифмической сложности?

  • @АртурСафиулин-т5в
    @АртурСафиулин-т5в 2 года назад +1

    Подскажите как работать со звуком, генерировать и анализировать на низком уровне. Какая библиотека.

  • @AutoAmper
    @AutoAmper 2 года назад

    Интересно.

  • @ЕвгенийГорелов-е1з
    @ЕвгенийГорелов-е1з 2 года назад +4

    Я на собесах задаю подобные вопросы и все факапятся)) Все знают про СОЛИД и ни один про память и как все устроено) Но честно говоря, для продукта, который разрабатываем мы, это и не надо, потому берем, даже если человек не знает основ, главное чтобы код показал....

  • @JamesBond-bu8co
    @JamesBond-bu8co 29 дней назад

    var s = "Привет";
    var s2 = a;
    У нас тут создается новая строка???? Серьезно???? Может вы перепутали со сравнением строк по значению?

  • @blackeducationacademy
    @blackeducationacademy Год назад +1

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

    • @VetalGimbarr
      @VetalGimbarr Год назад

      где ты нашел информацию про тестовый период в компании? Это собеседование спустя год изучения интервалами неделя учебы через 3 месяца отдыха и 1 месяцем целенаправленной учебы), т.е. по факту времени где-то 2-2,5 месяца. За это время изучены только курсы, метанит. К собеседованию целенаправленно не готовился, просто было интересно что спрашивают на тот момент по C#, к чему готовиться, насколько досконально спрашивают теорию, которая никогда не пригодится и т.п. Если ты знаешь все, что спросили тут и у тебя есть практика, как у меня была на тот момент, потому что я именно практику делал, я на тот момент за 2,5 месяца сделал 3 прототипа игр на unity + C#, штук 20 различных консольных приложений, 3 приложения на wpf, одно на asp net core. И, честно, ни в одном не понадобилось именно определение из книжек стека и кучи, знания реализации стринги и стринг билдера под копотом и т.п. Вполне достаточно знаний о том, что есть разные области видимости переменных, знание, что есть IDisposable объекты, есть объекты на которые хранятся ссылки в памяти и их нужно обнулять вовремя. Я лично, спустя 2 месяца после этого собеса подтянул знания, ещё больше практиковался и устроился на работу и по сей день работаю, так что и тебе советую устроиться, потому что в этом собесе большинство базы есть, а некоторые вещи даже на уровне senior задач спрашиваются.

  • @I1am1one
    @I1am1one Год назад +1

    Децимал это что-то про децла?

  • @anonim1788
    @anonim1788 2 года назад +2

    Касательно ИИ, у OpenAI уже есть ИИ, который интерпретирует текстовые команды на натуральном языке в готовый код. Например, ему говоришь: "напиши программу, которая проверяет является ли строка палиндромом", и он выдаёт непосредственно код, например, на питоне. На ютубе есть их ролик, вроде

    • @denisn6408
      @denisn6408 2 года назад

      В райдере уже встроена поддержка ИИ, уже шарит по гитхабу и выдает варианты.

    • @ЕвгенийГорелов-е1з
      @ЕвгенийГорелов-е1з 2 года назад +3

      Он просто шаблоны тебе выдает, это не ИИ который пишет осмысленный код, до этого еще далеко, современным процам и накопителям, так и подавно, лет (вы столько не проживете) можете быть спокойны господа)

    • @anonim1788
      @anonim1788 2 года назад

      @@ЕвгенийГорелов-е1з Не совсем понял про шаблоны. Что вы понимаете под этим? Ему написали: "сделай так, чтобы игрок мог двигаться вправо-влево стрелочками" и он написал соответствующий код с нуля, о каком именно шаблоне речь?

    • @ЕвгенийГорелов-е1з
      @ЕвгенийГорелов-е1з 2 года назад

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

    • @anonim1788
      @anonim1788 2 года назад

      @@ЕвгенийГорелов-е1з Вы уверены, что мы говорим об одном и том же проекте? Почему Вы говорите, что такого нет, если буквально то, что я написал, есть. Они даже раздают демку

  • @РусланЛи-б3х
    @РусланЛи-б3х 2 года назад +5

    Степан, добрый день. Изучаю С# больше года. Еще не работал. Можешь ли ты провести собеседование со мной? Заранее спасибо

    • @TwilightGamerChronicles
      @TwilightGamerChronicles Год назад

      А смысл проводить с каждым? Включаешь это видео и проверяешь, сможешь ли ты ответить на эти вопросы или нет?

  • @viktorklinkov
    @viktorklinkov 2 года назад +1

    var s = “a”; var s1 = s; s и s1 ссылаются на один объект. Но var s = “a”; var s1 = s + “b”; ссылаются на разные объекты. Таблица интернирования строк !

    • @vladimirandreev9022
      @vladimirandreev9022 Год назад +1

      "var s = “a”; var s1 = s; s и s1 ссылаются на один объект" - вы не правы. В данном случае это не ссылка, а копия. В новую переменную копируется значение другой переменной. Так в JavaScript, C++, C#.

    • @viktorklinkov
      @viktorklinkov Год назад

      @@vladimirandreev9022 так я про это и говорю

  • @deni90439
    @deni90439 5 месяцев назад +1

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

  • @gamb5730
    @gamb5730 2 года назад +4

    начну изучать С#
    через 3 месяца посмотрю это видео, посмотрим смогу ли ответить на вопросы

    • @gogibeet
      @gogibeet 2 года назад +7

      Скорее всего не сможешь и это будет нормально.
      Объем знаний который он спрашивает какой то неибический. я 3 года уже работаю и даже на половину фиг отвечу с наскоку.
      На самом деле когда хуячишь в прод , большинство из этих знаний не пригождаются и вылетают из головы через месяц.
      Чтобы уверенно рассуждать на все эти темы нужно не уметь писать код, а уметь проходить собеседования. Эти навыки пусть и частично перекрывают друг друга , но по большей части они разные.
      Более того , я закинул видос в чат и у нас даже синьоры сказали что это как то слишком круто для джуна.

    • @gamb5730
      @gamb5730 2 года назад

      @@gogibeet та я уже c++ изучаю, ОТМЕНА ПАРНИ ОТМЕНА

    • @timtom489
      @timtom489 2 года назад +1

      @@gogibeet тут на самом деле ещё довольно лайтовое собеседование, в реальности джунов ещё на порядок сильнее гоняют.

    • @mefodymo7456
      @mefodymo7456 2 года назад

      @@timtom489 откуда такая уверенность?

    • @lucefan2816
      @lucefan2816 Год назад

      @@gamb5730 Как успехи , что в итоге изучили?

  • @ЭмирЭмир-ъ5с
    @ЭмирЭмир-ъ5с 2 года назад

    🔥🔥🔥🔥🔥

  • @Bont1860
    @Bont1860 2 года назад +1

    Каждое собеседования для программиста, это как экзамен! Страшно!

  • @gumelov
    @gumelov 2 года назад +2

    так стопе. С строками какая то лажа. Как это при при вот таком у нас два разных объекта будут? объект один и ссылка в пуле на него
    var s = "test";
    var s2 = s;
    Console.WriteLine("s.GetHashCode= " + s.GetHashCode());
    Console.WriteLine("s2.GetHashCode= " + s2.GetHashCode());
    Console.WriteLine(s.Equals(s2));
    Console.WriteLine(s == s);
    Console.ReadLine();

    • @SBeregovoyRU
      @SBeregovoyRU  2 года назад

      Да, не удачный пример. Отработает интернирование

    • @i2um1
      @i2um1 2 года назад +2

      @@SBeregovoyRU даже без интернирования строки копируются по ссылке. С интернированием у всех одинаковых строковых литералов одинаковая ссылка, т.е. изменив литерал в одной ссылке, изменяются все строковые литералы в других ссылках, все в рамках safe кода.

  • @Времявникуда-ш9ц
    @Времявникуда-ш9ц 2 года назад

    На вопросе "36:18 - Какая особенность при передаче ссылочных типов? Ссылочные vs значимые типы.". Вы спросили, будут ли 2 строки ссылаться на один и тот же участок памяти, вы отвечаете нет. Если 2 строки привести к object и сравнить в ReferenceEquals то будет true, а ReferenceEquals как раз таки сравнивает равенство ссылок. Разве здесь не работает правило интервирования строк ?

    • @nikitaryabicov3496
      @nikitaryabicov3496 2 года назад

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

  • @ВячеславДудка-к2м
    @ВячеславДудка-к2м 2 года назад +1

    По поводу string. Да он immutable class, но в нем реализован паттерн flyweight, есть внутренний механизм интернирования строк. Если string s = "привет" и string s1 = "привет" - то это автоматически не схлопнет в один экземпляр на куче и s и s1 разве не станут ссылаться на один и тот же объект?

    • @sp1ne2104
      @sp1ne2104 2 года назад

      и не только, если у тебя есть string s2 = "при" + "вет" это тоже интернируется

    • @RALEOSE
      @RALEOSE Год назад

      Интернируются автоматически только строки, которые заложены во время сборки. Строки, образованные во время исполнения не интернируются, и на то есть причина - это неоправданно дорого. Рассмотрим простой пример, где есть определенная область взаимодействия с пользователем - обработчик запроса в asp net. Допустим, мы хотим, чтоб мы взяли из запроса две строки, сложили их и вернули пользователю. Если бы дотнет интернировал строки, полученные в рантайме, то по окончанию запроса две изначальные строки и одна итоговая останутся в памяти, так как они интернированы. Получается, каждый запрос увеличивал бы использование памяти на три строки. А что будет, если произойдет тысяча разных запросов?

    • @ВячеславДудка-к2м
      @ВячеславДудка-к2м Год назад

      это я знаю, я ж описал ситуацию где идет интернирование в момент компиляции. Кстати, интернирование еще можно вызвать вручную на объекте string

    • @RALEOSE
      @RALEOSE Год назад

      @@ВячеславДудка-к2м мне показалось, там был вопрос, и я на него просто ответил.

    • @ВячеславДудка-к2м
      @ВячеславДудка-к2м Год назад

      👍

  • @dannycyberwalker
    @dannycyberwalker 2 года назад +5

    Впринципе теории вполне достаточно для прохождения собеседования, но я бы больше смотрел на код.

  • @dannycyberwalker
    @dannycyberwalker 2 года назад +3

    37:30 Хм... А разве не произойдет интернирование строк?

    • @VyacheslavTamplier
      @VyacheslavTamplier 2 года назад

      Думал коммент написать, а уже есть. В данном примере это будет ссылка на одну область памяти.

  • @mklmk-vjhbj
    @mklmk-vjhbj Год назад +1

    Не думаю что вы ответите, НО ОЧЕНЬ ХОТЕЛОСЬ БЫ. Перерыл пол интернета, но адекватного ответа не нашел. Почему все таки в типе decimal при добавлении 10 раз числа 0.1 будет не 1.0?..Компилятор боится лишний раз превращать десятичную дробь в целое число? Я знаю что double и float округляют значения после 6 и 15 цифры после запятой, но ведь тут четко написанно 0.1 а не 0.999999999...

    • @SBeregovoyRU
      @SBeregovoyRU  Год назад

      Это не компилятор и его особенности. Это особенности работы процессора и вообще устройства чисел с плавающей запятой. Есть видео на эту тему у Тимофея Хирьянова. Точно в каком видео не скажу

  • @JohnDoe-tm1rv
    @JohnDoe-tm1rv Год назад

    Единственный интересный вопрос Отличие IEnumerable от IQuerable - но на уровень Expression Tree так оттуда и не спустились

  • @Pravda-bw3tj
    @Pravda-bw3tj 2 года назад +1

    когда он сказал про DI я уже за него испугался там столько вопросов можно было не для джуна закинуть)))

    • @timtom489
      @timtom489 2 года назад +1

      Да, как говорил Михаил Портнов, отвечайте только то что вас спросили и не давайте лишнюю информацию) Если спрашивают знаете ли вы сколько времени, надо отвечать да, а не называть время, ибо вас спросили знаете ли, а не сколько сейчас на часах))

  • @syavochka
    @syavochka Год назад

    Вопросы лёгкие, просто почитать документацию и запомнить важное)

    • @vladimirandreev9022
      @vladimirandreev9022 Год назад +1

      Ко всем легким вопросам готов не будешь. Никакая документация не поможет. Память не бесконечная.

  • @goodvin5770
    @goodvin5770 2 года назад

    22:00 (приблизительно и дальше пару минут)
    Почему у него в компиляторе выходит с неточностью (скриншот) , а у меня на VS 2010 ULTIMATE всё корректно?

  • @NikitaJe_
    @NikitaJe_ 2 года назад +15

    Что Я сейчас посмотрел? Что это было? Что за вопросы? Это был Анонс. Выпал с вопроса, Какие свойства есть у Обжекта? Что? Зачем это знать, какие это дает плюсы? Мы что проверяем тренированность памяти? А если Я их не знаю, но понимаю как работают. Просто Я их использую на таком автомате, что вряд ли вспомнить смогу сразу. А где вопрос тогда, - Вот Мы нажимаем на ярлык студии, что первое запускается, какой процесс стартует и запускает остальные? Мне лень разбирать каждый вопрос, там через один муть полная. 90% вопросов это вообще неочем. Особенно побитовые операции, да они используется раз 5 лет, решают 0.9% процента задач. Для какой цели этот вопрос? Это все человек получить и поймет после полу года работы в нормальной команде. Каким образом на навыки половина вопросов влияют? Это теория которая приходит с опытом. Учить насильно ее не получиться, спрашивают всегда разное. Все вопросы разбирать не буду, как сказал автор: Ну потом посмотришь, изучишь.
    Дополни вопросы:
    1)базовые понятия ОПП(наследование, полиморфизм - можно примеры какие нибудь быстрые чтобы реализовал, инкапсуляций - тут базовые понятие зачем(а то Я как то видел код где все паблик, во всех классах, все классы в заголовочном файле написаны, сиди потом сам понимай что там))
    2)IoC, DI, IoC-контейнер
    3)повышающее приведение типа
    4)делегаты лучше просить показать пример, чем спросить теорию
    5)Знания паттернов 2-3 любых. 2-3 знать и уметь реализовывать, остальные названий хватит
    6)Библиотека классов, для чего нужно и шо это такое
    7)Интерфейсы, абстрактные классы. Шо, зачем, когда.
    8)Гит, шо, где зачем
    9)Конвертирование и повышающие приведение, разница.
    10) Ладно вот еще одни так и быть. Джинерики, как где зачем
    Да вроде хватит, потом посмотришь, изучишь дополнишь. Еле еле досмотрел, парня жалко, что он попал на собеседование к человеку который похоже пришел тешить свое чсв ну или Я не понимаю для какой цели половина вопросов.
    На 90% процентов Я отвечу включив студию и за секунду прочитав описание ну или методы какие есть.
    Для программиста важно:
    Мотивация
    Работоспособность
    Обучаемость
    Терпение
    Аккуратность
    Желание совершенствовать навыки
    Стрессоустойчивость вот с такими умниками 2 часа выдерживать разговора где за счет тебя реализуют своё чсв.
    У парня как минимум 3 из 6 есть. Особенно терпение, Я в 4 этапа смог только досмотреть. Как парень только после 30 минут не ушел Я не понимаю.

    • @VetalGimbarr
      @VetalGimbarr 2 года назад +5

      Я вот тоже думал, что на собеседовании будет спрашиваться в основном то, что реально используется в работе, т.е. немного про типы данных, дальше по ооп, про делегаты, события, потоки в шарпе, про дженерики, про ооп 3 столба, подробно про полиморфизм и инкапсуляцию можно, абстракцию, интерфейсы, паттерны, хотя бы основные типа mvc, di, fabrica, singleton, линк спросить, про бд спросить, про транзации, да и уже по рабочей технологии основы, тут на выбор asp, wpf, unity, ну и смежное, если с вебом, то про http, если с wpf, то про windows. Ну и гит, да. Можно по архитектуре пробежаться немного, принципы SOLID спросить и когда их разумно применять. А оказывается, что на собеседованиях спрашивают много теории, которую так сходу всю и не вспомнишь и если ты сидел и тупо делал задачки, писал код именно, гуглил много, а не заучивал книжки, то не пройдешь собеседование) Про то, как я продержался: для меня это не выглядело, как реализация своего чсв, для меня это было так: со мной делятся теми вопросами, которые спрашивают, которые надо бы знать, чтобы устроиться на работу, чем больше пробелов я нашел бы у себя, тем эффективнее прошло собеседование.

    • @NikitaJe_
      @NikitaJe_ 2 года назад +7

      @@VetalGimbarr чсв реализовывал тот кто проводил собеседование. Для какой цели эти вопросы, и что даст знание 80% процентов ничего. Толку от знаний если их не применяешь. Я могу этому мужику так же провести собеседование, подготовлюсь за неделю найду самые дебри и устрою забег с препятствиями.
      Два или три вопроса на базовые вещи, остальное из разряда - а с какой ноги вот вы из дома выходите? Или как вы дышите как происходит это?
      Парень который отвечал если это ты вы держался нормально, то что не ответил это не страшно. У вас собеседование проводили не чтобы понять уровень знаний а чтобы повысить свое чсв, спросить нахрен не нужные не используемые вещи, которые чтобы знать надо просто за час сесть и прочитать все.

    • @TheRainGameTM
      @TheRainGameTM 2 года назад

      🙂

    • @NikitaJe_
      @NikitaJe_ 2 года назад

      @@TheRainGameTM 🤑

    • @timtom489
      @timtom489 2 года назад +1

      @@NikitaJe_ вообще самый хардкорный вопрос будет про оператор goto))

  • @Fr0stick
    @Fr0stick 2 года назад +4

    В целом хорошо, но как то мало про .NET, где про CLR, компиляцию программы, сборку, модификаторы доступа, дженерики, коллекции, linq. Лучше вместо partial классов, спросил бы, например, про отличие абстрактного класса от интерфейса. Про TPL тоже стоило спросить, не согласен с тем, что это не надо трогать, общее понимание должно быть, хотя бы что это такое и зачем нужно

    • @SBeregovoyRU
      @SBeregovoyRU  2 года назад +9

      Понятно, что можно было много чего еще спрашивать. Но у нас тут не марафон на знания .net. Итак собеседование заняло 2 часа.

    • @9285550
      @9285550 2 года назад +1

      В чем отличие абстрактного класса от интерфейса - самый заезженный вопрос. И особенно бесит, когда правильным считается ответ "Класс наследуется, а интерфейс имплементируется". Увольнял бы собеседовальщиков за такое.

    • @ilyal5712
      @ilyal5712 2 года назад

      @@9285550
      Интерфес уже может содержать имплементацию функций. В современном C#, где-то с версии 9.0.
      Прогресс, однако... :)

  • @mv.mmaksm
    @mv.mmaksm Год назад

    Добрый день! Как то можно попасть к Степану на такое же собеседование?

  • @ВолодимирКолягін
    @ВолодимирКолягін 2 года назад +3

    27 минута. Написал гавнокод безобразным стилем, и спрашивает что с него будет. Хорошо что сам не запутался пока писал. По рукам дать некому. Конец вобще убил. Социально адекватного кодера он ищет. Мужик у тебя самого то все дома?)))

  • @AnrelD
    @AnrelD 2 года назад +3

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

    • @timtom489
      @timtom489 2 года назад +1

      Аналогично, у нас многие джунов не читавших Рихтера даже рассматривать не хотят и часто гоняют по паттернам и внутреннему устройству самой платформы, причем далеко не верхами. Вспоминая как я заканчивал универ 5 лет назад, у нас 80% были нулями и ушли в макдак, процентов 15 максимум с гуглом и косяками вывезли бы сделать калькулятор, ещё процента 4 смогли бы запрограммировать алгоритмы быстрой, пузырьковой сортировки, бинарный поиск и алгоритм Дейкстры, на этом всё и вот только один на сотню был такого приличного уровня. В итоге почти все кто хоть что-то умел как-то устроились на последнем году обучения через приходивших в универ рекрутеров, а вот самый умный чувак, имея награды за проекты, возможно из-за скалада своего характера, оказался за бортом и пять лет работает за 20к руб сис админом в поликлинике.

    • @p0k3m00n
      @p0k3m00n 2 года назад +6

      @@timtom489 алгоритмы, которые потом почти некогда не используются в проектах

  • @ИванУмнов-я7с
    @ИванУмнов-я7с 2 года назад +1

    Здравствуйте. Вы упоминали в вопросах про объекты что вроде как в стеке хранятся некоторые метаданные этих объектов. Не могли бы вы кратко сказать, что это за данные и по каким тегам о них можно найти информацию?

    • @SBeregovoyRU
      @SBeregovoyRU  2 года назад

      Почитайте, например, Рихтера

  • @asdasdsdsds1409
    @asdasdsdsds1409 2 года назад

    Привет! Можно ли как-нибудь связаться с участником ? ) Очень интересно с ним пообщаться

  • @sergegreenband7699
    @sergegreenband7699 2 года назад +1

    1. Категорически не согласен по поводу того, что софт-скиллз не тренируются, и по поводу оценки АДЕКВАТНОСТИ человека исходя из рассказов об опыте.
    2. По кандидату в целом - очень слабо и поверхностно, но видно, что парень старался, развивался, а это самое главное в обучении.
    3. В целом же, ценность подобных "интервью", равно как и аналогичных по стэкам Java, Python etc, стремится к нулю, так как заучивание теории не даёт реальных знаний, и не даёт интервьюеру оценить реальные боевые качества, навыки и потенциал интервьюируемого.
    4. Все вышесказанное является отражением личного опыта и субъективным взглядом, и не претендует на истину ни в какой степени.
    Удачи кандидату в начинаниях, а индустрии пожелание оздоровиться и быть в целом поадекватнее (в осуществлении чего сильно сомневаюсь).

  • @aliekseivalkovich5688
    @aliekseivalkovich5688 2 года назад

    Степан, если я правильно помню, то using развернется не в try - catch - finally, а в try - finally, Поправьте , если я не прав.

    • @SBeregovoyRU
      @SBeregovoyRU  2 года назад

      да. верно

    • @ilyal5712
      @ilyal5712 2 года назад

      Да, так и есть. Т.е. using это так называемый 'syntax sugar'.

  • @СерхиоБускетс-ф7я
    @СерхиоБускетс-ф7я 5 месяцев назад

    Это вообще все глупость. я знаете кодил на Делфи, не учил его, просто по базе с Паскаля что-то пробовал писать и смотрел примеры на форумах. Так и кодил. Понятия не имею ссылочный там тип строка или нет, но просто по опыту знаю ,что строка по умолчанию получает пустое значение строки, а если присвоить одной переменной вторую переменную, то это будут две разных переменных, т.е. как бы две разные строки.
    При этом Си шарп тоже самое как понял, но при этом какое то глупое душнилово в книгах и на собеседованиях. Зачем мне это знать? Если один раз написать код более менее объемный, то человек без книг поймет что такое строка, а что такое int. Как подобные вопросы вообще могут проверять скил джуна?
    По вашему я в делфи полное днище, при этом я писал там и парсеры и программы на несколько тысяч строк и с графикой работал. Мне кажется программисты в компаниях - это поехавшие люди, может я лучше код напишу и покажу с комментариями что он делает, а вы уж судите потом знаю я что-то или нет. А задавать вопросы тупые про теорию, да еще связанную с ассемблером или устройством tcp/ip, так это полный бред.
    Отдельной строкой идут тесты на алгоритмы и решение задач, которые нигде не применяются никогда. Просто бред сумасшедших, напоминает историю с дипломами. Вы хотите у нас работать и высокую зарплату? Давайте диплом МГУ, а опыт работы нужен, но как бы вы диплом покажите. Какое-то писькомерство.

  • @АндрейСобко-и6п
    @АндрейСобко-и6п 2 года назад +2

    Кошмар, собесы на джуна самые душные. То ли дело на сеньора, посидели, обсудили прошлые проекты, задачи, решения и разошлись, ждешь оффер. Никаких тебе зачем дабл и децимал.

  • @sergioabromovich4770
    @sergioabromovich4770 2 года назад +3

    А это точно на джуна собеседование ?

    • @timtom489
      @timtom489 2 года назад

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

    • @p0k3m00n
      @p0k3m00n 2 года назад

      Еще попросят написать формулу для расчёта площади фигур))))

    • @sergioabromovich4770
      @sergioabromovich4770 2 года назад

      @@timtom489 но ведь это уже уровень мидла

    • @timtom489
      @timtom489 2 года назад

      @@sergioabromovich4770 согласен, но у некоторых интервьюверов свое мнение на этот счет)

    • @TheDerevtso
      @TheDerevtso 2 года назад

      Зависит от компании. Где-то джун должен написать свой модуль для IDA Pro. Где-то - сказать что-нибудь о том, что float - это не то же самое, что double.