Собеседование senior backend-разработчика / Node.js

Sdílet
Vložit
  • čas přidán 9. 07. 2024
  • 🔥 Курсы для Node.js-разработчика на Хекслете: ru.hexlet.io/programs/backend...
    🔥 Карьерный трек на Хекслете: ru.hexlet.io/courses/employme...
    ✅ Полезные вебинары по программированию каждую неделю: ru.hexlet.io/webinars?...
    Публичное собеседование - формат учебного интервью, где собеседующий задаёт вопросы, которые обычно задаёт разработчикам при найме в свою команду.
    Действующие лица:
    - Задаёт вопросы: Кирилл Мокевнин
    - Отвечает на вопросы: Роман Гафуров (резюме: cv.hexlet.io/resumes/494)
    Таймкоды:
    - 00:00:00 - интро и о кандидате: каким проектом занимается Роман
    - 00:03:04 - что такое шина
    - 00:04:56 - почему на проекте используется такое решение, сетевые протоколы и финтех
    - 00:12:37 - гарантии доставки, Фаулер, семантика доставки сообщений
    - 00:17:20 - идемпотентность, конечный автомат, магия Ruby и другие языки программирования
    - 00:25:26 - предметно про задачи Ромы на проектах
    - 00:32:38 - реализация статики
    - 00:36:38 - бэкенд: Node.js, Express, ORM
    - 00:38:57 - что можно делать руками, а что нет
    - 00:45:50 - где фреймворк может мешать
    - 00:47:25 - React: фреймворк или библиотека?
    - 00:54:09 - как пишет тесты
    - 01:04:44 - стейт памяти
    - 01:06:35 - какие ещё языки интересны Роме для изучения
    - 01:17:36 - задачи на производительность
    - 01:20:56 - инфраструктура, pipeline проекта
    - 01:27:00 - немного про подходы Хекслета, стартапы и взяли бы Рому в Хекслет
    - 01:39:05 - культура компании
    - 01:49:29 - как было бы в реальном собеседовании и оверинжиниринг
    - 01:52:14 - почему четвёртый проект Хекслета на Node.js такой геморройный / Prisma
    - 02:02:11 - зачем формировать запрос
    - 02:12:43 - резюмируем
    🔗 Полезные ссылки:
    - Ещё публичные собеседования Хекслета: • Публичные собеседовани...
    #хекслет #программирование #backend

Komentáře • 122

  • @safort7806
    @safort7806 Před 2 lety +26

    Спасибо за интервью. Как правильно в конце сказали, действительно хотелось бы почаще видеть людей уровня senior.

  • @UncleBens1987
    @UncleBens1987 Před 2 lety +9

    Неплохо разбавили серию собесов. Мне, как студенту, было ничего не понятно, но очень интересно. А когда знакомые фразы слышишь, то вообще воодушевляешься)
    В общем и целом было приятно посмотреть! Даёшь больше собесов!)

  • @BoolFalse
    @BoolFalse Před 2 lety

    thanks guys, it was so interesting to listen.. like a podcast :)
    especially i liked the part where there was a discussion about "react: library or framework"

  • @al77ex1
    @al77ex1 Před rokem +6

    Получилось собес-дискуссия ) Спасибо за видео! Побольше таких встреч со спецами )

  • @sergeyplotnikov5031
    @sergeyplotnikov5031 Před 2 lety

    Большое спасибо! Очень круто!

  • @chikenmacnugget
    @chikenmacnugget Před rokem +6

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

  • @aleksandrgolovko4864
    @aleksandrgolovko4864 Před 2 lety +4

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

  • @user-hy9kb7sk7f
    @user-hy9kb7sk7f Před 2 lety +4

    Респект Кириллу! Столько технологий знает - может дискутировать на любые темы.

  • @alexanonymous5823
    @alexanonymous5823 Před 2 lety

    пасибо за видео))

  • @user-ps5hd7ix2m
    @user-ps5hd7ix2m Před 2 lety +1

    Огонь!

  • @Pavel-xg1tx
    @Pavel-xg1tx Před 2 lety

    Добрый день!
    @Хекслет, о каком курсе идет речь в 1:57:12? Подскажите, пожалуйста, название.

  • @VladislavBabitskiy
    @VladislavBabitskiy Před měsícem

    Кирилл отличный интервьюер! Вопросы все по теме и прямые, сразу вскрывающие все недочеты.

  • @AibekSadraliev
    @AibekSadraliev Před 11 měsíci

    Здравствуйте !
    Можно попросить ссылку курс, где происходит реализации данной библиотеки о которой идет речь тут 1:57:16 ?

  • @proggga
    @proggga Před 2 lety +1

    Всё понял, кмк не было сложно =) но было очень интересно, спасибо

  • @pavelbalyakin
    @pavelbalyakin Před 2 lety +2

    Конечно есть запрос!

  • @OlegMaisak
    @OlegMaisak Před rokem +4

    Прикольно смотреть разговор двух программистов, когда понимаешь примерно ничего.

  • @le_mon_tree
    @le_mon_tree Před rokem

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

  • @safriohomoz
    @safriohomoz Před 2 lety +2

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

  • @shifronim8950
    @shifronim8950 Před 2 lety

    Реакт это... это моё почтение как с него срывается маркетинговый покров 🌟🎉🎉

  • @hansolo8469
    @hansolo8469 Před 2 lety +1

    Спасибо, кайфанул!
    95% собеса не понимал о чём речь, и тем не менее было очень интересно!
    Приятные люди, хороший темп, реально кайфанул!

  • @user-kt1kx6th7z
    @user-kt1kx6th7z Před 2 lety +5

    Ща бы на собеседовании на сеньера спорить реакт библиотека или фреймворк )

  • @RisDeep
    @RisDeep Před 2 lety +1

    Видно что язык очень хорошо подвешен у Романа, а это главное для сеньора) Я думаю Кирилл думает примерно также

  • @denysserhieiev8378
    @denysserhieiev8378 Před 2 lety

    спасибо

  • @VITEK467
    @VITEK467 Před 2 lety +12

    ооо, бекенд! так мало собесов в интернете по бэку

  • @RomanTchekashov
    @RomanTchekashov Před 6 měsíci +1

    Насчет обработки ошибок, в Rust она лучше чем в Go. В Rust есть возможность их пробрасывать выше, а не сразу обрабатывать в момент появления! Если интересно об этом даже в ютубе можно найти информацию.

  • @cyrilanisimov
    @cyrilanisimov Před měsícem

    "Байтики в Го ворочать, говоришь...". Я ещё видел "программистов контроллеров" на JS

  • @user-su5by2uj6q
    @user-su5by2uj6q Před 3 měsíci

    Интервьюер очень крут👍

  • @Ivan54r
    @Ivan54r Před 2 lety +2

    В котлине экстеншн методы это static в который передается this. Это же просто сахар тем более типизирован - это не тоже самое что в js

  • @redmandarinushka
    @redmandarinushka Před 2 lety +7

    "Я тебя понял" Кирилл очень нежный

  • @Joe-ou3qy
    @Joe-ou3qy Před 2 lety +5

    Очень понравился формат. Роман молодец, высокий уровень.

  • @user-gw6df6ns7e
    @user-gw6df6ns7e Před 5 měsíci

    Kotlin extension это просто синтаксический сахар. При его использовании байт код класса не меняется.

  • @northwind2243
    @northwind2243 Před 2 lety +9

    ребит не справлялся? что это за нагрузки такие ? может проблема была в вас, а не в нем?

    • @mmospanenko
      @mmospanenko Před 2 lety +2

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

  • @berman3302
    @berman3302 Před 2 lety +17

    Может дело в не очень высоких стандартах по знаниям в его стеке, но с такими ответами в моем стеке даже на позицию миддла можно рассчитывать только с огромным послаблением. Не похоже на то, что он знает но не может выразить словами корректно.
    При этом видно как Кирилл усердно пытается вытащить из него ответы.
    Никоим образом не хочу обидеть Романа и надеюсь вопросы просто были в противоположных его компетенциям областях :)

    • @RisDeep
      @RisDeep Před 2 lety

      А какой твой стэк?

    • @berman3302
      @berman3302 Před 2 lety +1

      @@RisDeep C#, который актуальный, а не его печальное фреймворк начало.
      В основном в контексте микросервисов, nearly highload (потому что это субъективное понятие и потому что не все участки системы что-то специфичное реально требуют) и связанных изысканий (RPC vs REST, оптимизация SQL запросов и microORM, брокеров, SD и, редко, самописных спец решений поверх best practice). Также есть опыт продакшн решений C# фронтенда с wasm, но это почти всегда фуллстек и не самое благодарное поле.
      Кстати многие сталкиваются с C++ в браузере на wasm (www.figma.com/ с 2017 года, www.figma.com/blog/webassembly-cut-figmas-load-time-by-3x/), но почему-то удивляются C# реализации (Blazor) :)
      Впрочем и на позицию, предполагающую CRUD'ошлёпство, при собеседовании, что интересно, спрашивают не меньше. Предполагаю такой фильтр рассчитан на отсев совсем уж плохих специалистов, которые начнут городить совсем плохие решения.

    • @maksymdudyk1718
      @maksymdudyk1718 Před rokem

      Киррил красиво излагает мьісли, имеет огромньій опьій, компетенцию и кругозор, а другой собеседник, Роман, ну, он просто прав почти всегда.

  • @kimblinov1594
    @kimblinov1594 Před rokem

    парень в синей футболке! очень круто ведет интерьвю

  • @maksymdudyk1718
    @maksymdudyk1718 Před rokem

    Киррил все знает, а Роман всегда прав.

  • @IvanAndreev91
    @IvanAndreev91 Před 9 měsíci

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

  • @user-pd8pw4uq5v
    @user-pd8pw4uq5v Před 2 lety

    Очень интересно, так а какую ORM то в итоге на js лучше использовать?

  • @nodejsteam
    @nodejsteam Před 2 lety +2

    Твердый джун по моему, вопросы не раскрыли его как опытного node.js разраба на мой взгляд.

  • @bayborodin
    @bayborodin Před 2 lety +11

    Нууу... ок... Это точно был синьор? Странные вещи он говорит. По Кириллу видно, как он местами офигевает, но держит poker face ))

    • @KalinachenkoTV
      @KalinachenkoTV Před 2 lety

      По всем темам синьорский уровень тяжело иметь + интервьюер молодой. Жалко кодовой практики небыло или визуализации данных схемами 🥶

    • @kusov4748
      @kusov4748 Před 2 lety

      Вполне себе сеньор

    • @12zxqwas1
      @12zxqwas1 Před 2 lety +1

      @@kusov4748 Это джун.

    • @andreygrigorev8366
      @andreygrigorev8366 Před 2 lety

      ​@@12zxqwas1 Не соглашусь. Чувствуется сеньерский уровень (опять же, тут уже вопрос градации - в какой то компании сеньер, а в какой то миддл/миддл+)

  • @TrueNeutralEvGenius
    @TrueNeutralEvGenius Před 2 lety

    Excellent interview. Feels like guy has some problems with soft skills. Or deson't know how to put it without telling about company secrets or something... But interesting conversation nevertheless. Still useful, well done.

  • @MechanicalFreaks
    @MechanicalFreaks Před 2 lety +1

    > Хочу прикоснуться к хаскелю
    > Отпугивает раст тем, что там страшная обработка ошибок
    Принципы обработки ошибок в расте/хаскеле крайне похожи (иногда с точнстью до синтаксиса), странно)

  • @harmonyismy
    @harmonyismy Před 2 lety +9

    Больше похоже на собеседование сис. админа/тимлида, а не разработчика(( Не услышал ни одного полноценного кейса от Ромы, когда он сам писал код, разбирался в коде, тестил код...

  • @kalysrysmendeev9773
    @kalysrysmendeev9773 Před 8 měsíci

    Меня интересует положение камеры, интервьюер смотрит сверху интервьюируемого, это специально ?

  • @yarbersheer8559
    @yarbersheer8559 Před 2 lety +1

    я ещё даже не junior, но вся беседа была абсолютно понятна...
    А могли бы раскрыть секрет в чём смысл чёткого определения React это фреймворк или библиотека? Проверка инженера на возможность наличия собственного мнения с обоснованием или просто ютуб потроллить?

    • @da_best_jokes
      @da_best_jokes Před 2 lety

      Записывайся на собес и устраивайся на работу 300к+ тогда) Че ждем

    • @da_best_jokes
      @da_best_jokes Před 2 lety

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

    • @da_best_jokes
      @da_best_jokes Před 2 lety +2

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

    • @yarbersheer8559
      @yarbersheer8559 Před 2 lety

      @@da_best_jokes простите.. но разницу между http1.1 и 2 ...мидлу?... боль

    • @da_best_jokes
      @da_best_jokes Před 2 lety

      @@yarbersheer8559 не понял:)

  • @alexanderzharkov6953
    @alexanderzharkov6953 Před rokem +2

    Вообще не понял, почему кандидат в BE разработчики должен был отвечать на вопрос: а React - это библиотека, и еще рассуждать об этом

    • @channal18126
      @channal18126 Před 11 měsíci

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

  • @andreysvitlov7807
    @andreysvitlov7807 Před 2 lety +8

    Типичный js, не знаю почему, но не хочу нормальную структуру в проекте, хочу все файлики в одной папке

  • @IvanAndreev91
    @IvanAndreev91 Před 9 měsíci +1

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

  • @MyJesters
    @MyJesters Před 2 lety +30

    Мне одному кажется, что собес по джунам и мидлам намного жёстче чем вот тут..?

    • @ergiev2007
      @ergiev2007 Před 2 lety +2

      Конечно

    • @olehdevua
      @olehdevua Před 2 lety +1

      тебе кажется

    • @user-if8zk2nt7p
      @user-if8zk2nt7p Před rokem +10

      Я джун и у меня пара корешей синьоры. Они мне сразу так и сказали что они на собесе просто попиздят и устраиваются а ддуна во все щели😂

    • @_good_luck
      @_good_luck Před rokem +1

      это вообще не собес

  • @dgolovko
    @dgolovko Před 2 lety +1

    а что с линухом не так? 6:16

    • @ViacheslawSaveliew
      @ViacheslawSaveliew Před rokem +1

      фанаты огрызков снобят чутка, забывая откуда корнями макось

    • @TheLevius
      @TheLevius Před rokem

      @@ViacheslawSaveliew откуда?

  • @drozdoves
    @drozdoves Před 2 lety +1

    а в чем проблема форкнуть что-то с опенсорса и дописать как хочешь? истории про мердж реквесты + ожидания в пол года кажутся какими-то несерьезными

    • @bernish
      @bernish Před 2 lety

      В неоплачиваности данных действий

    • @user-tx5sr2lt6z
      @user-tx5sr2lt6z Před rokem

      Ты можешь форкнуть , фиксануть и юзать, но следить за отдельным проектом уже другая история(оптимизация, устранение уязвимости, фичи и тд). Скорее всего он имелл ввиду то, что они юзали пофикшеную версию, но ждали, пока сам овнер зальет фикс

  • @maksimsergeevich5939
    @maksimsergeevich5939 Před 2 lety

    А по поводу ORM... Может вместо 3-х JS макак нанять толкового спеца который будет писать запросы руками?

    • @wh1teb1ack92
      @wh1teb1ack92 Před 2 lety +11

      Это ты думаешь что если выучил ООПшный язык, то себя в спецы записал?
      Я думал клоунов которые хаят JS становится меньше, но как оказывается нет...

    • @maksimsergeevich5939
      @maksimsergeevich5939 Před 2 lety

      @@wh1teb1ack92 Ты умственно-отсталый? Я фуллстэк на Nodejs/js уже как 3 года, ещё пишу на go и немного rust. Из чего следует, что я не пишу на ООП языках. Причем ты тут вообще ООП приплел, и как ты тут увидел ненависть к JS?
      SQL может ООПшный язык?
      У тебя знаний ноль по сути. Иди может школу закончи сначала, потом пытайся что-то осознанное написать в комментариях. Написал 10 консол логов за свою жизнь и тебе показалось, что ты стал отцом и адептом JS? Или на чем ты там писать учился, на JQuery? Ты млять даже не понимаешь, что человек пишет, и при этом бросаешься терминами и баззвордами суть применения которых ты даже не понимаешь.

    • @TrueNeutralEvGenius
      @TrueNeutralEvGenius Před 2 lety

      @@wh1teb1ack92 Не, это всегда const. (Соотношение глупые люди и клоуны).

  • @mmospanenko
    @mmospanenko Před 2 lety +4

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

    • @12zxqwas1
      @12zxqwas1 Před 2 lety

      Это уровень джуна после курсов.

  • @gaddyya
    @gaddyya Před 2 lety +7

    Что-то он не тянет на senior((

    • @sergeykhairulin
      @sergeykhairulin Před 2 lety +2

      главное продать себя как seniora )

  • @johnins1646
    @johnins1646 Před rokem

    на продвижение

  • @12zxqwas1
    @12zxqwas1 Před 2 lety +6

    Блин, кода не пишут, ноду хейтят, руби огонь. Разговор двух хипстеров в пивнушке. Как можно взять сеньора после такого вью ума не приложу. Можно конечно, но потом обижаться надо только на себя.

  • @socialcatalyst2608
    @socialcatalyst2608 Před rokem

    Этот парень крепкий мидл. Но не сеньер. Много вопросов про систем дизайн

  • @RisDeep
    @RisDeep Před rokem

    Составной индекс это норма же

  • @leshax
    @leshax Před rokem

    - В хаскеле математики достаточно много
    - На самом деле это буллшит, код будет на уровне джаваскрипта даже проще.
    ШТА?

  • @batpyiiikob7245
    @batpyiiikob7245 Před 2 lety +2

    Собеседование больше похоже на лекцию

  • @user-bh2sz9tz6f
    @user-bh2sz9tz6f Před 2 lety

    Мне одному кажется что ведущий похож на Птушкина

  • @xxxxPomaHxxxx
    @xxxxPomaHxxxx Před 2 lety +3

    На какую зп может рассчитывать этот человек?

  • @ValarLugann
    @ValarLugann Před rokem +2

    Рома целкой был когда-то,
    Но нарушил он УК.
    И теперь его ласкает
    Волосатая рука.

  • @cyrilanisimov
    @cyrilanisimov Před měsícem

    1:37:10 "...Российская экономика теряла 70 млн. долларов в час..." Как я люблю такие разговоры) Российская экономика теряет хуилиарды уже много лет и ничего никого. Это не ваши деньги, чего вы беспокоитесь?))

  • @user-zj9fr5ds5j
    @user-zj9fr5ds5j Před rokem

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

    • @FoRVidEGG
      @FoRVidEGG Před rokem

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

  • @user-nh6wb3op5j
    @user-nh6wb3op5j Před 2 lety +5

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

  • @channal18126
    @channal18126 Před 11 měsíci

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

  • @seraf174
    @seraf174 Před 2 lety +1

    с тестами конечно полнейший провал, middle

  • @aliesenturov7292
    @aliesenturov7292 Před rokem

    По-моему собес вообще не про бэкенд 😅

  • @andreysvitlov7807
    @andreysvitlov7807 Před 2 lety +8

    Мне кажется у парня проблемы с софт скилами, не хочет слушать и принимать очевидные вещи, даже Кирилу пришлось не легко

  • @StupidLova
    @StupidLova Před 2 lety +6

    Роман молодец, но получилось очень скучно. Такое ощущение осталось что собеседуемый рассказывает про прочитанное в книжках, не имея какого-то своего мнения. Просто транслирует популярные мнения. Ну разве это senior?

  • @alexeystarovoitov525
    @alexeystarovoitov525 Před rokem

    Реакт - это библиотека. Ты ничего не понимаешь.

  • @duoduoo6732
    @duoduoo6732 Před 4 měsíci

    как будто бабушек на крыльце послушал. конкретного собеседования по делу нет. одни вопросы о вкусах. а о вкусах не спорят. а и еще меряние чсв какоето

  • @bender01
    @bender01 Před rokem +3

    это точно собеседование? )) или для сенёров это нормально сидеть и болтать 2 часа за жизнь? а джуны должны хреначить структуры данных и лопатить базу перед собесами...

    • @HexletOrg
      @HexletOrg  Před rokem +2

      Это и правда нормально)

    • @bender01
      @bender01 Před rokem +1

      @@HexletOrg а почему так? вить это интересно как грандмастера решают задачи! или собеседующие жим-жим что сами не вытянут?!

    • @HexletOrg
      @HexletOrg  Před rokem

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

  • @sodz5144
    @sodz5144 Před rokem

    1:59:36 Это простая и неудивительная история, ничего сверхъестественного, и всё равно не отвечает на вопрос эффективности сырых запросов.
    2:00:02 ТУШЕ!!!
    Интервьюер балаболка беспонтовая.

  • @deleted76
    @deleted76 Před 2 lety

    Могу сказать, что собес-беседа норм, но соискатель рассказывает слишком много конф. информации про свою компанию
    Не уверен, что это надо публиковать.

    • @arinas-r
      @arinas-r Před 2 lety +1

      Ну, он пытался говорить очень абстрактно сначала, но ведущий хотел деталей:)