Вопросы с реального собеседования Senior Java Developer

  Рет қаралды 23,466

Jetbulb

Jetbulb

Күн бұрын

Сегодня мы рассмотрим обзор реального интервью на позицию Senior Java Developer.
Поговорим о вопросах и ответах, а главное что из этого всего получилось.
Погнали!
Программа
00:00 Приветствие
01:34 Введение
02:23 Разбор вопросов и ответов
03:10 Может ли разработчик управлять памятью в Java?
03:40 Как потоки связаны с памятью?
07:28 Spring Context и зачем он нужен?
08:10 Как работает аннотация @Transactional?
09:45 Как работает транзакция?
10:30 Как работает TDD?
14:17 Выводы
17:52 Прощание
Полезные ссылки:
docs.spring.io/spring-framewo...
ru.wikipedia.org/wiki/ACID
en.wikipedia.org/wiki/Isolati...)
en.wikipedia.org/wiki/Test-dr...
docs.spring.io/spring-framewo...
www.betsol.com/blog/java-memo...
Наш сайт: jetbulb.com/
Мы в социальных сетях:
t.me/jetbulb
/ jetbulb
/ jetbulb.it

Пікірлер: 76
@MISHKAFUCKYOU
@MISHKAFUCKYOU 2 жыл бұрын
В январе решил поменять работу, почти весь февраль походил собеседования на MD+ или SD. На рынке картина ужасная... Сейчас поясню) Если что, мое мнение - это мое мнение, вы можете с ним не соглашаться, я высказываюсь исходя из своего опыта. Рынок сейчас разбит так: - Финтех 50% рынка- тут всем вообще похуй какой ты джавист, главное опыт и что б ты знал что такое транзакции и стримы))). Было 3 собеса из них только одно адекватное. Остальные 2 мягко сказать обосрались и это очень именитые банки)))). Мало того что плохо знают некоторые концепции, так ещё и сами не могут объяснить что и как. Но плюс большая вилка. Можно начинать от 250-270. Быстро кидают офер. - Компании аутстафф 20% рынка- грубо говоря перекуры в мире ИТ. Плюсы: если ты слабоват по скилам, то тут можно попасть в проект , на который в жизни бы сам не попал, для ребят MD- наверное самое то. Вилка где то 150-200. Но тут большой риск что тебя опять же продадут в банк:D который будет платить компании за тебя 270))) - аутсорс компании 20% рынка- как мне показало один из самых адекватных сегментов, крутые собесы, не стандартные задачи, не заебывали асидами и транзакциями, больше концентрация на решении проблем. Например, что ты будешь делать если к тебе пришли и сказали что у тебя упал прод))) - продуктовые компании 10% рынка - все были максимально крутые и ненавящивые, как правило собеседуют техлиды с которыми потом ты и будешь работать. В основном делают упор на лайвкодинг и код ревью. Было много фарша с многопоточкой..... Но это как минимум интересно. Я остановился на продуктовой компании. Самые распространенные вопросы. Стримы : - виды операций - параллельные стримы и чем они отличают, как работают Мапы: - вызывается ли когда нибудь equals при добавлении в map ( это очень частый вопрос!!!) - сложности вставки и тд и тп Транзакции: - асид - уровни изоляции - если вызвать метод с @транзакция внутри метода без @транзакция, будет ли открыта транзакция? Спринг: - все дефолтное, контекст, бины и тд и тп - как увеличить скорость старта приложения. - как ускорить работу приложения. Ну и ещё пару прикольных вопросов: Всегда ли будет отрабатывать блок finally в try-catch?)) Знаете ли вы что такое self injection?) Как исправить циклическую инъекцию? Надеюсь будет кому то полезно)
@user-nz8zq3gj1f
@user-nz8zq3gj1f 2 жыл бұрын
Как увеличить скорость старта приложения и как ускорить работу приложения, интересно послушать твой ответ
@MISHKAFUCKYOU
@MISHKAFUCKYOU 2 жыл бұрын
@@user-nz8zq3gj1f скорость старта - ленивая инициализация. скорость работы - хотят слышать про кэш или оптимизацию запросов
@sekojuku8848
@sekojuku8848 2 жыл бұрын
Что если я джун в оутстафф? Как-то повлияет на развитие?
@alexandernikolaev174
@alexandernikolaev174 2 жыл бұрын
Все так. Дважды попал в финтех на нормальную вилку сеньора просто поговорив о жизни, без всяких задачек, белых досок и прочей ерунды. Больше всех дрочат галеры, чтобы перепродать подороже.
@GeorgiyRyabov
@GeorgiyRyabov 2 жыл бұрын
Последняя секция про 10% это вопросы, которые я спрашиваю на собесе (но не только)
@AS-nu7ez
@AS-nu7ez 2 жыл бұрын
Пушка, наконец-то! Спасибо большое! Побольше бы такого, цены бы не было)
@user-kk9rx4jd6zs
@user-kk9rx4jd6zs 2 жыл бұрын
Спасибо за видео, очень интересно и познавательно :)
@user-io7rs9fj1e
@user-io7rs9fj1e 2 жыл бұрын
Спасибо Макс за информацию)
@Evgeny_E
@Evgeny_E Жыл бұрын
Спасибо за видео! Очень итересно!
@insomnia575
@insomnia575 2 жыл бұрын
вижу новый ролик - ставлю лайк спасибо за ролик!
@alexv7137
@alexv7137 Жыл бұрын
Спасибо! Как всегда подчеркнул новое! Было очень познавательно и интересно : узнать про то как реализованы транзакционные методы "ПРОКСИ методы"(а такой вопрос уже возникал) и Очень хорошо объяснили особенности подхода TDD. Четко сформировали суть вопроса !(То что мы пишем тесты на основании поставленной задачи под контракты , а не подгоняем тесты под уже написанную реализацию !) . Как всегда Лайк . и жду новое видио!
@abduqodirubaydullayev9120
@abduqodirubaydullayev9120 2 жыл бұрын
Спасибо Макcим, продолжайте в таком духе.
@user-lx1sp4ju3e
@user-lx1sp4ju3e 2 жыл бұрын
супер!Продолжай
@user-qm2vs8kj2x
@user-qm2vs8kj2x 2 жыл бұрын
Спасибо!
@pandadzho4223
@pandadzho4223 2 жыл бұрын
Макс, не думали ли вы с командой делать уроки или курс для джунов, с нуля и до первого собеса?) Чтоб туда входили основные технологии и фреимворки. А за видео спасибо, оч круто👍
@redblackwood6114
@redblackwood6114 2 жыл бұрын
Было бы круто, если рассказали о технологиях, которые актуальны и набирают популярность в компаниях или наоборот устаревают. Ну и скажем о знаниях, которые объединяют большинство вакансий, как очевидных, так и возможных подводных камнях, о которых не везде можно найти информацию.
@Jetbulb
@Jetbulb 2 жыл бұрын
Замётано, сделаем. Сейчас материала очень много собралось. Вероятно будет не сразу, но скоро будет точно. Спасибо за идею!
@pressf8083
@pressf8083 2 жыл бұрын
спасибо за полезное видео! хотел уточнить, можно ли метод finallize отнести к работе с памятью? я понимаю что он не актуален, но всё же
@Jetbulb
@Jetbulb 2 жыл бұрын
Да, метод finalize обслуживает задачи для выполнения в процессе уничтожения (очистки от) объекта. На практике, ни разу не видел чтобы его использовали. Спасибо что смотришь нас)
@user-og2ti2wd5o
@user-og2ti2wd5o Жыл бұрын
дуже круто дякую що так багато допомагаєте
@azatakhunov6061
@azatakhunov6061 Жыл бұрын
про TDD хорошо рассказал. лайк за видео.
@savinamarina
@savinamarina Жыл бұрын
На днях наткнулась на классную книгу про Java Memory Management от Packt - вот прямо с самых азов и с картинками - как устроена память, что в стэке, что в хипе, как хранятся примитивы и объекты, как устроен gc и т.д. Мне очень зашла, намного проще воспринимается, чем поверхностная информация из кучи статей. Рекомендую тем, кто плавает в теме (как я))
@Jetbulb
@Jetbulb Жыл бұрын
Приложишь ссылочку плз. Думаю всем будет интересно и полезно ))
@protiv_bio
@protiv_bio 2 жыл бұрын
5:26 ответ на самом деле очевиден, если знать, что как минимум адрес возврата складывается в стек при условном CALL
@dmitriyobidin6049
@dmitriyobidin6049 7 ай бұрын
4:40 Тут немного не понятно, почему при рекурсивных вызовах в джаве не может быть ООМ и что это за случай? А если я на каждом вызове буду выделять хренову тучу памяти, которая будет дожидаться выполнения следующего вызова? Или тут какой-то другой случай имелся ввиду?
@dmitryzhigalkin1276
@dmitryzhigalkin1276 2 жыл бұрын
спасибо за ролик! А какая вилка была и пришел ли оффер?
@Jetbulb
@Jetbulb 2 жыл бұрын
И тебе спасибо, что смотришь нас! Овер был уже через день, без цифр он был ниже, чем текущую ЗП. Компания маленькая, на всех зп не напасёшься видимо)
@User-pg2os
@User-pg2os 2 жыл бұрын
Добрый день! Спасибо ,что поделились Вашим опытом. Не могли бы Вы раскрыть более детально тему про то как потоки связаны с памятью? Почему потоки это стэк, если они храняться в heap memory? Спасибо заранее.
@Jetbulb
@Jetbulb 2 жыл бұрын
Записал. Подумаю как можно было бы это представить. На самом деле, материала очень много, правда не всем он понятен)
@user-gk2kn3ri7z
@user-gk2kn3ri7z Жыл бұрын
Очень смешно в очередной раз слушать, что нужно разбираться во всех хитросплетениях памяти Java, причем не просто знать где искать, но и помнить всё это наизусть:)))
@igormyatlyuk503
@igormyatlyuk503 3 ай бұрын
Что в этом смешного? В данном случае все вопросы были по существу и то что должен знать нормальный java senior, а не code monkey
@user-gk2kn3ri7z
@user-gk2kn3ri7z 3 ай бұрын
@@igormyatlyuk503 я довольно давно сеньор, и как-то не особо это нужно. Если требуется - просто открываешь доки, пару минут - и ты в курсе. Работа сеньора вообще другая.
@TheBestMovies13
@TheBestMovies13 Жыл бұрын
Ну, насчёт JMM и управление памятью, все же можем Strong References Weak References Soft References Phantom References, хотя немного спорно, но всё же)
@instl1117
@instl1117 2 жыл бұрын
При рекурсивном колле если мы в методе будем заполнять лист объектами, например миллион объектов положим в цикле, то быстрее будет ООМ, чем Стековерфлоу.
@Sharaki
@Sharaki 2 жыл бұрын
по transpactional еще хорошие грабли есть - "учтется ли факт наличия аннотации если такой метод вызвать изнутри самого класса" (собственно ответ на этот вопрос вытекает из того же факта про прокси)
@Jetbulb
@Jetbulb 2 жыл бұрын
Отличная заметка. Узнаю руку мастера)) +1
@user-gi8vq9ql1y
@user-gi8vq9ql1y Жыл бұрын
Совершенно не удивлен такому короткому интервью. Иногда несколько тем хватает, чтобы понять, насколько человек логичен, сообразителен и вовлечен. Бывает, что каких-то тем он в деталях не знает, но потенциал человека говорит о том, что разберется быстро и вдумчиво. Полагаю, вы такое вот впечатления и произвели на собеседовании.
@vital_63_
@vital_63_ 7 ай бұрын
Было бы интересно узнать подробнее про этот один раз, когда пришлось столкнуться с моделью памяти на практике на 6:45 ))
@parti29zan
@parti29zan 2 жыл бұрын
5:41 да вызовет stack overflow (я проверил) но в инете не нашел инфу на то куда тратится память
@user-dw7dp1rs3b
@user-dw7dp1rs3b 2 жыл бұрын
Парень сверху ответил и я впринципе с ним согласен, у тебя есть ссылка на метод и программе проходится сохранять ее до тех пор, пока она нужна, а при рекурсии точно нужна. Не знаю как там внутри устроено, но общий принцип именно такой.
@972gmailcom1
@972gmailcom1 Жыл бұрын
Меня пару раз тоже спрашивали про управление памятью. Но я совсем не 'старший разработчик". 3 года опыта. 80% - Java-core
@Jetbulb
@Jetbulb Жыл бұрын
Все зависит от интервьюера. Кто и чем богат, как говорится)) Очень часто на интервью спрашивают, то что конкретно известно интервьюеру, а не то что действительно надо спрашивать.
@vd.mashkov
@vd.mashkov 2 жыл бұрын
Насколько я понял, при рекурсивном вызове пустого метода вылетит StackOverflow, потому что память будет тратится на хранение ссылок на методы
@Jetbulb
@Jetbulb 2 жыл бұрын
Думаю имеет смысл кратко этот вопрос разобрать. Записал в темы для освещения.
@brunkovsky
@brunkovsky 6 ай бұрын
мне так показалось, или действительно Макс собеседует на позицию Junior жестче, чем его же собеседуют на позицию Senior ??
@Jetbulb
@Jetbulb 6 ай бұрын
🤣 Ну вообще: тяжело в учении, легко в бою )
@Yornero
@Yornero 2 жыл бұрын
Макс, тебе хватает одного монитора? Или второй просто не видно?)
@Jetbulb
@Jetbulb 2 жыл бұрын
Ну по сути монитора два: ноут + монитор стационарный. Вполне доволен. Кстати, из опыт два больших монитора так себе штука. Исключением является огромный стол. Для моего стол два монитора стационарных это перебор, а вот один большой + ноут - супер)) В общем, хватает!
@olegrolik
@olegrolik 9 ай бұрын
разве gc работает со стеком? я услышал "благодаря потоку, благодаря стэку, gc понимает когда можно избавляться от застоявшихся объеков"
@user-gw6df6ns7e
@user-gw6df6ns7e 8 ай бұрын
Если рекурсивный call может завершится с out of memory. А может с stack overflow.
@user-ch9xu2kx1n
@user-ch9xu2kx1n Жыл бұрын
Блин, меня на мидла гоняют и в хвост и в гриву. Как на тимлида(((. У вас чот совсем лайтовое все))
@Jetbulb
@Jetbulb Жыл бұрын
Вообще странный подход «гонять милла, как тим-лида» 🥲 Ощущение, что режим: «меня так гоняли и я буду». Но и такое встречается ))) Амбиции то у интервьюеров разные. Мне например важно, как человек рассуждает и какие варианты решения он готов сгенерировать в короткие сроки, анализ последствий. Кому-то важно, чтобы многопоточка была на высоте. Кто-то мочит знаниями всяких volatile. Которые сами в глаза не видел)) Все очень неоднозначно.
@daniilt7115
@daniilt7115 Жыл бұрын
В джаве можно управлять памятью в Unsafe
@iharbakhanovich
@iharbakhanovich Жыл бұрын
Макс, а ты беларус?
@maksymdobrynin
@maksymdobrynin Жыл бұрын
Нет, я украинец. Город Одесса ⚓️🇺🇦
@iharbakhanovich
@iharbakhanovich Жыл бұрын
@@maksymdobrynin 👍
@yevhendatsenko9989
@yevhendatsenko9989 7 ай бұрын
unsafe же
@user-rd3uq8ug3x
@user-rd3uq8ug3x 9 ай бұрын
Какое-то слишком простое интервью для синьора, я таких уже не помню. А какую зп предлагали на тот момент?
@Jetbulb
@Jetbulb 8 ай бұрын
Разные компании, разные ожидания. По зп если честно не помню, но это был топ рынку на тот момент
@dmytro4312
@dmytro4312 2 жыл бұрын
Прикольне відео, побільше таких
@khurshidddbek
@khurshidddbek Жыл бұрын
7:29
@andreibuldakov2641
@andreibuldakov2641 10 ай бұрын
вода до 3:10
@pilotivanovich
@pilotivanovich Жыл бұрын
Надеюсь, Макс также был против войны Украины против Донбасса
@maksymdobrynin
@maksymdobrynin Жыл бұрын
Макс против любой войны. И не был, а есть.
@pilotivanovich
@pilotivanovich Жыл бұрын
@@maksymdobrynin говоришь неправду, вставки против войны появились после февраля, до этого их не было и тебя война, объявленная самозванцем Турчиновым, к сожалению, вполне устраивала, судя по реакции
@A1xarT
@A1xarT Жыл бұрын
🤡война против донбаса ахах
@Das.Kleine.Krokodil
@Das.Kleine.Krokodil Жыл бұрын
@@pilotivanovich чё тебе надо?
@pilotivanovich
@pilotivanovich Жыл бұрын
@@Das.Kleine.Krokodil мне нужна правда
1❤️#thankyou #shorts
00:21
あみか部
Рет қаралды 88 МЛН
ИРИНА КАЙРАТОВНА - АЙДАХАР (БЕКА) [MV]
02:51
ГОСТ ENTERTAINMENT
Рет қаралды 2,7 МЛН
🍕Пиццерия FNAF в реальной жизни #shorts
00:41
Пришёл Intern - оказался JUNIOR Strong / Интервью на позицию DevOps Engineer / Мок собес  / 1
1:36:38