#10 Собеседование Frontend Senior разработчика из GitLab

  Рет қаралды 51,752

Отсобеседование

Отсобеседование

Күн бұрын

В данном выпуске Виталий Слободин из GitLab, пройдет собеседование на senior frontend разработчика.
Поддержать проект: / otsobes
Если вы хотите пройти отсобеседование, заполните форму forms.gle/o69DSx9QsZciPYYB8
00:00 Начало
00:00:15 Знакомство
00:03:30 Как ты стал мейнтейнром phatomjs?
00:09:15 Путь к фронтенду
00:13:10 Ошибка которая больше всего запомнилась?
00:16:15 Самая большая боль на текущей работе?
00:21:10 Трудности хороших разработчиков
00:24:40 Какие у тебя возникнут сложности если придется менять работу?
00:27:55 Что ты ожидаешь от данного собеседования?
Архитектура
00:30:00 Как правильно выбрать фреймворк?
00:34:50 Как понять что у тебя кровавый энтерпрайз?
00:35:50 Как убедить разработчиков взять Angular?
00:39:20 Зачем переписывать легаси на новые технологии?
00:42:20 В каком случае нужно SPA?
00:47:40 Что думаешь насчет SSR?
00:54:40 Плюсы и минусы BFF (Backend for Frontend)
01:08:00 Стоит ли фронтендерам лезть на бекенд?
01:10:40 Микрофронтенды
01:21:10 REST vs GraphQL
01:33:50 Идеальный TDD
01:43:00 Кодревью
02:11:10 Заключение

Пікірлер: 285
@victorchilari
@victorchilari 3 жыл бұрын
Ребят, обязательно позовите Илью Климина на 20-тый выпуск, будет очень эпично. Он как-то на одном из недавних стримов заикнулся: "я бы пошёл, но никто не зовёт, а самому проситься не интересно". Будет эпично!! Пс: кто шарит, накидайте лайков!
@montecamo
@montecamo 3 жыл бұрын
Только Илью Климова*
@stevepatrakeev2026
@stevepatrakeev2026 3 жыл бұрын
- Какой график работы вы предпочитаете? - Удалёнка по-французски - Это как? - Полный ремотэ
@Nikitosss91
@Nikitosss91 3 жыл бұрын
Это все конечно очень интересно, но знает ли он, что такое эвент луп, а ? Почему не спросили?
@ewixtopgames2004
@ewixtopgames2004 3 жыл бұрын
ахах)
@AquaDiskoteque
@AquaDiskoteque 3 жыл бұрын
Ты просто контекст провалил в синхронный запрос))
@smith-dev
@smith-dev 3 жыл бұрын
Я сторонник радикальной идеи, что ивентлуп нам не нужен
@AquaDiskoteque
@AquaDiskoteque 3 жыл бұрын
@@smith-dev Нет скрипач, такой ивентлуп нам не нужен.
@YuriiKratser
@YuriiKratser 3 жыл бұрын
Огонь!!!!!
@alexpipin3693
@alexpipin3693 3 жыл бұрын
хотели вопросов по языку? хотели вопросов по общим понятиям? хотели вопросов углубленных по движкам? хотели вопросов по архитектуре? получайте айтибороду)))
@itbeard
@itbeard 3 жыл бұрын
Не плохо 😅
@hafnow4093
@hafnow4093 3 жыл бұрын
Ребята, это было не собеседование. Это разговор о "высоких материях":) Вы бы хотя бы пару вопросов ему задали из джуниорских:)
@user-mm3sd3uh6y
@user-mm3sd3uh6y 3 жыл бұрын
да, этот чувак вообще очень прошаренный
@ohtori7339
@ohtori7339 3 жыл бұрын
Наконец-то, дождались. Спасибо, было интересно)
@the_inalienable_dreamless
@the_inalienable_dreamless 2 жыл бұрын
На сеньора он может и проходит. А на джуна пройдет?
@d_r_robot
@d_r_robot 3 жыл бұрын
Уххх, впервые смотрю Senior! Топ контент!
@romantiukh6753
@romantiukh6753 3 жыл бұрын
Очень круто, ждем новых выпусков!)
@user-jt3kb6us6l
@user-jt3kb6us6l 3 жыл бұрын
Лучший выпуск, спасибо огромное за него !
@Epic0n
@Epic0n 3 жыл бұрын
А где вопросы типа "Чем отличается let и var" :)
@dipzera1025
@dipzera1025 3 жыл бұрын
улыбнуло :D
@maksympinchuk9057
@maksympinchuk9057 3 жыл бұрын
Опа, вот так выпуск под выходные! Лайк авансом!
@user-tv3dm3tu5z
@user-tv3dm3tu5z 3 жыл бұрын
Очень интересный выпуск, спасибо
@skyroses6817
@skyroses6817 3 жыл бұрын
Ну, тут просто без комментариев. Достойный юбилейный выпуск. Я под впечатлением.
@malahov_slava
@malahov_slava 3 жыл бұрын
Спасибо за отличный формат , который можно ставить фоном когда прокрастинируешь , чтобы было не очень стыдно этим заниматься. P.S очень круто строить и расширять себе Roadmap, исходя из задаваемых в выпусках вопросов.
@nerrisy8839
@nerrisy8839 3 жыл бұрын
Черт, меня раскрыли
@ggg-tq9be
@ggg-tq9be 2 жыл бұрын
Я думал я один так прокрастинирую :)
@it2341
@it2341 3 жыл бұрын
Вот прям отлично, длаешь спецов! И побольше )))
@user-qt5dr3tl2g
@user-qt5dr3tl2g 3 жыл бұрын
Очень круто, отличное собеседование
@ivanp7697
@ivanp7697 3 жыл бұрын
уууух, мы дождались сеньора! Ура))
@artik3587
@artik3587 3 жыл бұрын
Хорошие вопросы, спасибо. Немного не хватило вопросов по перфомансу и опыту решения поблем, работе браузера, а так же вопросов аля «расскажи как реализовать свой реакт/агнулар/редакс», возможно про виды атак и защиты от них. А в целом очень приятно было послушать. Особенно с код ревью - отличная идея, возьму на вооружение!
@shnuyok
@shnuyok 3 жыл бұрын
Отличный формат собеседования на Senior. Спасибо! На вас теперь однозначно можно ссылаться в обсуждениях о том, как проводить собеседования опытных разработчиков. Проверка процедуры ревью кода - огонь! Немного удивило, как Виталий осознанно пропустил всю эту заварушку в блоке else forEach-а с созданием сета/конвертацией обратно в массив устроенную лишь для того, чтобы воспользоваться этим set-ом один раз и не вставить в children дубликата. Достаточно было в один проход проверить наличие элемента перед вставкой
@TheTexPro
@TheTexPro 3 жыл бұрын
Спасибо! классный выпуск
@maybe8037
@maybe8037 3 жыл бұрын
Не знаю, насколько хорошо мы удовлетворили Виталия 😂 Виталий остался доволен, по лицу видно
@mlazebny
@mlazebny 3 жыл бұрын
Хмм, а почему не спросили как складывать 5 + '33' или чем отличается const от let?? Думаю, он бы удивился
@user-mm3sd3uh6y
@user-mm3sd3uh6y 3 жыл бұрын
удивился наглости и хамству со стороны собеседователей
@BearVodkaAndValenki
@BearVodkaAndValenki 2 жыл бұрын
И не смог ответить)
@IYaphtes
@IYaphtes 3 жыл бұрын
Также ОЧЕНЬ круто, что подняли все эти абстрактные вопросы вроде SSR/SSG, микрофронтенды, архитектуры сетевого общения, BFF, а не вся вот эта заезженная и так всем понятная низкоуровневая техническая муть вроде эвент-лупа, с которым разобраться не составляет никаких проблем!
@777Vasya77
@777Vasya77 3 жыл бұрын
Это не собес, а вопрос - ответ! Отличный выпуск 💪
@glyukoza3
@glyukoza3 3 жыл бұрын
Как по-моему, хороший формат собеседования, вопрос-ответ
@igorbond2823
@igorbond2823 3 жыл бұрын
Предвкушаю что будет интересно, но пока нужно поработать )
@Alendorff
@Alendorff 3 жыл бұрын
Классный выпуск. Отлично показывает что обычно едва ли кто-то понимает как собеседовать на сеньоров ) прошел или не прошел это больше вопрос некоей "заслуженности" + понравился/не понравился по софт скилам. Иными словами, выходит что важнее насколько человек красиво может рассказать о своем опыте и выдать себя за сеньора (это не в укол Виталию, если что), чем ответить на 30 каверзных вопросов по типу тех что спрашивают у джунов/мидлов. Отчасти так и должно быть, уважаемые люди с опытом не должны заново вспоминать схему прототипного наследования в js перед собеседованием. Но интервью получилось скучноватым, не в жанре "отсобеседования". P.S. В код ревью почему-то никто не сказал про типы для сигнатуры функции (ну хоть jsdoc, раз на js), по мне это сразу request changes (я что должен всю реализацию читать, чтобы понять что там передалось и зачем?) + теста на функцию нет.
@xenm85
@xenm85 7 ай бұрын
Собесующие тут прям очень классные. Так быстро завалить сеньора это надо уметь. Уровень видно. Без сарказма
@isfland
@isfland 2 жыл бұрын
Было бы круто организовать секцию код-ревью таким образом, чтобы ревьюверу не приходилось тысячу раз переключаться с вкладки Overview на Changes и обратно
@pavlomiklashevych1758
@pavlomiklashevych1758 3 жыл бұрын
Несколько замечаний по поводу ревью кода: - именование было названо, но не предложено нормальных вариантов. Это субъективно конечно, я бы назвал mergeCategories функцию и аргументы: categories, newCategories. - хранение данных в виде массива (то что функция возвращает). Структура данных разная. Я бы не хранил в первом элементе объект описывающий категории а во втором его ключи. Можно иметь отдельную функцию под рукой, по виду Object.keys(obj).map(Number), и в случае необходимости вызвать ее. Нет смысла хранить одни и те же данные в разных формах и поддерживать их актуальность. - применениe Object.keys(obj).forEach для перебора всех свойств объекта. Для это есть for .. in loop. Строки в числа все равно надо будет переводить, но мы не будем в памяти создавать массив, который в целом не используется по назначению. - мутация categories. Была названа, но не прозвучало объяснение почему это плохо. По сути первой строкой осуществлялся merge объектов. Опасность заключалась в том, что если в объекте newCategories попались бы ключи которые есть в categories, то мы бы перезаписали значения по этим ключам. Таким образом мы бы потеряли текущие children у существующей категории. Никто не спросил как избавиться от мутирования в первой строке. Можно было в Object.assign передать пустой объект первым аргументом. И сохранить затем в константу результат const merged = Object.assign({}, categories, newCategories), либо деструктировать объекты const merged = {...categories, ...newCategories}. Было бы интересно увидеть как в гостя с ES6 дела. В целом на счет мержа не уверен, так как мы и так перебираем свойства newCategories и можно дописывать значения в цикле, обрабатывая заодно ситуацию с повторяющимися ключами, если необходимо. - отсутствие комментариев по коду. Я бы попросил автора кода добавить комментариев, объяснить каким образом происходит трансформация. Это бы повысило читабельность кода и понимание его в дальнейшей поддержке. Чтобы у того кто читает не возникало вопросов что тут происходит.
@alexs7931
@alexs7931 3 жыл бұрын
А как Вы думаете зачем одновременно parrent, children, level? В бинарных деревьях например достаточно id элемента и id его родителя, хотя для html меню это может пригодиться.
@pavlomiklashevych1758
@pavlomiklashevych1758 3 жыл бұрын
@@alexs7931 к сожалению я не силен в этом вопросе. Но наличие и children и parentId звучит логично.
@kulakofft4
@kulakofft4 3 жыл бұрын
деструктуризацией вида "const merged = {...categories, ...newCategories}" вы не решите проблему, которую сами озвучили. Она так же благополучно перетрёт уже имеющие данные по существующим ключам.
@pavlomiklashevych1758
@pavlomiklashevych1758 3 жыл бұрын
@@kulakofft4 да, в новом объекте. Но всегда доступен старый чтоб взять оттуда оригинальных children
@gapon.vitalii
@gapon.vitalii 3 жыл бұрын
Крутое интервью! А можно ссылку на доку от компании nix, для фанатов ангуляра?
@Shoknik
@Shoknik 3 жыл бұрын
Очень крутой формат собеседований, интересно смотреть и так держать, продолжайте, очень жду еще сеньоров! :) Позволю себе немного критики: По моему мнению, собеседование получилось больше форматом подкаста. Виталий показал отличные знания современных технологий, но эти вопросы больше соответствуют вакансиям технического менеджера или даже архитектора. Мне лично не хватило вопросов по технике, не получилось составить мнение насколько Виталий качественно пишет код и насколько хорош как разработчик.
@andreykostuchenko7707
@andreykostuchenko7707 3 жыл бұрын
все супер, было бы классно добавить еще в собес с сеньером практические задания кроме код ревью)
@leto_alex
@leto_alex 3 жыл бұрын
Раз в год лайкаю кого либо, а комменты можно по пальцами посчитать. Но это видео заслуживает и того и другого)))
@AquaDiskoteque
@AquaDiskoteque 3 жыл бұрын
Нормальный чел. Согласен с ним полностью, я документацию каждый год перечитываю и все равно пробелы есть.
@nastyazelenenkaya9889
@nastyazelenenkaya9889 2 жыл бұрын
сразу видно компетентный специалист 👍
@denpol9956
@denpol9956 3 жыл бұрын
Наконец-та что-то интересное
@blacktechnology6496
@blacktechnology6496 3 жыл бұрын
Будут ли собесы из других сфер айти? Датасайн, например
@gowking
@gowking 3 жыл бұрын
Больше технических вопросов , пожалуста ..
@JaneDoe-od4ep
@JaneDoe-od4ep 3 жыл бұрын
"Мама, у меня микрофронтенд"
@du_mond5824
@du_mond5824 3 жыл бұрын
Больше бы задач, было бы интересно, как сениор их решит
@pavlomiklashevych1758
@pavlomiklashevych1758 3 жыл бұрын
Замечание к ведущим: хотелось бы слышать формулировку вопроса так, чтоб проверять человека на знания, а не на мнение по той или иной теме. По итогу сложно сделать вывод в каких случаях что применяется.
@user-mm3sd3uh6y
@user-mm3sd3uh6y 3 жыл бұрын
на этом уровне архитектурном уже нет едино верных решений, есть только разные варианты и они взвешивают аргументы за и против
@maximvoloshin7602
@maximvoloshin7602 2 жыл бұрын
Обоснование своего мнения и есть ответ. Показывает с каких сторон ты подошёл к вопросу, чьи мнения учёл, кому сделал хорошо, а кому - плохо.
@CyberGenius777
@CyberGenius777 3 жыл бұрын
Хоть бы это было первая часть. Вторую жду, что вы будете у него спрашивать про джыЭс, реакт и еще чего-нибудь и евентлупе
@melomalo1682
@melomalo1682 2 жыл бұрын
А можно попросить прикладывать гит репы если это middle или senior
@ivangoose4585
@ivangoose4585 3 жыл бұрын
Ничего не понятно, но очень интересно!!!!! =)
@user-vv6jx8qg4v
@user-vv6jx8qg4v 3 жыл бұрын
По крутишься в этом всем года 3 и все будет понятно
@nick_webdeveloper
@nick_webdeveloper 3 жыл бұрын
все кто говорят, что надо было то надо было это, просто даже не поняли аббривиатуры))))) а выпуск интересный. не тупые вопросы в лоб, и уже более о фундаментальных вещах! выпуск топ
@AquaDiskoteque
@AquaDiskoteque 3 жыл бұрын
Узнал прямо таки новое по поводу JSON-RPC, действительно графQL конечно стоит ради типизации согасен. Виталий прям пиздатый спец.
@tomsawyer5761
@tomsawyer5761 3 жыл бұрын
Теперь мы видили все, когда будет такой выпуск где вас будут собеседовать?
@dmitryvarnavskikh5648
@dmitryvarnavskikh5648 3 жыл бұрын
А теперь давайте Сеньориту! Очень хочется посмотреть! :)
@user-mm3sd3uh6y
@user-mm3sd3uh6y 3 жыл бұрын
таких не существует в природе
@DmitriiRepnikov
@DmitriiRepnikov 2 жыл бұрын
@@user-mm3sd3uh6y как же ты ошибаешься
@user-mm3sd3uh6y
@user-mm3sd3uh6y 2 жыл бұрын
@@DmitriiRepnikov чет я забыл уже , о чем речь то была, какой синьорите?
@user-wn7pq9jj5p
@user-wn7pq9jj5p 3 жыл бұрын
Приятно смотреть на собеседуемого, быстро реагирует на вопросы и аргументирует свои ответы. Вдвойне приятно, что он из моего любимого города, Ростова-на-Дону!!!
@user-vv6jx8qg4v
@user-vv6jx8qg4v 3 жыл бұрын
Сочувствую
@armentorosyan8268
@armentorosyan8268 3 жыл бұрын
Привет из Дгту
@olenahlukhovska8605
@olenahlukhovska8605 2 жыл бұрын
Все рады)) но Виталий готовился к ивент лупам и логам ))
@kulakofft4
@kulakofft4 3 жыл бұрын
Про ревью - почему структура категорий должна быть представлена именно двумя объектами? Зачем? Я, если честно, не понял, почему задачу решить нужно именно так, но по ревью у меня возникло много вопросов.
@frontender
@frontender 3 жыл бұрын
Капец конечно синьор!) Код ревью особенно. Пойду отправлю резюме в Gitlab может и меня возьмут
@smith-dev
@smith-dev 3 жыл бұрын
Получился приятный подкаст :) Не хватает хардовых вопросов, по типу ci/cd или как реализовать SSR самостоятельно и сколько вебпак-конфигов тебе понадобится :D
@user-vu6hn4ul2i
@user-vu6hn4ul2i 3 жыл бұрын
Опять же, это не хардовые вопросы, а нишевые. CI/CD вообще считается парафией DevOps. Но, в любом случае, если человек плотно работает с этим, то для него это просто, а если нет - то грёбаная магия. Хотя, зачастую, можно долго работать с инструментом и не понимать, как он делает грёбаную магию. Просто выучил заклинания и сиди кастуй.
@olezhonnv3215
@olezhonnv3215 3 жыл бұрын
@@user-vu6hn4ul2i В жс так тепеь и есть. На уровне рецептов большинство и работает. Задолбешься все это разбирать. Вот как бабель работает под капотом? Или вебпак? Это долго и нудно, да и не нужно. Хайд баттон, шов баттон - вот основной спектр задач.
@soogardev
@soogardev 3 жыл бұрын
Уговорили, подписка
@DmitriPisarev
@DmitriPisarev 3 жыл бұрын
Очень жизненно. Сеньор может спокойно иметь пробелы в самых базовый вещах (Object.assign? Камон мэн!), и от этого его проф. пригодность не пострадает. Очевидно, что сила Виталия в софт-скиллах и в накопленном опыте, его не как справочник по JS нанимают. Такого человека было бы приятно видеть в качестве старшего коллеги, без гонора и прочего говна.
@pavelnenashev4353
@pavelnenashev4353 Жыл бұрын
то есть, джун может несколько лет оттачивать навыки трепа и потом пройти собеседование на синьора
@DmitriPisarev
@DmitriPisarev Жыл бұрын
@@pavelnenashev4353 нет. Он должен съесть пуд соли и осиньйорится. Просто выучить наизусть MDN недостаточно.
@Igor-yh4gl
@Igor-yh4gl 3 жыл бұрын
Почему про тесты никто не сказал в ревью. Как можно писать на жс без типизации и тестов.
@bubblesort6368
@bubblesort6368 3 жыл бұрын
Изи)
@maximvoloshin7602
@maximvoloshin7602 2 жыл бұрын
Можно.
@old-empire
@old-empire 3 жыл бұрын
Нужно больше код ревью, если есть возможность.
@evgenyshipko
@evgenyshipko 3 жыл бұрын
Подсказали по код ревью все по сути. Я удивлен, думал, что собеседуемый лучше справится.
@danilkochnev8162
@danilkochnev8162 3 жыл бұрын
Класс
@andrii5791
@andrii5791 3 жыл бұрын
Давайте больше синьйоров-помидоров и стронг мидлов) хватит джунов уже в выпусках 1-9
@user-zs7kr6yp2s
@user-zs7kr6yp2s 3 жыл бұрын
с map все таки довольно тривиальная ситуация сложности, видимо есть проблемы с алгоритмами)
@stepanmas
@stepanmas 2 жыл бұрын
Код в ревью не рабочий, нет проверки на undefined для newCategory. Ревью не удалось)
@igorbond2823
@igorbond2823 3 жыл бұрын
Вот это топчик собес, побольше бы таких, но чуть и кода затронуть и архитектуры. А что касается "команде нужно будет учить TS" - имхо - его и так уже нужно знать. Мне например как то диковато без типизации. Сейчас есть одна приложуха на поддержке с допиливанием фич, которая писалась другим челом с TS без документации, и вся типизация в any, хреново ковырять.
@user-uc1yt7fu8j
@user-uc1yt7fu8j 3 жыл бұрын
есть мнение что те ребятки кто не уважает протоколы просто говноделы, а any вообще зашквар
@igorbond2823
@igorbond2823 3 жыл бұрын
@@user-uc1yt7fu8j согласен. А что касается any - он неявный - а это значит что просто забили на типизацию что конечно же не перестает быть зашкваром. Но это по сути то же самое что голый JS - тоже получается зашквар? ))
@user-uc1yt7fu8j
@user-uc1yt7fu8j 3 жыл бұрын
@@igorbond2823 смысла просто нет тогда брать ts, а js писался на коленке в минимальные сроки и я честно удивлен как у них появился такой крутой в плане возможностей язык
@igorbond2823
@igorbond2823 3 жыл бұрын
@@user-uc1yt7fu8j ну если брать именно мой пример - там angular, так что TS по умолчанию - просто наверное лень было типизировать, или спешили. А что касается JS - он как бы развивался - и много его косяков убралось, ну и фич добавилось Я думаю, за 20+ лет почему бы и не стать крутым языком.
@olezhonnv3215
@olezhonnv3215 3 жыл бұрын
А кложуру нужно знать? А что значит, знать ТС? Два дня - почитать по диагонали тутор. И дальше по ходу, на практике. Там нечего знать. Через неделю адекватный жс разраб пишет на ТС. А через 2 недели уже и подводные грабли знать будет.
@dmitriystoyanov933
@dmitriystoyanov933 3 жыл бұрын
Прикольно, а мне 34 года и я бьюсь последние пару недель на собесах за свой первый оффер на джуна...
@DevOps1
@DevOps1 3 жыл бұрын
Четко, а я еще только учиться начал в 34).
@richarddaniel7088
@richarddaniel7088 3 жыл бұрын
Это дно
@dergunovalexandr
@dergunovalexandr 3 жыл бұрын
Не отчаивайся. Мне тоже 34 и в понедельник уже первый рабочий день) сначала будет несколько неудачных собесов, привыкаешь, освоишься. Потом начнёшь получать оферы.
@dmitriystoyanov933
@dmitriystoyanov933 3 жыл бұрын
@@dergunovalexandrспасибо за поддержку. Я не отчаиваюсь, в поисках уже две недели. Первый тех собес неплохо я прошел, в понедельник еще два тех собеса и во вторник два. Кстати, вот что мне интересно, скок тебе зп дают? Я так понял первая работа джуном? Я прошу 800-1000 долларов на 500 категорически не согласен.
@dergunovalexandr
@dergunovalexandr 3 жыл бұрын
@@dmitriystoyanov933 не, я на мидла устроился. В вакансиях, на которые я собеседовался ЗП была от 120 до 150к. Вот, ближе к верхнему диапазону получилось.
@turok9661
@turok9661 3 жыл бұрын
У нас тоже полностью свободный график)
@boredexill
@boredexill 2 жыл бұрын
а где же вопросы, по типу как работает js, способы дебага кода на js, как искать утечки памяти, как работает браузер, как работает event loop, какие паттерны программирование знаешь, какие их виды, SOLID, подходы по проектированию REST и т.д. В последние время довольно часто, почему-то именно такое спрашивают на собеседованиях, а не просто поговорить, к сожалению ))) Вот бы видео где все подобные вопросы и темы подымаются)
@bringoff
@bringoff 3 жыл бұрын
Первое собеседование на канале, которое я не выключил из-за чувства неловкости за кандидата.
@bubblesort6368
@bubblesort6368 3 жыл бұрын
Мне кажется если бы они начали спрашивать как работает та или иная перделка в браузером апи как они любят, то где то бы точно завалили)
@1654045
@1654045 2 жыл бұрын
37:14 от какой компании взять стайлгайд? Слово съел.
@Ogrutsov
@Ogrutsov 3 жыл бұрын
Посмотрел 5 минут как он делает ревью. Возмутился. Начал читать комментарии в надежде найти того, кто напишет об этом. Возмутился. Пишу теперь свой коммент. пунктом номер 0 я б обратил внимание на следующее: - по примеру использования из "overview" - ясно, что задача простая, но реализовано сложно. - сommit message, и тайтл PRa не понятны (а если с подобным названием 100 PR-ов?) - название файла не отражает понимания что в нем (category.js это что? это одна категория? будто там константа одной какой-то непонятной категории лежит). - название метода может трактоваться по разному, а если глазами пройтись по параметрам, то вообще вводит в замешательство. - метод возвращает массив, зачем? по поставленной задаче, я понял, что тут мы добавляем возможность обновлять категории. Зашел объект категорий - ожидаю новый объект с обновленными категориями. Это без высоких разглагольствованиях про сайд эфекты и чистые функции и тд. - где тесты? которые так же пояснили бы мне поведение этого метода? И не пришлось бы писать overview. - На крайняк где комментарии? - и только после того, как мне стенат +- понятно что тут будет сейчас происходить, я б начал читать код. Итеративно: сперва поверхностно, а потом вдумчиво. это первое что в голову пришло. MESSAGE: я б сказал переделать и здесь ревью должно было быть закончено. Код должен быть переделан так, что б было понятно не только автору пр-а, а и всем, кто этот код будет читать и использовать в будущем. upd0: в итоге делали ревью пол часа на 17 строк кода. На строчку кода 2 минуты грубо говоря...
@alexandroppolus
@alexandroppolus 2 жыл бұрын
На код-ревью чувак вообще знатно облажался. Для чего map(Number) - не вкурил, хотя известно же что ключи - строки. Плюс, там надо обновлять чидрены только у старых объектов, так как у новых они уже корректные. Как следствие не нужен Set для чилдренов, да и для массива root, потому что гарантируются добавления уникальных элементов.
@egorer5300
@egorer5300 3 жыл бұрын
11й выпуск, не?
@dmitriibodrov8970
@dmitriibodrov8970 3 жыл бұрын
Понравилось то, что было похоже на собеседование, а не очередной экзамен с вопросами "... а что выведется в консоль?". Жаль, что в жизни собеседования чаще всего это не беседа, а допрос/экзамен.
@j___ray
@j___ray 3 жыл бұрын
А как без экзамена понять может ли человек реально выполнять задачи, а не просто отлично льет воду?
@dmitriibodrov8970
@dmitriibodrov8970 3 жыл бұрын
@@j___ray Не уверен, что если человек точно как в букваре рассказал что такое this, контекст, замыкание, ивент луп и покрасил прямоугольник в центре экрана, то он сможет принять верное решение нужен ли на проекте ssr, какой фреймворк выбрать, городить bff или обойтись гейтвеем. Многое зависит от того какие у вас задачи. Может у вас все выбрано, настроено, задачи проработаны и, требуется кодить в духе бери больше - кидай дальше, то наверное, вам дорогостоящий синьор не нужен.
@j___ray
@j___ray 3 жыл бұрын
@@dmitriibodrov8970 Senior Developer это не о принятии решений вами перечисленных, этим, как правило, занимается лид либо архитектор. Не поймите превратно - это очень даже нужные навыки, но Senior в первую очередь должен писать код. И я не говорю просить словами объяснить, можно же просто решить небольшую задачку.
@dmitriibodrov8970
@dmitriibodrov8970 3 жыл бұрын
@@j___ray Ну вот Виталий код ревью провел, на мой взгляд, вполне тема синьёрства раскрыта )). Можно было Виталию дать задание написать этот самый модуль по добавлению категорий, просто времени ушло бы больше. Про лид/архитектор - не в каждой компании есть подобные позиции и зачастую решения принимают те, кто занимают должность "синьёра".
@user-db5zt3vb1x
@user-db5zt3vb1x 2 жыл бұрын
А как же gRPC, Swagger ?
@sL...
@sL... 2 жыл бұрын
Все клёво пока не дошёл до ревью)
@gapon.vitalii
@gapon.vitalii 3 жыл бұрын
Что такое бфф, если я правильно услышал?
@zuzelstein
@zuzelstein 3 жыл бұрын
Google: The BFF Pattern
@MrGlorian
@MrGlorian 3 жыл бұрын
Best friends forever
@xenm85
@xenm85 7 ай бұрын
Позовите меня уже на собес )) Он работает с СОРМ, ему есть что рассказать )
@alexanonymous5823
@alexanonymous5823 3 жыл бұрын
почему вы не задали ему вопросы по ивент лупу в консоль??? это была бы бомба=)) если есть возможность пожалуйста спрашывайте больше конкретных вопросов=)) в любом случае спасибо=))
@just-a-ride
@just-a-ride 3 жыл бұрын
Больше похоже на подкаст, чем на собеседование.
@denpol9956
@denpol9956 3 жыл бұрын
Когда спрашивают, скажем, что-то поверхностное, надо бы взять в привычку переводить разговор на уровень абстракции выше. Чтоб было понятно, что ты не джун и тебе не следует задавать вопросы про замыкания, эвентлуп и т.д. Кстати, было бы интересно послушать ответы от синера
@andreyvershkov4072
@andreyvershkov4072 3 жыл бұрын
Про ssr - "5 команд ввел и уже всё готово". Да уж, сеньоры. "Давайте на бэкенде порешаем" - ssr и есть про бэкенд. Чувак явно не застал времена монолитов бэк+фронт со связками типа php+js, .net+js, так как вынесение фронта в отдельный проект позволяет решать ряд проблем. Соответственно, чтобы нам вернуть преимущества из этого старого подхода, нам и нужен SSR. Сеньор, попробуй связку laravel+vue, чтоб это понять. Жалко, ребята-интервьюеры не дожали эту тему, видно, что они гораздо больше понимают.
@RdmHeroe
@RdmHeroe 3 жыл бұрын
"Чувак явно не застал времена монолитов бэк+фронт со связками типа php+js, .net+js, так как вынесение фронта в отдельный проект позволяет решать ряд проблем." Чувак работает в гитлабе, который и есть монолит, только используется руби) Вообще пункты ssr, bff у них прошли так, будто они все говорят о разном, очень смутило
@olezhonnv3215
@olezhonnv3215 3 жыл бұрын
ССР - это и есть возврат к чему-то похожему на связку пхп+жс. Не застал времен? А эти времена прошли? Сейчас прекрасно работают проекты на пхп. А в этих "новых" подходах на самом деле ничего нового и нет, по сути.
@RezetRoy
@RezetRoy 3 жыл бұрын
Интервьюер (слева) вообще SSR с BFF намешал в кучу. В его понимании наличие SSR - это уже BFF.
@igorkulibaba7287
@igorkulibaba7287 3 жыл бұрын
SSR - server side rendering! BFF - что это такое?
@RdmHeroe
@RdmHeroe 3 жыл бұрын
backend for frontend
@igorigor806
@igorigor806 3 жыл бұрын
Best friends forever :D
@user-vu6hn4ul2i
@user-vu6hn4ul2i 3 жыл бұрын
14:38 -"с тех пор я пишу код в блокноте" -"ну понятно, notepad+ лучший редактор и всё такое..." -"нет, вы не поняли. В блокноте значит в блокноте..."
@TheVer1000000
@TheVer1000000 2 жыл бұрын
До код ревью шёл великолепно. На ревью в основном повторил за ведущими. Странно.
@de_vitalii
@de_vitalii 3 жыл бұрын
пришлось пройти много, но не всё 😂
@nlsusr
@nlsusr 8 ай бұрын
Всё повыносить , бритва окама нервно закурил в сторонке
@Bthsnd
@Bthsnd 3 жыл бұрын
Понятно что это моковое собеседование, но все же, вы наконец пригласили сеньора, хотелось увидеть близкое к реальному интервью на сениор инженер... Но вопросы вообще не близко к собеседованию на сеньора-помидора. Все интервью(кроме кодревью) это просто холивар вопросы, а ля почему кот, а не собака.
@kulakofft4
@kulakofft4 3 жыл бұрын
а на код-ревью чёт поплавали) Ну это сугубо мой личный взгляд
@Alex-ge7jt
@Alex-ge7jt 3 жыл бұрын
Знаете, я и сам своего рода senior)
@dimitrobest5293
@dimitrobest5293 3 жыл бұрын
теперь только сеньоров давай!
@xenm85
@xenm85 7 ай бұрын
А какое было хорошее начало. Собеседуемый прям вообще не понимает что такое сср, он собственно об этом и говорит. Ps. Позовите меня на собес, : около 20 лет в разработке, ассемблером даже занимался когда то, 4 года во фронте
@boldureans
@boldureans 3 жыл бұрын
Почему так долго? только на 30+ минуте услышал фреймвёрк.
@jozefkantsevich9810
@jozefkantsevich9810 3 жыл бұрын
Фреймвёрки были?))
@oscarwilde8949
@oscarwilde8949 3 жыл бұрын
Были от правого и от нижнего
@KolhoznyjPank
@KolhoznyjPank 2 жыл бұрын
чувствуются что ведущме джуны) вопросы или спцеально такие или реально они не понимают что спрашивают) Разрабоьчик иг гитлаба красава вообще
@bo_ver4628
@bo_ver4628 2 жыл бұрын
Я че то не понял, кто кого собеседует:)
@user-xg5fp3xe8u
@user-xg5fp3xe8u 3 жыл бұрын
- Я сторонник радикальной идеи что ssr не нужен - Можно порешать так, просто генерить на сервере разметку, а данные инлайн json-ом прикладывать БАДАБУМС🤣
@user-hp2cg6px8c
@user-hp2cg6px8c 2 жыл бұрын
И? То, что он сторонник чего-то, означает, что он не может предлагать решения, когда прям надо сделать?
@user-xg5fp3xe8u
@user-xg5fp3xe8u 2 жыл бұрын
@@user-hp2cg6px8c вы не уловили сарказма в цитате
@user-hp2cg6px8c
@user-hp2cg6px8c 2 жыл бұрын
@@user-xg5fp3xe8u в чем здесь сарказм?
@NeoCoding
@NeoCoding 4 ай бұрын
@@user-hp2cg6px8c в том что он описал ssr
@maximvoloshin7602
@maximvoloshin7602 2 жыл бұрын
Я б работал с Виталием.
@daniilthegunner843
@daniilthegunner843 3 жыл бұрын
Мейнтейнер - это тот, кто участвует в разработке проекта какого-то?
@mukhtarmusaev3293
@mukhtarmusaev3293 3 жыл бұрын
Тот кто вносит ощутимый вклад в open source проект
@anton-vr5xw
@anton-vr5xw 3 жыл бұрын
ооо, senior
@alexleshenko
@alexleshenko 3 жыл бұрын
тайп же не сильно сложный с нюансами только что
@inferno059
@inferno059 3 жыл бұрын
если честно, то по кодревью незачет, если говорить про сеньера
@zuzelstein
@zuzelstein 3 жыл бұрын
Замечания по код ревью: 1) Строка #2 добавляет функции сайд эффекты и об этом было сказано вскользь. Момент крайне важный. Нужно исправить. 2) Про вычислительную сложность вообще не поговорили 2а) Зачем итерировать по всему "дереву" если можно только по изменениям. (нужно всего лишь учитывать временное отсутствие родителя в главном листе) 2б) Преобразование children в Set а потом обратно ~ O(2n) > Поиск на наличие child и добавление в случае отсутствия ~ O(n) (UPD: см комменты к посту) 3) Смысл использования Set для root? Если categoryId уникален, до по определению дубликатов не будет. А если нет, то Object.assign нарушит целостность данных.
@geekimp5537
@geekimp5537 3 жыл бұрын
Уже если и решились писать о сложности алгоритмов и употреблять O нотацию, то потрудитесь узнать что такое O и что O(2n) = O(n)
@zuzelstein
@zuzelstein 3 жыл бұрын
​@@geekimp5537 Тише тише. Ты никак не можешь успокоиться? Я действительно использовал обозначение O большого, дабы указать на лишний цикл итерации, это не совсем корректно. Однако, О большое не абсолютный критерий оценки алгоритма и на малых наборах данных время выполнения будет в 2 раза больше при дополнительном цикле. Это раз. Теперь по поводу твоего менторского тона -- с софт скилами у тебя рамс. Своё напускное "вы" оставь себе. Мне твое лицемерное "уважение" не всралось. Я тебя не уважаю еще с другого комментария, когда ты ПЫТАЛСЯ (не вышло) давить авторитетом и переходить на личности. Кароче, я официально посылаю тебя нахуй.
@zuzelstein
@zuzelstein 3 жыл бұрын
@@geekimp5537 по поводу "нотации". Нотация для тебя находится комментарием выше, а у слова notation в математическом контексте есть совсем другой перевод.
@geekimp5537
@geekimp5537 3 жыл бұрын
​@@zuzelstein Слишком горелым пахнет, тише. Ну вот раз на ты, то постарайся разобраться в математических функциях о которых берёшься смело утверждать - выглядит это всё так себе.
#15 Full-stack безопасник на собеседовании Backend Middle
1:16:10
Отсобеседование
Рет қаралды 13 М.
#17 Full-stack разработчик на собеседовании Frontend Middle
1:45:48
Отсобеседование
Рет қаралды 38 М.
ПАРАЗИТОВ МНОГО, НО ОН ОДИН!❤❤❤
01:00
Chapitosiki
Рет қаралды 1,7 МЛН
#16 Собеседование Senior Frontend разработчика из Mail.ru
2:22:37
Отсобеседование
Рет қаралды 43 М.
Пришёл Intern - оказался JUNIOR Strong / Интервью на позицию DevOps Engineer / Мок собес  / 1
1:36:38
Публічна співбесіда Middle Angular Developer
1:39:28
#13 Собеседование Middle Backend разработчика
1:10:45
Отсобеседование
Рет қаралды 61 М.
#18 Сеньор в 23? Собеседование Middle Backend разработчика
1:05:13
#11 Фронтендер в 17 лет? Собеседование Frontend Junior
2:13:12
Отсобеседование
Рет қаралды 40 М.
Ну Лилит))) прода в онк: завидные котики
0:51
Money changed everything 😢😔👻
0:31
Ben Meryem
Рет қаралды 27 МЛН
А ТЫ СМОЖЕШЬ УГАДАТЬ ЦВЕТ? #Shorts #Глент
0:37
Удачливая дочь сделала из отца миллионера 😳 #фильм #сериал
0:59
DixyFilms - Фильмы и сериалы
Рет қаралды 5 МЛН