Техническое интервью с Евгением Борисовым
HTML-код
- Опубликовано: 9 фев 2025
- Ближайшая конференция - JPoint 2025, 3-4 апреля (Москва + трансляция).
Подробности и билеты: jrg.su/T2zfbS
- -
Все вы знаете Евгения Борисова как знатока и потрошителя Spring. А что, если бы вы попали к нему на техническое собеседование? Прошли бы?
Ради эксперимента мы решили выяснить, каково это: на этот раз вместо доклада Евгений проведет в прямом эфире собеседование, на котором будет гонять участников программного комитета Joker по хард-скиллам. А чтобы всё было как в реальности, кандидаты не будут заранее знать вопросы.
Будет и весело, и интересно, и познавательно - особенно если вы планируете сделать шаг по карьерной лестнице и готовитесь к серьезному интервью.
Участники: Евгений Борисов, Паша Финкельштейн, Андрей Когунь и тайный гость.
Круто, когда смотрел год назад и не понимал 80% обсуждаемого, а сейчас смотрю и знаю всё )
Последнее интервью Баруха - это фантастика, покруче всяких камеди-шоу)) Спасибо!
Фантастика? Кроме кривляния и самолюбования ничего не увидел. Женя сам пожалел, что вписался в этот балаган
@@bluesdemon1Ну видно, что подстава, очень весело =)) Женя сказал же, что антипатерн собеседования =))
@@bluesdemon1 да господи, видно же, что это всё по сценарию, и Женя сам еле сдерживает смех.
1:22:43 про размеры микросервисов я уже не выдержал и заорал на всю квартиру)))
Когда "Вася" дошел до версий Спринг бута, я уже заорал на весь дом)
Последнее интервью - огонь, надо брать.
Ребята, все супер. я такого давно не слушал, очень увлеченно и полезно.
Это собес на джуна в 2023 году)
Потому что войтивайтишников после курса от скилбокса надо отсеивать )
я больше скажу) - это собес в 2024 году на Java Trainee(стажёр) - то есть чел пришёл с фазанки, а его тут попросили помыть пол ,так как он Trainee ну и между делом спросили - в каком блоке файла pom.xml залочить ту или иную версию библиотеки CGLib ? .... ну и чел такой....... В коридоре помыть? )))))))))))
@@vollkovfamillyржака
@@vollkovfamilly опыт фармит
Как же мне понравилось, спасибо вам!
Первый и второй мужики - достойные сыны отечества, последний (это дело относительное) - актёрище. Спасибо, братцы, смеялся от души, это новый формат : юмористические собеседования, кайф
Лучшее что я видел за последнее время)
Очень актуальное видео на сегодня. И приятно слышать совпадение по мнению, что искать правильно человека на перспективу.
Паша крутой. Хочу быть как Паша.
Жека конечно крут, но нужно с уважением относиться к собеседуемому, особенно при публичном собесе. Андрей Когунь ему рассказывал про задачу, а Жека в это время листал телефон, а потом сказал "ну понятно", показывая тем самым, что ответ он всё-равно не засчитает.
Спасибо! Я думаю, что у каждого есть внутренний Вася 😁
Барух как всегда хорошо пошутил. Красиво. :)
Очень познавательно и информативно. Спасибо!
Что делать, если "супер-фрикнутый технарь" надергал совсем уж нюансов из разных технологий и гасит вас конкретно. Даже видя, что вы поплыли в этом вопросе, всё равно копает ещё глубже. Заканчивать собеседование и уходить по-английски? Или попробовать вежливо объяснить, что я не справочник ходячий и вопросы его чисто академические?
Спросить, где это используется у них на проекте. И если нигде, то спросить, в чём смысл такого вопроса? Что хотят проверить таким образом? Сказать, что не знаешь, никогда не сталкивался (никто не обязан знать всё на свете) и спросить, какой ответ ожидается (на следующих собесах пригодится). Сказать, что не знаешь конкретный ответ, но можешь порассуждать в эту сторону. Вариантов много. Всегда выигрышная стратегия - превращать монолог в диалог. Ещё можно поработать над тем, почему такие вещи задевают. Это и по жизни пригодится, не только на собесах.
Гасить его конкретно хук слева, кросс справа.
Если это вопросы для sde3 по бандам епама, то я где то на уровне архитекта)))
Че-то слишком простые им вопросы задают... Жаль, что на настоящих собесах ваще не так всё :)
1:13:00 повеселили. Спасибо 👍 + 1:23:10 (смотрим итоги 1:26:00) (анекдот 1:30:08 про НЕТ)
вопрос: а виноват ли Вася в том что предыдущая компания разорилась? тоесть этот косяк с cuncurrency прошел тестирование, внешние тестирование и попал в прод? просто часто вижу такой концепт что крайний всегда разраб, а менеджеры, рп, аналитики и тестеры всегда не при делах, верен ли такой подход?
Знает кто-нибудь, где почитать на тему проксирования vs инструментирования, ознакомиться с актуальными решениями задачи с 51:00?
ахринеть это как круто
Клевые варианты собеседований. И вариант откуда берется правильный вариант ответа.
Спасибо, смешно)
Кстати, Барух перепутал weak reference с soft reference, а Евгений ему поставил лайк. Осуждаю
Второй кандидат, пересмотрел Борисова и отвечает ему его же цитатами. Это выглядит странно
Супер! Очень круто!
Спасибо)
круто и весело ребята сдела ))
посмеялся от души.
Барух в роли Васи воробще крутио сыграл особено, какая у вас версия спринг бута. ухахахаххахахахаххха
Вася это самое веселое что я видел за последние годы )))
А, понял - это шоу)
Не понял момента в первом интервью последний вопрос про транзации, объясните пожалуйста
Еще актуально? Тоже полчаса доходило, могу поделиться
@@ilia5194 поделитесь, тоже интересно
@@ilia5194 поделись, пожалуйста)
@@МаксимШевчук-ш5р Там все просто
Смотри, допустим ты создал метод doWork
А внутри этого метода используется другой метод saveData с @transaction (внутри которого циклом 100 вызовов save циклом)
А теперь смотри, что есть @transaction? Это по сути прокси над методом.
Т.е. если метод находится в том же классе, что и шедулер и вызывается не через интерфейс, то @transactional - не работает.
Чтобы @transactional над любым методом работал, то этот метод должен вызываться обязательно через интерфейс, так как @transaction использует для работы механизм проксирования. Т.е. метод за счет интерфейса дополнительно оборачивается в своего рода do{}->commit, когда доходит до места где его вызывают через интерфейс.
А если вызывают из того же класса напрямую (есть пути обхода, чтобы и из самого класса можно было вызвать, но это уже нюансы), то считай оборачивания в транзакцию не происходит.
Вот и получается, что когда вызывается напрямую из doWork вызывается saveData в том же классе, то так как не используется интерфейс-> не используется прокси-> @transaction просто не работает -> на каждый save() в цикле создается новая транзакция, а не объединяется в одну большую
@@МаксимШевчук-ш5р Извиняюсь, если задублируется ответ, youtube предыдущий ответ не отображает.
Т.к. метод doWork вызывает НАПРЯМУЮ метод saveWork(foreach->hibernate.save()) помеченный аннотацией @transactional, где в цикле вызывается save() сотни раз, то создаются сотни транзакций вместо одной. Почему?
Потому что @transactional работает как проски.
Т.е. если ты вызываешь метод не через интерфейс, то прокси не срабатывает и @transactional не работает.
Очень круто, супер!
Дайте Оскар 32му дереву)))
Барух просто пародирует тонну новоиспеченных "мидлов", который за полгода чему-то научили в онлайн-школе и теперь реально продвигают на позицию мидлов. Причем там все суровее - обычно помогает даже не один поисковик, а целая команда остальных учащихся и учителей ))))
в чем сложность, флатмап открывает стрим с каждого элемента стрима, а подом объединяет все в один стрим
На какой минуте?
Joker как всегда хорош
Супер!))
Если бы я проходил собеседования, то прошел бы первое 1 в 1, но завалился бы на втором )))
Вася - топ!
Баребух Девелопоровский
Хорошее начало и ужасный конец
я правильно понимаю, что джава = спринг, такое ощущение складыватся
Джава это лезвие а спринг это косовище (ручка)
Спринг сейчас - это стандарт и мастхэв даже на джуна
На 56.10 - человек не может объяснить разницу между map и flatMap. Евгений, куда его брать, джуном только. 10 лет говорит готовился, улыбнуло)))
Джун обязан это знать а синьор не обязан. От синьора другие требования: архитектура системы, правильные паттерны, исправление процессов в команде. Глупо спрашивать у синьора диапазон int, не обязан он такое помнить
@@ЮрийДымов-у6щ нет, не глупо. Как раз если на вопрос о диапазоне int кандидат на позицию сениора ответит "не знаю/не помню", это повод усомниться в его компетентности. Сениор, даже если не помнит точных значений, сможет порассуждать - сколько бит в int? Наверное, нам нужна какая-то степень двойки. И числа могут быть отрицательными, и диапазон отрицательных и положительных должен быть примерно одинаков. И уже можно оценить.
map и flatMap - это настолько база Stream API, что если человек этого не знает, то скорее всего он с этим инструментом вообще не работал. Функций много, все помнить необязательно, но map и flatMap нужны чаще всего.
Есть вопросы, по которым можно однозначно понять, работал человек с инструментом или вообще нет. Ну например, про consumer group в Кафке - если человек об этом не расскажет, то скорее всего знаний вообще нет. Вопрос про volatile - из этой же серии, на тему многопоточки. Про Spring Boot - вопрос про актуатор. Про транзакционность в Спринге - то, что спрашивал Евгений у Паши на 13-й минуте.
Про "От синьора другие требования" напоминает фильм "Полосатый рейс", когда укротителя тигров (спойлер: нет) позвали, чтобы он помог поймать мышь, а тот ответил "Не, я специалист по крупным хищникам - тигры, львы, крокодилы, а мышь - нет, не помогу".
2023
Женя ты в Израиле? Можно к тебе подскочить селфи сделать? Всегда слушаю впитываю и очень приятно было бы иметь фотку с таким гуру в коллекции. Тода
Он в США уже.
Воркшоп супер. Приглашайте Баруха почаще
где актив?
Женя, майка супер❤ Спасибо за доклад🎉
смотрю на это будучи недоджуном и хочется кричать
ничего страшного, большинство этой информации сугубо джавовская специфика
У Васи скучная работа. Из самого интересного - разорил компанию
А почему по два раза?
Баруху можно гуглить во время интервью 😂
Один и тот же чел с разным именем?
Просто клонировали, всё нормально
Две пары тройняшек?
це не для вас, приходьте далі
🤣🤣 класс
Ахахахахаха... "Нексус, не дай Бог" 😂
Обьясните шутку, плиз!
@@bravehamster85 нексус, мягко скажем, не очень удобная артифактори
@@DBMizrahi а можно поподробнее плиз, я участвовал во многих проектах и ничего кроме нексуса не видел. Что лучше?
@@bravehamster85 Ну как минимум JFrog, AWS CodeAertifact
Если б не Вася, я бы не понял что это постанова и стеб )))
pasha Einstein
Слишком много сложных слов, хоть я и DE...
Какой-то еврейский развод, это темы уровня Middle-
Дай тогда примеры вопросов уровня Senior, пожалуйста.
@@protagorasfromabdera8653 оптимистическая и пессимистическая блокировка, транзакционная целостность в микросервисах, ещё кандидата на сениор могут позвать на system design интервью.
с Васи поржал))
Вася😂
А гэта яшчэ chatGPT у чацік не зайшоў