DotNet Interview Preparation
DotNet Interview Preparation
  • 20
  • 55 096
Мидл против Сеньора: есть ли разница в интервью на C# мидла?
Дополнительное задание: определите кто из них Мидл, а кто - Сеньор ;-)
0:00 Вступление
0:18 Делегаты и События (delegates and events)
3:44 Entity Framework и базы данных
11:18 Dependency Injection
14:31 Конфигурация .NET приложений
15:50 Безопасность и конфиденциальность данных
18:42 Практическое задание: Рефакторинг
34:44 Практическое задание со звёздочкой: разворот слов
40:11 Обратная связь
41:46 Смена ролей
42:00 Исключения
45:02 Безопасность приложений
47:28 Асинхронное программирование
56:05 LINQ
58:57 Тестирование и отладка
1:00:27 Практическое задание: Сумма уникальных чисел
1:02:36 Обратная связь
#dotnet #csharp #interview #mockinterview
Переглядів: 696

Відео

Что такое Канбан и как научиться им пользоваться играя?
Переглядів 14021 день тому
Ссылка на игру: kanbanboardgame.com
С нуля до мидла - рост в скилах и зарплате в англоязычной компании
Переглядів 37221 день тому
Ахмат переходит на новое место работы (евровую удаленку в Европе) и мы обсуждаем его путь от начальника до джуна, а потом и до миддла. Ахмат расскажет как он дважды становился джуном, дважды миддлом и в итоге получает больше 2х зарплаты, которую получал будучи начальником. 0:00 Вступление 0:52 Переход на новое место работы 1:29 Как работалось в текущей компании 1:49 Два раза стал мидлом 8:08 Об...
Как на самом деле надо искать работу. Советы от бывшего Главного Разработчика в Амазоне
Переглядів 489Місяць тому
Оригинал видео: ua-cam.com/video/557a30Ss_44/v-deo.html Содержание: 0:00 Начало 1:29 Получение собеседования и его прохождение 8:07 Меняйте подход, если он не работает 13:17 Делайте значимые пет-проекты 20:10 Не откладывайте поиск новой работы 25:02 Если не удается получить желаемую роль, ищите смежные роли 36:08 Имейте правильный настрой Заметки: Разделите своё время на работу по получению соб...
Настоящая правда почему никто тебя не нанимает (+ как это исправить) | Реакция
Переглядів 652Місяць тому
Реакция на видео от бывшего рекрутера из Гугла. Оригинал: ua-cam.com/video/wQQ5xNx_tq8/v-deo.htmlsi=PL0VcUMZvAWKwdBW Содержание (включая пункты из видео): 0:00 Начало 2:12 Риск - объяснить рекрутеру, что мы стабильны 5:10 Стратегия поиска 8:18 Соответствие требованиям вакансии 10:25 Резюме должно быть под вакансию 12:48 Будьте дружелюбны 15:49 Будьте собой 19:25 Отвечайте примерами (показывайте...
Пробное Junior C# собеседование (мок-интервью) №2. Теория
Переглядів 993Місяць тому
00:00 - Начало 01:57 - Public, private, protected, internal модификаторы доступа 03:04 - Что такое Сборка 03:40 - Делагаты 07:36 - Обработка исключений 10:17 - Выбрасывание и Перебрасывание исключений 12:38 - LINQ 15:11 - Select vs Where 16:09 - Материализация 17:43 - IEnumerable vs IQueryable 19:22 - Типы классов в C# 21:21 - Ключевое слово sealed 23:07 - Обратная связь Челлендж по трудоустрой...
Пробное Middle C# собеседование (мок-интервью). Часть 3
Переглядів 9612 місяці тому
0:00 Рефакторинг кода 16:48 Обратная связь #dotnet #csharp #interview #mockinterview
Пробное Senior C# собеседование (мок-интервью) №3. Практическое задание
Переглядів 8552 місяці тому
00:00 - Задание 22:30 - Фидбек Челлендж по трудоустройству на валютную удалёнку: boosty.to/job-in-60-days #dotnet #csharp #interview #mockinterview
От слесаря до технического директора в геймдеве
Переглядів 2526 місяців тому
Интервью с Константином Рочевым (Технический директор игровой студии). 0:00 Вступление 0:27 Путь в айти 3:06 Полезен ли университет? 4:04 Программирование в стихах 9:45 Альфа-ритмы для изучения нового 10:43 Первое трудоустройство и дальше 14:06 Проекты в игровой студии 14:54 Научная и публичная деятельность 16:01 Совет желающим попасть в IT 16:53 Будущее IT
Как устроиться на работу после обучения и что такое настоящее программирование?
Переглядів 7196 місяців тому
Интервью с Алексеем Поберием 0:00 О чем ролик? 0:32 Начало пути в программирование 2:45 Центр занятости 5:53 Первая работа 12:30 Переезд в Санкт-Петербург 20:48 Собеседование на первую работу с enterprise flow 31:15 Москва и удалёнка 34:58 Framework PureQML 45:34 Советы начинающим разработчикам
"За кулисами" групповых собеседований
Переглядів 1,2 тис.7 місяців тому
0:00 Введение 0:07 Что такое Персональное собеседование 0:29 Что такое Групповое Собеседование 1:23 Пример группового собеседования 1:30 SOLID 4:47 Исключения 5:17 LINQ 5:47 Типы классов 9:19 Практика: Класс Student 9:44 Garbage Collection 10:47 Практика: Библиотека книг 12:42 Практика: Класс Student 19:09 Статические и экземплярные методы 21:02 Практика: Библиотека книг 25:27 Обратная связь в ...
Пробное Middle C# собеседование (мок-интервью). Часть 2
Переглядів 2,8 тис.7 місяців тому
0:00 Использование LINQ 2:10 IQueryable vs IEnumerable 4:02 IEnumerable в LINQ 4:39 Тестирование и отладка 9:58 Обратная связь: Тестирование и отладка 14:45 Завершение #dotnet #csharp #interview #mockinterview
Пробное Middle C# собеседование (мок-интервью). Часть 1
Переглядів 3 тис.8 місяців тому
0:00 Приветствие 0:08 Обработка исключений 2:42 Безопасность приложений 4:05 Обратная связь: Обработка исключений 6:11 Обратная связь: Безопасность приложений 8:05 Асинхронные операции 10:55 Обратная связь: Асинхронные операции #dotnet #csharp #interview #mockinterview
Пробное Senior C# собеседование (мок-интервью) №3
Переглядів 3,9 тис.8 місяців тому
0:00 Вступление 0:35 Самая сложная проблема 3:04 Самая большая ошибка 5:50 Паттерн "Разделяй и Властвуй" 9:40 Безопасность приложений 13:08 Inversion of control & Dependency Injection 17:39 SOLID principles 18:24 Новые функции C# 19:34 Оптимизация LINQ запросов 21:43 Впечатления 22:46 Обратная связь 43:36 Конец #dotnet #csharp #interview #mockinterview
Насколько сложно войти в АйТи в зрелом возрасте? Стоит ли оно того?
Переглядів 1 тис.9 місяців тому
Интервью с Ахматом - человеком, который решился уйти с должности руководителя на должность джуниор разработчика на C#. 0:00 В этом интервью... 1:12 Об Ахмате 1:39 Предыстория 4:43 Зачем менял профессию 6:07 Собеседования в роли руководителя 7:50 Задание на логику 9:03 HR специалисты 9:35 Подготовка к собеседованиям 12:12 Сложности в первое время 13:56 Ожидания vs Реальность 15:24 Поддержка близ...
Пробное Senior C# собеседование (мок-интервью) №2
Переглядів 8 тис.9 місяців тому
Пробное Senior C# собеседование (мок-интервью) №2
Пробное Middle C# собеседование (мок-интервью)
Переглядів 12 тис.10 місяців тому
Пробное Middle C# собеседование (мок-интервью)
Из миддла малоизвестного банка РФ стал руководителем команды разработки в Германии
Переглядів 36510 місяців тому
Из миддла малоизвестного банка РФ стал руководителем команды разработки в Германии
Пробное Junior C# собеседование (мок-интервью)
Переглядів 10 тис.10 місяців тому
Пробное Junior C# собеседование (мок-интервью)
Пробное Senior C# собеседование (мок-интервью)
Переглядів 8 тис.10 місяців тому
Пробное Senior C# собеседование (мок-интервью)

КОМЕНТАРІ

  • @CrazyElf1971
    @CrazyElf1971 День тому

    А так вообще первый спикер гораздо бодрее, чем второй. Гораздо )) Хотя на задании тоже слегка поплавал, но если чисто по теоретической части, я б подумал, что и на тех лида уже тянет )

  • @CrazyElf1971
    @CrazyElf1971 День тому

    Меня очень бесит, что у OrderSubmit несколько параметров одного типа string. Это может привести и часто приводит к возможности перепутать параметры местами. Особенно если потом ещё какие-то параметры добавятся. Лучше передавать прямо класс Order (ну или там OrderDTO) внутрь метода. Да, с инициализацией класса тоже можно накосячить при желании, но практика показывает, что это бывает реже и легче выявляется, чем путаница при передаче однотипных параметров в методы.

  • @mikhails5471
    @mikhails5471 2 дні тому

    Оба мидла ))

  • @Monah91
    @Monah91 3 дні тому

    Почему оба разработчика в первом задании так зациклились на стретегии? Ну есть у вас в модели тип заказа, ну так напишите фабрику стратегий, скормите фабрике тип и получите нужную стратегию в сервисе заказов, никакие дженерики не нужны. Если использовать нормальный IoC, например autofac (который безуспешно пытался вспомнить Андрей) или писать на .net8, то можно зарегистрировать несколько реализаций одного интерфейса по ключу. А фабрика по этому ключу зарезолвит нужную реализацию, отдаст IoC и тот уже заинъектит в нужный сервис. Есть множество вариантов написания такой фабрики и на .net6 и без сторонних IoC, но это уже похоже на кастыли. Некоторые делают словари с уже готовыми стратегиями (как-то расточительно как по мне), некоторые развлекаются с делегатами (которые почему Андрей посчитал устаревшими и неиспользуемыми). Для себя в очередной раз убеждаюсь, что лычка грейда ничего не значит. Заучивание теории и умных слов, решение типовых задач, а как только шаг в сторону от привычного стека, как всё начинает сыпаться. Я бы посмотрел такое интервью между c# разрабами, но с разным стеком, например между web и desktop, будет интересно, как они друг друга будут валить всякими тонкостями.

    • @CrazyElf1971
      @CrazyElf1971 День тому

      Ну и в чём интерес валить? Понятно, что бэк будет не знать тонкости фронта, а фронт тонкости бэка. И что нам с того, какая польза, какое знание? )

  • @DateMio
    @DateMio 4 дні тому

    По поводу последний практики: такое решение будет работать не правильно. Дистинкт из числе 1, 1, 2, 3 оставит 1, 2 и 3. А нужно что бы осталось 2 и 3, уникальные значения.

    • @DotNetInterviewPreparation
      @DotNetInterviewPreparation 4 дні тому

      Отличное замечание! Спасибо 👍

    • @CrazyElf1971
      @CrazyElf1971 День тому

      Ну вообще обычно уникальными значениями считаются просто все разные значения, т.е. именно то, что выдаёт Distinct. Если нужно отобрать те значения, которые встретились не более одного раза, то так и нужно формулировать задачу. Будет чуть сложнее - через GroupBy, Count и Where.

    • @DotNetInterviewPreparation
      @DotNetInterviewPreparation День тому

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

  • @romanbasin8493
    @romanbasin8493 6 днів тому

    огромная благодарность участникам

  • @vsques
    @vsques 20 днів тому

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

    • @DotNetInterviewPreparation
      @DotNetInterviewPreparation 20 днів тому

      А как вы поняли, что он в телефоне смотрел подсказку? Я не заметил такого.

    • @vsques
      @vsques 20 днів тому

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

    • @DotNetInterviewPreparation
      @DotNetInterviewPreparation 19 днів тому

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

  • @nikolayn4022
    @nikolayn4022 25 днів тому

    Автор не против перезаливов его видосов?

    • @DotNetInterviewPreparation
      @DotNetInterviewPreparation 25 днів тому

      Что вы имеете ввиду?

    • @nikolayn4022
      @nikolayn4022 24 дні тому

      @@DotNetInterviewPreparation на другие площадки, вк видео например. Если это другие будут делать

    • @DotNetInterviewPreparation
      @DotNetInterviewPreparation 24 дні тому

      @@nikolayn4022 Понял, спасибо больше за предложение, но не стоит.

  • @user-or8ep4hp8m
    @user-or8ep4hp8m 29 днів тому

    я тоже использую gRPC)

  • @user-pc2dg3bs6t
    @user-pc2dg3bs6t Місяць тому

    А теперь иди будешь баги исправлять 😅😂

  • @user-ok7sf3ft5g
    @user-ok7sf3ft5g Місяць тому

    56:48 небольшое уточнение, строки хоть и ссылочный тип, но оператор "==" для строк переопределен: public static bool operator == (String a, String b) { return String.Equals(a, b); } т.е. сравнение будет через Equals и в случае когда ссылки не равны, результат сравнения будет определен по данным в строках. Чтобы сравнить строки только через ссылки, используется static метод Object.ReferenceEquals(string1, string2);

  • @user-ok7sf3ft5g
    @user-ok7sf3ft5g Місяць тому

    добавим немного абсурда ) public static void ProcessEntities<T>(this IEnumerable<T> source, Predicate<T> predicate, Action<T>? trueAction, Action<T>? falseAction) { if (source == null) throw new ArgumentNullException(nameof(source)); if (predicate == null) throw new ArgumentNullException(nameof(predicate)); Parallel.ForEach(source, entity => { if (predicate(entity)) trueAction?.Invoke(entity); else falseAction?.Invoke(entity); }); } users.ProcessEntities(string.IsNullOrEmpty, _ => Console.WriteLine("Invalid user"), entity => Console.WriteLine($"{entity} processed"));

    • @DotNetInterviewPreparation
      @DotNetInterviewPreparation Місяць тому

      Отличный функциональный подход! Не скажу, что хотел бы такой видеть на работе, но мне нравится 😃👍

  • @nizuli1347
    @nizuli1347 Місяць тому

    Можете меня также ? Сам студент из Азербайджана, без опыта работы.

    • @DotNetInterviewPreparation
      @DotNetInterviewPreparation Місяць тому

      Ссылка для подписки на рассылку, где я рассылаю приглашения на пробные собеседования, находится в описании канала.

  • @shatalinator
    @shatalinator Місяць тому

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

    • @DotNetInterviewPreparation
      @DotNetInterviewPreparation Місяць тому

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

  • @user-sw4xk2tc8g
    @user-sw4xk2tc8g Місяць тому

    Полезное дело делаете. Благодарю

  • @АлексейАнтонов-ф5ш

    Разница между Ienumerable и Iqueryable, что когда ты запрос к базе делаешь Iqueryable его оптимизирует(sql запрос) и выборка выполняется на стороне sql сервера, в случаи Ienumerable он тащит всю коллекцию и выбирает по месту, это хорошо видно если посмотреть два одинаковых запроса(sql запрос) к БД использовав разные интерфейсы.

    • @DotNetInterviewPreparation
      @DotNetInterviewPreparation Місяць тому

      Если применительно к конкретному случаю - выборке данных из БД, то, да, можно ответить и так. Однако, в общем случае, разница в том, что у IEnumerable методы вызываются последовательно, в то время как у IQueryable формируется дерево выражений, которое впоследствии обрабатывается библиотекой/драйвером. В случае с БД, многие SQL-драйверы заранее оптимизируют запрос к БД, что вы и видите при использовании разных интерфейсов.

  • @dronsan-unity7302
    @dronsan-unity7302 Місяць тому

    вроде как for по памяти меньше берет, а не foreach

    • @DotNetInterviewPreparation
      @DotNetInterviewPreparation Місяць тому

      Отличное замечание, да, можно было сделать чуть лучше по производительности с for-ом 👍

    • @JamesBond-bu8co
      @JamesBond-bu8co 6 днів тому

      @@DotNetInterviewPreparation С foreach-ем кстати непонятная ситуация. Почему-то его называют более медленным циклом, но мои замеры показывают, что в режиме релиза в студии он обгоняет for. Поэтому до сих пор не знаю, какой из циклов эффективнее.

    • @DotNetInterviewPreparation
      @DotNetInterviewPreparation 6 днів тому

      @@JamesBond-bu8co а можете кодом поделиться, которым замеряли?

    • @JamesBond-bu8co
      @JamesBond-bu8co 6 днів тому

      @@DotNetInterviewPreparation сожалею, уже нет, т.к. делал в рамках эксперимента и в специально предназначенном для экспериментов (в широком смысле) проекте. Но это примитивный код, который не сложно воспроизвести - перечисление обычной коллекции (массива) двумя разными циклами, с вызовом сборщика мусора перед каждым замером, запуском таймера и выводом измеренного времени на консоль. Foreach чуть медленнее for если запускать проект в режиме дебага, и чуть быстрее, если в режиме релиза.

  • @Begemotius
    @Begemotius Місяць тому

    Рамка (фон) вокруг собеседников, занимает 75% экрана. Зачем это?

  • @pulsar1934
    @pulsar1934 Місяць тому

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

  • @MrVopr
    @MrVopr Місяць тому

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

    • @DotNetInterviewPreparation
      @DotNetInterviewPreparation Місяць тому

      О, а я даже не заметил. Спасибо большое за комментарий 👍

  • @user-wq2oq8st1u
    @user-wq2oq8st1u Місяць тому

    Было бы неплохо, если бы еще рекрутеры предлагали вакансии, соответствующие моим скилам, а не писали от балды. У меня стоят C#, PHP, JS, TS, но мне чего только не предлагают: и джаву, и плюсы, и пайтон и МЛ какой-нибудь, и геймдев...

    • @DotNetInterviewPreparation
      @DotNetInterviewPreparation Місяць тому

      Есть люди, у которых тоже C#, PHP, JS, TS, но откликаются они на всё подряд, не особо разбираясь - и на джаву, и на МЛ, и т.д. Так почему не может быть рекрутеров, которые тоже не особо разбираются и просто массово спамят всех в надежде, что кто-нибудь да подойдёт?)

    • @user-wq2oq8st1u
      @user-wq2oq8st1u Місяць тому

      @@DotNetInterviewPreparation обычно люди, которые откликаются на все подряд ничего не умеют, так что им без разницы на чем ничего не уметь :)

    • @DotNetInterviewPreparation
      @DotNetInterviewPreparation Місяць тому

      @@user-wq2oq8st1u либо наоборот умеют всё ;-)

  • @user-zq8yf7wg2v
    @user-zq8yf7wg2v Місяць тому

    Очень понравился формат и очень понравились пункты, действительно важно и полезно: Я бывал по обе стороны устройства. Про 10 пункт советую всё же заготовить индивидуальный ответ на популярный вопрос: "Почему вы решили сменить работу?". Тут как раз ответить что-то разумное, но не негативное, при этом дать понять что с нового места работы вы не убежите через пол года. Если вы не можете вообще ответить на этот вопрос это тоже большой минус.

    • @DotNetInterviewPreparation
      @DotNetInterviewPreparation Місяць тому

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

  • @shatalinator
    @shatalinator Місяць тому

    Такая стратегия при найме приводит к тому, что хотят взять Программиста, а в итоге берут Специалиста по прохождению интервью.😆

    • @DotNetInterviewPreparation
      @DotNetInterviewPreparation Місяць тому

      А мне кажется всегда так и было. Будь ты даже самым крутым специалистом в мире, но если ты не умеешь проходить собеседования, например, недостаточно софт скилов, то тебя никто не возьмёт 🤷 И наоборот, знаю примеры, когда у человека не хватало хардов, но брали за счёт софтовых качеств.

  • @huskyfromalaska7647
    @huskyfromalaska7647 Місяць тому

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

    • @DotNetInterviewPreparation
      @DotNetInterviewPreparation Місяць тому

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

  • @user-pw8ix4zt4t
    @user-pw8ix4zt4t Місяць тому

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

    • @DotNetInterviewPreparation
      @DotNetInterviewPreparation Місяць тому

      Да, мне порой так же хочется сказать про реальные собеседования. Однако, как вы по-другому предложите протестировать действительно ли у человека есть нужные знания и опыт?

    • @yaroslavvitalievich5495
      @yaroslavvitalievich5495 Місяць тому

      Честно говоря мне тоже собеседования показалось максимально скучным. Я б после такого собеседования не выбрал бы компанию. Просто рандомный скрининг и вопросы скорее на джуна. Если собеседуют человека middle/senior level, больше хотелось бы видеть собес в ввиде диалога, с обсуждением реального опыта, какие были челенжи или задачи, можно углубиться в несколько тем, но желательно в те, что релевантны для конкретной вакансии. Events вообще архаизм сейчас, я уже много лет даже близко их не видел.

    • @DotNetInterviewPreparation
      @DotNetInterviewPreparation Місяць тому

      @@yaroslavvitalievich5495 рандомные вопросы, так как это собеседование не в конкретную компанию и нет запроса выявить знания в конкретной области.

  • @user-wp1nj5nr2q
    @user-wp1nj5nr2q Місяць тому

    имхо слабоватенько вышло: Проверка списка на нул, проверьте еще на пустой массив? вынести валидацию в отд приватный статик метод. тк CPU bound можно попробовать парралельно запустить Paraller.ForEach например.

  • @shatalinator
    @shatalinator Місяць тому

    Совет для собеседуемых: когда отвечаете - смотрите на интервьюера - по эмоциям видно, что в ответе поплыл куда-то не туда.😆

  • @user-xc8hj4xv3d
    @user-xc8hj4xv3d Місяць тому

    Круто, молодец! интересно, чем ранее занимался, что решил в 27 лет переключиться на программирование?

  • @user-5ry3th
    @user-5ry3th 2 місяці тому

    Зачем музыку так громко? Во-первых, отвлекает. Во-вторых, приходится сильно вслушиваться чтобы понять что говорится. В-третьих, на скорости 2х вообще ужасно звучит.

    • @DotNetInterviewPreparation
      @DotNetInterviewPreparation 2 місяці тому

      Рекомендую смотреть более свежие видео, там со звуком должно быть получше 😉

  • @darkreaper8798
    @darkreaper8798 2 місяці тому

    На синьера еще далеко. Я бы оценил начальный мидл.

  • @DuRacu
    @DuRacu 2 місяці тому

    Олег ЛЕГЕНДА

  • @user-tm8ul5gk5n
    @user-tm8ul5gk5n 2 місяці тому

    тернарный оператор можно было бы добавить

  • @user-yx8nj9mp4f
    @user-yx8nj9mp4f 2 місяці тому

    13:28 добавил метод, нужный для вызова одной строки, якобы можно догадаться, что так будет соблюден SRP. 14:40 "Все круто". 11 строка избыточное отрицание в условии. 33 и 38 нарушение DRY, если не создавать избыточный метод. 22 используется конкретный класс вместо интерфейса, также название не соответствует содержанию, а соответствовало бы userNames.

    • @DotNetInterviewPreparation
      @DotNetInterviewPreparation 2 місяці тому

      Вау, отличное дополнение к тому, что может быть улучшено! 👍👍👍

  • @shatalinator
    @shatalinator 2 місяці тому

    Люблю такой формат видео👍 Ожидал чего-то такого: *users.ForEach(ProcessUser);* но не угадал🧐

  • @alexvalchuk3452
    @alexvalchuk3452 2 місяці тому

    Дослушав ответ про async/await сделал вывод о том, что собеседуемый скорее всего как минимум сеньер-разработчик: очень ровно и уверенно отвечает. Местами скромничает, правда - видимо не до всего еще дотянулись руки. Сталкивался с "лидами" и "главами" отделов, которые имели меньшее понимание предмета. Претензии: 1) почему не слепил ивент из делегата? 2) с Observer начал лепить какую-то дичь, но потом исправился. Правда, на мой взгляд это не реализация паттерна Обозреватель, а использование готового решения паттерна в .net. Реализацией было бы создание класса-паблишера с методов add/removeSubscriber, абстракции ISubscriber с методом Signal. Метод Signal мог бы вызываться по фатку изменения состояния паблишера - например, каждого свойства объекта

  • @user-pg8lk1ip5r
    @user-pg8lk1ip5r 2 місяці тому

    Собеседование уровня middle все же

  • @Gorikvorik
    @Gorikvorik 2 місяці тому

    Извините , это точно Senior собеседование ?

    • @DotNetInterviewPreparation
      @DotNetInterviewPreparation 2 місяці тому

      Если посмотрите предыдущие видео, то увидите, что Олег по факту хотел собеседоваться на миддла, но заодно решил и синьор уровень попробовать. А что именно вас здесь смущает?

  • @vanel9933
    @vanel9933 2 місяці тому

    Где таймкоды????? 😡😡

  • @Happy-Gappy
    @Happy-Gappy 2 місяці тому

    --- "Привет Михаил, расскажи про свой опыт в програмировании" --- "Привет Алексей. Я начал писать какие то простенькие консольные програмки еще в институте. Потом наткнулся на канал по С#. Начал более глубоко погружатся в язык. Понял что мне это нравится. Нашел ментора, чтобы еще больше усовершенствовать свои знания. В результате научился определать приватные конструкторы в классах, присваивать в теле конструктора параметрам свойства которые определены в классе, научился переопределять виртуальные методы без ключевого слова ovveride и с модификатором доступа private. Думаю что у меня достаточно опыта и знаний чтобы претендовать на джуниор вакансию. Вот пришел чтобы окончательно в этом убедится и уже начинать искать работу".

  • @whisper399
    @whisper399 3 місяці тому

    Все встроенные структуры в C# неизменяемые. И так же в Рихтере напрямую написано, что желательно их всегда делать неизменяемыми и на примерах показано почему.(не из-за скорости как он несет точно)

    • @DotNetInterviewPreparation
      @DotNetInterviewPreparation 2 місяці тому

      Не уверен, что до конца понимаю про что вы. Если про встроенные структуры, то мы их итак не можем изменить. И в части ситуаций структуры вполне себе работают быстрее, чем классы из-за накладных расходов на указатель и боксинг/анбоксинг.

    • @whisper399
      @whisper399 2 місяці тому

      @@DotNetInterviewPreparation эм, вы прочитали мое сообщение в отрыве от контекста того, что говорилось в видео. Он говорил, что все структуры неизменяемые, я просто указал из-за чего он так подумал и перепутал. Так же он сказал, что они неизмяемые из-за скорости, я указал, что это не так и что в рихтере есть примеры почему их надо делать неизменяемыми. Я нигде тут не сравнивал скорость структур и классов

    • @DotNetInterviewPreparation
      @DotNetInterviewPreparation 2 місяці тому

      @@whisper399 теперь понял, спасибо большое за уточнение 👍

  • @vasinas81
    @vasinas81 3 місяці тому

    По DDD, Event Sourcing и CQRS очень спорно. Описанная как ивент сорсинг архитектура скорее была похожа на ивент дривен, что несколько разное. В ивент сорсинге события не простооповещение системы, но и источник построения данных (цепочка событий + снапшоты являются источником построения текущего состояния). А все, в конце при разборе оказывается указали на это) Архитектура из практического примера - ну тоже токое, уж если идти к нормальному уровню абстракции, то можно рассматривать что то типа Clean Architecture, там уровней абстракции куда больше и все универсальнее. При обсуждении асинхронности хорошо было бы упомянуть CAP теорему, если мы асинхронно по шине или сагой пытаемся ввести изменения в данные несколько сервисов. Про дедлоки ниже уже отписались) Вообще показалось как будто слишком лайтово для синьора

    • @DotNetInterviewPreparation
      @DotNetInterviewPreparation 2 місяці тому

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

  • @alekseyzen9766
    @alekseyzen9766 3 місяці тому

    Бро, а если я на телике смотрю. Почему у меня в телеке ещё один телек 😅

    • @DotNetInterviewPreparation
      @DotNetInterviewPreparation 2 місяці тому

      Это для надёжности, чтобы если один сломается, ты мог видео на другом досмотреть 😃

  • @serhio0326
    @serhio0326 3 місяці тому

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

  • @TheDirt2208
    @TheDirt2208 3 місяці тому

    С MVC чуть уши не загнулись, 2 сеньора сидят и думают что модель это просто данные, а контроллер это бизнес логика =/ Господа в модели есть DAL, и бизнес логика, контроллер занимается по сути просто роутингом и первичной валидацией. Или у вас вся бизнеслогика пишется в экшенах)? Дальше наверное нет смысла смотреть

    • @DotNetInterviewPreparation
      @DotNetInterviewPreparation 3 місяці тому

      То есть вы считаете, что в парадигме MVC буква C отвечает за ASP.NET контроллеры?

    • @TheDirt2208
      @TheDirt2208 3 місяці тому

      ​@@DotNetInterviewPreparationя наверное зря перешёл от общего к частному, но это было сделано для наглядности. Давайте обратно обобщим и подумаем вот над чем. При проектировании системы мы всегда стремимся к обособленности , что бы изменения в одном из компонентов оказывали минимальное воздействие на остальные части, и MVC не исключение. Если у нас бизнес логика находится на уровне контроллера, то он становится неразрывно связан с моделью, а это уже противоречит нашим принципам)

  • @filippt9304
    @filippt9304 3 місяці тому

    музыка на собесседовании это да )

    • @DotNetInterviewPreparation
      @DotNetInterviewPreparation 2 місяці тому

      Согласен, со звуком надо ещё потренироваться, но и на собеседовании было бы прикольно, если бы была музыка))

  • @igorpak6478
    @igorpak6478 4 місяці тому

    Привет, по поводу задания, мне кажется все зависит от задачи бизнесов, если позволяют ресурсы, то почему бы не выполнять в синхроне, подняли нужное количество тачек и поставить выше балансировщик?) в примере с товарами как будто между синхроном и асинхронном лучше синхрон)) ИМХО Но все зависти от анализа бизнесов и ресурсов Отличный выпуск!👍

    • @DotNetInterviewPreparation
      @DotNetInterviewPreparation 2 місяці тому

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

  • @mv.mmaksm
    @mv.mmaksm 4 місяці тому

    Очень слабо для мидла, даже джунов больше гоняют

    • @DotNetInterviewPreparation
      @DotNetInterviewPreparation 2 місяці тому

      Сильно зависит от компании и обстоятельств. Знаю историю, где джуна за 4 месяца сделали тимлидом, когда вся команда разом уволилась, кроме него. Плюс, даже на один и тот же уровень, требования, скажем в Яндекс, скорее всего будут выше, чем в "Рога и Компы" в небольшом городке в регионе.

  • @raqiw2145
    @raqiw2145 4 місяці тому

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

    • @DotNetInterviewPreparation
      @DotNetInterviewPreparation 2 місяці тому

      К сожалению, чтение статей и книг не гарантирует трудоустройства, это правда. Ну и да, с приватным конструктором тут промашка небольшая вышла, но у кого их не бывает? ;-)

  • @yourownazog8069
    @yourownazog8069 4 місяці тому

    Люблю собесы по дотнету смотреть на Ютубе. Но тут как по мне задачи были очень простые. Я даже не знаю какие тогда требования к трейни. Создать класс?😅

    • @DotNetInterviewPreparation
      @DotNetInterviewPreparation 4 місяці тому

      Простые и сложные - субъективные суждения. Но, в целом, соглашусь, что это не многочасовое собеседование, где из тебя всю душу вынимают))