Круто, давайте такой же интервью с Пашей только по больше мидловых вопросов
@antoninatsurankova50064 ай бұрын
Давай с Пашей техником
@Bishamoda10 ай бұрын
Наткнулся на ролик случайно, поскольку готовлюсь сам к собеседованиям и собираюсь менять работу. Павел просто супер специалист, очень легко и понятно объясняет темы. Побольше бы таких видео на ютубе, возможно, тогда и .NET был бы популярнее :)
@dmitryshumarov189 ай бұрын
Как всегда супер! У Павла есть необыкновенный талант объяснять сложные вещи простым языком, при этом делать это так, будто бы он даёт тебе подсказку, или направление движения твоих мыслей и далее ты делаешь выводы сам. Спасибо!
@Tera-h7e10 ай бұрын
Обожаю дот нет и с#, с удовольствием посмотрю это видео 😊
@infinitynoir544110 ай бұрын
Паша огонь, слушать интересно всегда. Илья, как ведущий, тоже. Не перебивает, не мешает повествованию. В общем и целом контент топчик вообще.
@teachmeskills10 ай бұрын
Спасибо большое! Очень приятно понимать, что делаем все не зря) спасибо
@АлександрКудрявцев-щ9ъ10 ай бұрын
Спасибо за ваш труд, как всегда на высоте). Не идеально конечно, но, хорошо получилось. Вот вам идеи которые не разбирались в предыдущих видео и будут интересны вашим подписчикам) соответствуют позиции juna в нынешних реалиях) LINQ, кеширование, дерево выражений, Action filters, Виды загрузок (ленивая, явная, жадная), разобрать виды синхронизации (autoresetevent, manualresetevent), middleware, нормализация бд, работа с аутентификацией, затронуть (cookies, claims, httpClient, OAuth 2.0, OpenID) Так же было бы интересно затронуть такие технологии как redis, RabbitMQ, SignalR
@JinOptimist10 ай бұрын
Большое спасибо за набор тем. Всегда рады такой рода пожеланиям. От них во многом и отталкиваемся. И да, к идеалу мы только стремимся ))
@Duke-Pro10 ай бұрын
Паша - супер. Очень приятно слушать. Спасибо!
@teachmeskills10 ай бұрын
Спасибо большое)
@babkenkhanzadyan10 ай бұрын
Индексы в базах данных основаны не на двоичном дереве, а на B-дереве. Его преимущество заключается в минимизации количества уровней в дереве. Переход между уровнями в B-дереве требует значительных ресурсов, поскольку данные хранятся на жестком диске. Учитывая, что жесткий диск имеет несколько уровней доступа, каждый переход между уровнями в дереве соответствует физическому перемещению данных на жестком диске. Это действие требует значительных ресурсов.
@JinOptimist10 ай бұрын
Спасибо. Поскольку уже несколько человек обратили на это внимание, видимо стоит в следующем видео уточнить эту информацию
@VetalGimbarr7 ай бұрын
@@JinOptimist копнул немного после комментария, можно ещё упомянуть про то, что метод индексирования может быть разным и указывается при создании индекса, например в pg sql могут быть такие: btree, hash, gist, spgist, gin и brin. По умолчанию подразумевается метод btree. Причем каждый метод имеет свои сильные и слабые стороны и предназначен для работы со своим типом данных и под свою ситуацию, не всегда идут btree
@existanz10 ай бұрын
Вижу Пашу ставлю лайк! Даже простые вещи объясняет как остросюжетный триллер))
@teachmeskills10 ай бұрын
Спасибо)
@Werumag7 ай бұрын
Мало, очень мало, надо больше :). Осветили лишь малую долю вопросов. Надеюсь на продолжение.
@teachmeskills7 ай бұрын
Вот же голод - шальная штука) сделаем)
@kasimrahmatov755910 ай бұрын
Кайф для мозга 🙃 очень внимательно слушал, чтобы не оторваться от цепочки, спасибо вам, как всегда у вас классно.
@teachmeskills10 ай бұрын
Спасибо большое!)
@РусланСлободин9 ай бұрын
Очень крутой! Скорее 4 часть!
@БерикСатибалдиев9 ай бұрын
Круто 👍 ,Спасибо , очень приятно слушать!
@eddypartey107510 ай бұрын
Классная серия роликов по C#, все смотрел, все полезные
@Jdivanchik24 күн бұрын
Работа с флагами более медленна нежели чем работа со значениями отдельно с т.з. загрузки ЦП т.к. необходимо выполнить побитовое умножение и после только сравнения. С т.з. памяти конечно же флаги оптимальней её расходуют.
@SuperWolchara10 ай бұрын
Четкий прогер слушать одно удовольствие
@mr.sad_man16418 ай бұрын
Все круто и понятно, сделайте пожалуйста для уровня мидл , такой же цикл и з роликов
@oleggavrilov708310 ай бұрын
41:11 отсебятина, смысл rest не в том что restful api позволяет больше кешировать, а в том что для работы с ресурсами, предоставляемыми сервером, клиенту необходимо знать только идентификатор корневого ресурса, и дальше он сможет получить методы по работе с этим ресурсом и всеми "связанными" с ним из ответов сервиса, тем самым restful api позволяет писать клиенты, которые сами могут понять, каким образом "поменять аватарку в профиле юзера" не захардкоживая методы для "смены аватарки". Вторая часть ответа должна была бы быть о том, что по итогу никто никогда не делает restful api - отдельная тема для дальнейшей дискуссии (почему так, и от чего все так носятся с этим рестом, на деле нифига ему не следуя).
@trial_bot10 ай бұрын
Ура, третья часть, наконец то
@4trvl10 ай бұрын
Отлично, это очень к месту, уже месяц прохожу собесы, опыт 5 лет, ни одного оффера на мидл, вот что значит собеседования, ни разу не проходил их как все, всегда устраивался по знакомствам (4 места сменил) и вот к чему это привело
@JinOptimist10 ай бұрын
да, проходить собеседования и работать это два разных навыка. Сам с этим сталкивался, пусть и в более мягкой форме, чем вы
@Kondratyevv10 ай бұрын
чет сомнительный у тебя опыт) мидла на изи дают если две буквы алфавита связать можешь
@4trvl10 ай бұрын
@@Kondratyevv да не в опыте дело, каждая компания спрашивает какие-то глубокие вещи в которых если ты не разбирался - знать не будешь, на последнем собесе в крупном брокере спрашивали во что разворачивается асинк/эвейт на уровне il (подробный ответ про устройство конечного автомата колбеки и промисы не устроил), также например какие подводные камни при использовании финализатора (ответ про вызов финализатора в произвольный момент/работу критикал файналайзера не устроил, говорит есть ещё одна серьезная проблема с ним), еще пример - глубокое знание работы оконных функций в sql, работа с хранимыми процедурами, спрашивают как бы я настраивал репликации в кафке, а откуда мне знать про это, если я просто пишу микросервисы на орлеанс и закрываю бизнес проблемы этим? Или это по вашему должен знать каждый? И да, примерно минут 40 мы там обсуждали только solid upd. Отвечаю на свой вопрос - объекты с финализатором живут дольше, это является проблемой т.к они отправляются на очередь финализации, после финализации удаление происходит только на следующей сборке (в некоторых случаях сборка может осуществляться раз в пару дней!), также с .NET 5 и в последующих версиях при завершении программы деструкторы не вызываются, поэтому для принудительного вызова деструктора требуется вызвать GC.Collect.
@nv188-x5i10 ай бұрын
@@4trvlжесть какая, и это на мидла? Там наверное челик сам недавно прочитавший эти вещи и теперь самоутверждающийся.
@АлексейАнтонов-ф5ш9 ай бұрын
@@4trvlТак это стандартная практика некоторых работодателей, им сразу нужен сотрудник с релевантным опытом на их стеке и глубокими познаниями в используемых технологиях, с такими запросами только хантить у конкурентов, а не сгребать всех с hh, но они естественно так не делают т.к. на бабки жадные, вот и ищут минимум по полгода сотрудников.
@ВкидимирПодгубенский10 ай бұрын
И да , это не миддловские вопросы - почти всех их мне на выходе со стажировки ( ещё не junior даже) задавали . В целом тут почти всё спрашивают даже на заходе в стажировку в it-конторах Минска.
@teachmeskills10 ай бұрын
Время меняется, но вопросы могут совпадать, это нормально. А вот глубина ответов может отличаться)
@АлексейАнтонов-ф5ш9 ай бұрын
Вопросы не зависят от грейда, у ЛЮБОГО работодателя простой запрос, должен знать как сеньор, а работать за зарплату джуна, а а "глубина" запроса зависит от срочности закрытия вакансии, жадности и наглости работодателя.
@kdenisinfo8 ай бұрын
Абсолютно согласен на счёт тестов и когда большой опыт человек может debugger провести в голове и не надо тесты точно. . Весь код работает хорошо если человек из с++ на с шарп вышел... потому что в с++ не чистит мусор автоматически...
@absolutelyindifferent1599 ай бұрын
Что такое DI и IoC? Можно в следующей части этот вопрос задать
@ЛераАлексеева-с2п10 ай бұрын
Ура, новое видео про шарп, бегу смотреть, кстати есть вопрос недавно человек управляющий одной it компанией в России, сказал что .Net разрабочики можно сказать сейчас уже не котируются и спрос на них падает, подскажите на сколько это правда и стоит ли менять в таком случае язык Help 👉🏻👈🏻 Паше лайк не глядя очень харизматичный специалист 👍🏻
@teachmeskills10 ай бұрын
Про рынок России сложно сказать. Но от крупных компаний пока видим запрос и на обучение, и на спецов. Мб, все ситуативно
@MicP810 ай бұрын
Интересное обсуждение, хотя некоторые простые темы слишком разжевывались, чем создавалось ощущение сложности. Например, бинарные числа и использование битов в качестве флагов просто базовая тема.
@JinOptimist10 ай бұрын
Да, бывает такое. Я часто преподаю на курсах для людей с нуля. Вот и бывает порой, что начинаю объяснять термины, которые большинству программистов и так понятны
@GG-Portal10 ай бұрын
часто базой такой пользуетесь?
@JinOptimist10 ай бұрын
@@GG-Portal Простите, но я не понял вашего вопроса. Какой "Такой базой"?
@GG-Portal10 ай бұрын
@@JinOptimist я писал про бинарное число, он пишет что база...мне и стало интересно)
@mylovegame541310 ай бұрын
Давненько не видел курсов по .NET с Пашей, но зато чаще чем кого-либо вижу на нативе, отпустите человека, у него уже мешки под глазами))) p.s. ну как всегда интересно слушать его)
@teachmeskills10 ай бұрын
Мы его по согласию всегда приглашаем) а по курсам с ним поговорим, наш промах)
@JinOptimist10 ай бұрын
Жена говорит, что мешки под глазами это моё естественно состояние :'-)
@conslex10 ай бұрын
О, отлично. Пошел ставить чайник, зная что следующий час будет интересным)
@JinOptimist10 ай бұрын
Приятного аппетита )))
@asadbekfayziev313710 ай бұрын
А в какой компании Паша работает и много ли таких людей, Он просто все четко отвечает. Лучший!
@teachmeskills10 ай бұрын
Да, в хорошем смысле слова самородок, очень крутой специалист и классный человек! Про компанию - оставляю ему право, но в самом начале ролика мы пишем сведения)
@JinOptimist10 ай бұрын
Я работаю в компании HiQo Solutions. Ну а преподаю в Teach Me Skills )))
@asadbekfayziev313710 ай бұрын
Спасибо за ответы) хчется чтобы был такой ментор и предводитель.
@KidA-hw1zc9 ай бұрын
Кстати, Павел, на занятии вы рассказывали о том, что GC.Collect() будет работать достаточно условно, в формате "запусти сборку мусора как будет время)", но майкрософт говрит "Принудительно начинает сборку мусора.". Так все-таки сборка запустится принудительно и сразу? Хотел бы отметить, что Павел просто прекрасно преподает. Такие сложные абстракции объясняет на каких-то "дельфинчиках") Спасибо!
@justoleksii9 ай бұрын
Фактически, при вызове GC.Collect() сборка мусора может запуститься, но точное время ее запуска и количество собираемого мусора могут зависеть от ряда факторов, включая текущее состояние системы, настройки сборки мусора, объем доступной памяти и т. д. Кроме того, вызов GC.Collect() считается более затратной операцией, так как он прерывает нормальный рабочий процесс программы для выполнения сборки мусора.
@yl37078 ай бұрын
Отлично. Спасибо
@teachmeskills8 ай бұрын
И вам спасибо)
@drVatman13 күн бұрын
Мне показалось, это какой-то общий собес. Без знаний дотнета можно ответить почти на все вопросы
@apostolnonexistent74438 ай бұрын
вау! круто🎉
@anonym1548Ай бұрын
Есть оффлайн курс от Паши по с#?
@teachmeskillsАй бұрын
@@anonym1548 только онлайн
@Sergey1997_by9 ай бұрын
А как давно Денис Кукояка заинтересовался программированием?
@ITibalt9 ай бұрын
На всех собесах в аутсорс компаниях спрашивают Identity, Auth, JWT, OAuth2, OpenID, Identity server. По моему опыту, я как-то плаваю в этой теме, может вы объяснительную устроите😅
@teachmeskills9 ай бұрын
попробуем что-нибудь снять)
@artemivanov214110 ай бұрын
очень поверхностные вопросы, уровень знаний индийский джун
@JinOptimist10 ай бұрын
Хочу обратить внимание, что это третья часть. В первой мы например разговаривали про асинхронность, про коллекции, про дженерики и т.д. И да, мы с самого начала, пытались создать серию роликов для Джунов. Если вы считаете, что есть важные вопросы, которые часто задают джунам, поделитесь пожалуйста с нами. Добавим их к вопросам для следующей части
@jacobjacob806210 ай бұрын
Очень слабые ответы. В чем разница между SQL vs NoSQL, кандидат отвечает в неструктурированных данных. Что мешает в SQL базе создать таблицу с двух полей, где первое поле это GUID, а второе Json? Так само неструктированные данные в SQL, можно сделать, так в чем теперь разница? Так вот разница совершенно в другом - это шардирование и репликация. Кандидат ответил, что индекс это бинарное дерево. Грубейшая ошибка. Там не бинарное дерево, а B-tree. Если бы там было бинарное дерево, очень часто была бы перебалансировка, потому что узел может иметь максимум две ноды, так что никакого там binary tree - нет. Тут же по индексам, что некластерный индекс хранит ссылку на кластерный - это так, но не очень точно. Ведь некластерный индекс можно создать без кластерного, соотвественно некластерный индекс не будет иметь ссылок на кластерный, потому что кластерного нет физически. По поводу глаголов в REST, слабый ответ, не очень понятно в чем разница. Разница вся в идемпотентности и автоматических ретраях в браузере на глаголы. Вобщем на джуна, может ответы и ок, но на миддла уже слабовато будет.
@dropsdotcrypto10 ай бұрын
Дуууушно
@qburanp9 ай бұрын
как нагуглить про ретраи?
@artyom_trustee9 ай бұрын
@@dropsdotcrypto ничего душного, тут даже async-а нет, очень слабо
@trickoch9 ай бұрын
@@dropsdotcrypto на собесе так же будешь отвечать, когда на ошибку укажут в твоем ответе? Замечания ценные очень
@nelfstor8 ай бұрын
Не все Sql базы поддерживают json, mySql не поддерживает, например, а Postgres поддерживает
@ДенисНекий-к4к7 ай бұрын
Время идет ничего не меняется, начитался душных комментов будто опять на скульру заглянул
@ВкидимирПодгубенский10 ай бұрын
Не очень понятное определение REST . Неужели его определяет лишь одно требование отсутствия состояния на сервере? А остальные 5 принципов? А если я начну что-то хранить , то это автомат отрежет возможность кэширования? Для миддла как-то просто ответили. И разве индексы могут быть только древовидными? Мне казалась , что суть индекса - предложить самую подходящую структуру данных для хранения части из реляционных данных. А там реализации есть не только древовидные , хоть и они очевидные монополисты. Ну и про паттерны архитектуры мало вопросов - DDD , CQRS , Modular Monolith Ждём 4-ую часть)))
@JinOptimist10 ай бұрын
REST это дословно REpresentational State Transfer. Или "Передача самоописываемого состояния". Что полагаю вполне можно описать, как отсутствие состояния вне запроса. Если же вы говорите о 5 ограничениях по Филдингу, то полагаю они избыточны, для описания концепции REST. Так например кэширование, это возможный бонус, а не требования, хотя по Филдингу это пункт номер 3. Или например, пункт 1 указывает, что это должно быть клиент-серверное решение. Но подобный пункт для web-сервера, выглядит просто избыточным. Ну и т.д.
@JinOptimist10 ай бұрын
Касательно древовидных индексов, я аж подвис на этом вопрос. Я рассказал, как индексы работают в MSSQL. Если вам известны другие алгоритмы построения индексов в каких либо популярных база данных, поделитесь, буду рад расширить свой кругозор.
@JinOptimist10 ай бұрын
И да, вопросы по шаблонам проектирования я осознанно откладываю на отдельное видео :)
@Kondratyevv10 ай бұрын
DDD это не паттерн архитектуры
@JinOptimist10 ай бұрын
@@Kondratyevv А CQRS паттерн )) Но да, говоря о шаблонах проектирования, я подразумевал условное видео об архитектурных решениях. В которые я собираюсь упомянуть и TDD, хотя это процесс разработки а не шаблон или архитектура, и DDD, по шаблона пройтись. Вот благодаря вам, в этот список ещё и "Modular Monolith" добавил. Так что спасибо ))
@alexsft20249 ай бұрын
Интересно, собеседуемый вообще слышал когда-либо слова "реляционная база данных"?
@JinOptimist8 ай бұрын
А можете раскрыть свою мысль? А то, я как-то не уловил, к чему вы клоните
@alexsft20249 ай бұрын
А что насчет времени инициализации const и readonly? Батенька идите подготовьтесь получше.
@JinOptimist8 ай бұрын
Простите, но не могли бы вы объяснить, какое из моих утверждений вы пытаетесь опровергнуть? Просто выглядит так, словно у вас есть некоторые знания, которые я не упомянул, и вас это сильно беспокоит.
@alexsoft9998 ай бұрын
@@JinOptimist коренное отличие указанных переменных заключается моментом их инициализации. Const значение присваивается при компиляции. А сильно меня беспокоит, глубина знаний учителей.
@alexsft20249 ай бұрын
Неправильно написал enum определение для своей переменной.
@JinOptimist8 ай бұрын
Простите, вы о чём? Вам и правда кажется, что для объяснения, что такое флаги, имеет значения синтаксис? О_о
@someman3453410 ай бұрын
Я уже себе представляю собес с западную компанию. Нужно ли все покрывать тестами - "нет, потому что это ничего не дает". Интервьюер - "хм, а как же концепция что тесты это на подобие двойной записи в бухгалтерии, а как же TDD...". Может быть микросервис быть без своей базы - "нет, потому что он может работать вообще без базы". Интервьюер - "хм... вопрос то был не про это а про общую базу" Вердикт - отказать кандидату потому что любит провоцировать спор, переоценивает значимость своих знаний, не командный игрок.
@nick_stelmakh10 ай бұрын
прям по факту.
@nikvax10 ай бұрын
Ответы нужно выстраивать более открытые. Ответ формата "да-нет", если нет четкого контекста, независимо от уровня специалиста некорректный, т.к. чтобы однозначные ответы давать нужен конкретный кейс. Хотя и до такого подхода доколупаются при желании, что в решениях неуверен и т.д.
@JinOptimist10 ай бұрын
Магия какая-то. Я в видео говорю, что тесты нужны для кода который описывает бизнес логику, вы от моего лица говорите, что тесты не нужны. Я в видео говорю, что микросервис имеет права на существование и без базы. Привожу пример сервиса для скейла картинок. А потом следующей же темой, поднимаем вопрос, нормально ли это, иметь общую базу. Где я говорю, что это плохая практика. Вы же от моего лица выдаёте предложение которое само себе противоречит. Хорошо если ради комического эффекта, плохо, если вы и правда так восприняли мои ответы. А в конце вы от имени западной компании заявляете, что я провалил собеседование, при том что все 10+ лет моей профессиональной жизни, я именно, что на западные компании и работаю. То есть каждое утверждение, что вы делали в своё сообщение, расходиться с реальностью. Это какая-то особая магия вашего восприятия? Или вы начинающий комедиант?
@someman3453410 ай бұрын
@@JinOptimistНе берите в голову. Я добавил свой комментарий потому что считаю что на собесе надо быть поаккуратнее с формулировками, чтобы это не выглядело как сильно личное мнение или вбрасывание понятно чего на вентилятор.
@JinOptimist10 ай бұрын
@@someman34534 Быть более сдержанным на собеседовании, хорошая практика. Но в этой серии видео, я не пытался дать ответ который можно заучить и повторить на собеседовании. Вместо этого, я пытался дать информацию, и некую общую картину. И для этого использую более яркие образы и более простые слова чем в своей профессиональной деятельности. Так что в целом с вашим советом для людей которые проходят собеседование, я согласен. Просто это видео, немного другого формата.
@zeOnni10 ай бұрын
Константы инлайнятся. В этом ключевое различие. Если скомпилировать свою программу с внешней dll в котороы есть константы, а потом подменить на dll где константы бадкт другими, то таоя программа бедет использовать старые значения констант. У работчика как будто есть практика, но он не знает теории и все говорит своими словами и так как он это преимает. Очень поверхностно.
@JinOptimist10 ай бұрын
В первом утверждении, вы совершенно правы. По крайней мере, то как я смог расшифровать ваше сообщение, для меня звучит правильно :)
@JinOptimist10 ай бұрын
Возможно мы забыли уточнить вначале, но сама суть этого видео, в том что бы рассказать о каких-либо понятиях как можно проще. Это не лекция в университете, где каждое слово выверенно, но от того формулировки громоздки, а каждая тем растягивается на долгие часы. Если вы ожидаете такого рода информацию, то конечно, это видео будет для вас поверхностным и возможно не даст вам желаемого. Но для людей, которые впервые сталкиваются с подобными понятиями, такого рода общая информация, будет весьма полезна. На примере тех же констант, если давать полную теорию, как вы того ожидаете, то нужно рассказать и про то, что представляет из себя dll и про процесс билда, особенного как он проходит с учётом внешних зависимостей, нужно было бы вспомнить про GAC и ещё много всего. Но с таким подходом, нужно не короткие видео по часу на десяток вопросов записывать, а начинать полноценный курс на сотни часов. Но это видео, всё же другого формата. И хоть вам, как я понял, это не очень нужно, надеюсь будут те, кому оно принесёт пользу
@JinOptimist10 ай бұрын
Кстати, если вам не нравиться формат, в котором люди говорят своими словами, что вы ожидали услышать? Цитаты из Рихтера? Я просто не совсем понял, какого рода формат, вам было бы приятно слушать.
@zeOnni10 ай бұрын
@@JinOptimist Мне всегда больно когда вместо ответа на вопрос "что такое x? " отвечают "x это когда" или "если мне надо сделать y то ...". Да. Я хотел бы формат, после которого у меня несколько открытых вкладок Википедии на что-то интересное из того что я только что услышал. Тут я почти не услышал какие-то общепринятых терминов для большинства из того про что было рассказано. Если бы в вопросе про yield в начале прозвучало "сопрограмма", было бы здорово
@zeOnni10 ай бұрын
@@JinOptimist хотя это не к формату претензии, а к ответам на вопросы.
@nick_stelmakh10 ай бұрын
Очень слабое интервью. Слабые вопросы. Кучу важных тем вообще не затронули.
@JinOptimist10 ай бұрын
А не могли бы вы подсказать, какие важные темы, нам следует рассмотреть в следующем видео? Мы всегда рады развиваться.
@hr_in_kz3 ай бұрын
@@JinOptimistвопросы на позицию Джуна норм.
@artyom_trustee9 ай бұрын
Очень слабо. Всем плевать на enum flags, а вот ref и val, stack и heap, GC и IDisposable, CAP теорема, нормализация данных, асинхронный код, управление потоками не обсудили. Этот ролик никак не поможет пройти собеседование, никаких вопросов уровня мидл тут нет, даже на джуна этого мало
@JinOptimist9 ай бұрын
Просто, что бы уточнить, а вы точно первых два ролика из этой серии смотрели? Просто в них мы и про ссылочные/значимые типы говорили и про сборщик мусора и многие другие темы поднимали. Ту же асинхронность с многопоточностью сравнивали. Если вам интересные эти темы, то лучше начать с первого ролика, все ссылки есть в начале описания ролика
@artyom_trustee9 ай бұрын
@@JinOptimist окей, но тогда здесь все равно нет мидл тем, ни методов взаимодействия сервисов, ни кап теоремы, ни шардировпния, ни топик с дизайн паттернами, даже идемпотентность не обсудили