Макс, огромное спасибо тебе за все видео. Благодаря тебе, у меня получилось устроится на работу после первого же собеседования! Желаю тебе добра и процветания.
Привет, Саша! Вот это супер-фишек! Очень мотивирует. Офигительно знать, что труд вложенный в эти видео приносит человечеству пользу и помогает ребятам достигнуть цели. Удачи тебе на новом месте и мягкой карьеры. Респект
Мидл, это когда уже имеет опыт программирования на языке, а значит в голове имеет шаблоны проектирования и решения многих проблем. А не отвечать на базовые вопросы языка..
У меня был перерыв в java. Видео собеседования хорошо освежает память, а порой и узнаешь что-то новое. Надо в Spring поковыряться и возвращатсья полноценно.
По поводу String и StringBuilder. Как я понимаю начиная с java 9 они работают +/- одинаково. Конкатенация строк проходит одинаково после реализации JEP 280.
У меня на той неделе было непростое (как для меня) 1.5ч вью на джуна джаву\скалу (типо с 2 мес обучением). Сначала обговорили мое тестовое, где я реализовал операцию джоинов для дженериков, там у меня с алгоритмом хеш джоина вышла сложность м+н для inner и 2м+н для left, right. Далее у меня с ходу спросили про коллекции, причем сразу же речь зашла про синхронизированные коллекции с которыми я никогда раньше не работал, я начал рассказывать что мол есть такие коллекции, для чего они и т.д., потом пошла совсем духота в виде многопоточности, и если про треды, ранебл я мог адекватно ответить, то когда когда речь зашла про колебл - future vs completablefuture, я приуныл, думаю немного реабилитировался рассказав после про double check lock, но вот про тред пулы я тоже особо ничего особо не ответил, кроме своих идей что порой мы работаем с большим количеством тредов и тред пулы мол для этого и нужны чтобы как-то использовать ресурсы между собой. После этого поговорили про спринг, я рассказал им про скоупы бинов, как конфигурируются бины, как их спринг берет из контекста и т.д.. Через время вернулись к ООП, но вопрос звучал как принципы применимы к командной разработке. Мне тут пришло в голову что инкапсуляция скроет ненужную логику и покажет нужную другому разработчику, наследование позволит использовать солид принцип опен-клоуз, про полиморфизм не помню что скзазал, но что-то вроде того что другой разраб использует созданный им подкласс вместо того что был, ну и агрегация\композиция удобна в тестировании. Далее мы снова вернулись в многопоточку, обсудили паралельные стримы (я тут тоже не силен), дальше поговорили про стрим апи, рассказал про интермидиат и терминальные (я их назвал финальные) операции. Всего не вспомню, но спустя час собеседования дело перешло к лайв кодингу. У меня к тому моменту уже сильно поплавились мозги (особенно из-за многопоточки), поэтому простую задачу на бинарный поиск - найти квадратный корень я не решил, в голову ничего не лезло, а вот про валидацию скобок [][{}] я решение предложил, хоть и теоретическое ведь времени уже не было. В общем думаю вряд ли меня возьмут, учитывая что джинни показывает нынче на вакансию по 80-100 кандидатов, но теперь есть понимание что надо лучше знать многопоточку, хотя на реддите пишут что джуны вряд ли ее юзают на проектах, это непростая тема где нужен хороший опыт.
@@Jetbulb Еще просьба рассказать что должен знать джун на данный момент с frontend. Какие минимальные требования или основы какого то фреймверка, может посоветуешь что покыварять. Сейчас в вакансиях в Украине для джунов часто упоминают что желательно иметь знания frontend.
@@MrMor94ok Как по мне, это список выглядит следующим образом: - JS и TypeScript - Angular или React Более чем достаточно для вхождения и разработки разного уровня сложности приложений.
Чувак молодец! Понравилось, что знает, как устроены коллекции внутри. Не все джуны знают о нодах списка, и как вообще ноды листа связаны, не могут сказать чем отличается двусвязный список и односвязный (си и си++ передают привет, душно конечно у джунов спрашивать про односвязный список, который из коробки не реализован, но инженерное воображение проверить можно. Ещё про ссылки на ноды next и previous можно спросить, и на что указывает prev первого элемента списка и next последнего элемента). Если честно с уровнем мидла, я бы не на все вопросы ответил сходу 😆 В фреймворках копаешься обычно, а о коре знания то надо освежать! Вот посмотрел собес и вспомнил, спасибо. Залипаю часто на лекции Евгения Борисова. Как-то меняется восприятие кора после углубления в архитектуру приложений, оптимизацию и библиотеки. Часто сидишь-пердишь пишешь свои крудоресты, латаешь и причесываешь старый код, а вся романтика программирования пропадает :(, но потом приходит ЗП и снова весело! И можно новую работу искать через полгодика, с новым чеком :D Спасибо Форсунной Лампе Ильича за собес.
@@igorgromyko8975 думаю если все это в совокупности взять, то это компьютер сайнс и устройство контейнеров данных. Знания нюансов дают свободу при реализации своих контейнеров (коллекций).
Макс, спасибо! Подскажи пожалуйста, если для обучения джаве рассматривать онлайн курсы, как считаешь, какое должно быть наполнение курса, какие разделы, сервисы, инструменты должен освоить студент? Что должен включать курс, чтобы получился прям крепкий Джун? Может есть примеры? Курсов много и наполнение у них разное, хочется не прогадать )
Наполнение: - Основы ООП дизайна - Алгоритмы и структуры данных - Java Core - SQL - Logging - Unit-tests - HTTP - Spring Core - Spring Web - Spring Security - JPA/Hibernate - Spring Boot (web, data, test) - Docker На выходе студер должен быть способен создать своё веб-приложение и разметить его в интернетах для доступа, рассказать как он сделал развертывание приложения. Это если мы говорим про джуна. Курсы никакие никому не рекомендую 😎 Курсы - это компания с процессами и рекламой, а преподаёт человек. Не имеет значения насколько крутые курсы, если преподаватель будет доказывать что Single Responsibility Principle означает «Делать только одну вещь, стало быть в интерфейсе должен быть один метод» или что «Шаблоны проектирования никто не использует». Большинство курсов не имеет адекватного отбора преподавателей и оценки качества их реальных знаний. Из опыта, новички-студенты будут бесконечно рады и ошеломлены уже тем, что их преподаватель умеет в консоль ввести сообщение «Привет, Мир!» и знает слово «Микросервис» 😏
Подскажите, насколько глубоко нужно знать spring security, например в банках? Насколько хорошо нужно знать по памяти шаги настройки авторизации, объектов? Спрашиваю т.к. вижу, что для небольшой первичной настройки, нужно знать немало объектов.
Как правило достаточно хорошо. Поскольку требования к безопасности порой выдвигаются очень обширные. Однако это не означает что надо знать Spring Security идеально. В данном случае, под знанием подразумевается механизм работы этой части фреймворка, что с легкость даёт возможность с ним работать, кастомизировать, решить поставленные задачи. Иначе это будет как Black Box разработка.
Хороший кандидат, работал с ним на его проекте, жаль что это было его хобби :( Грубо говоря вырос с Вадимом, руководитель он хороший, жаль времени было мало и многое реализовать не успел, надеюсь у него появится время возродить его классный проект, он поймет про какой я 😉
33:05 От кейса зависит. Если в цикле докидывать в билдер строки и выставить ему достаточную capacity, то да, можно сэкономить на аллокациях, иначе то же самое по сложности (не считая объект-обёртку над байтами). А если нужно разово склеить несколько строчек, то это сработает либо быстрее либо точно также как и код с явным созданием StringBuilder'а потому что для такого паттерна есть интринзик.
Скажите пожалуйста, сейчас джунам chatGPT сильно усложнил жизнь для трудоустройства? Мало было того, что нужно выучить и понять, так тут ещё и конкурент в лице машины))
Не знаю кто распространяет слухи о том, что GPTchat вытеснит инженеров-программистов. Но явно этот человек далек от ИТ-индустрии и тонкостях разработки, внедрения и поддержки ПО 😼 Вероятно этот человек и есть GPTchat)) Когда то это будет, но не сегодня и не завтра)) Джуны! Учитесь спокойно и становитесь программистами. Вместо того чтобы слушать инфо-хайперов
Спасибо. Я тоже подумал о хайпе, когда вбил "кризис в it" На русском языке - пол ютуба этих видео, а когда вбил этот же запрос на английском - там будто особо и не слышали про какой то кризис. Будто спецом шугают нас.
Привет, спасибо за видео! Можешь подсказать, тебе встречались люди с заиканием? Я сам с этой проблемой в течении какого то время буду также проходить собеседования. Может ли данная проблема повлиять на трудоустройство?
Привет! Знавал я парня одного. У него после аварии нервные окончания замкнуло на лице. Было ощущение, что постоянно улыбается «как идиот». СТОП, это не троллинг. На самом деле, просто так вот жизнь распорядилась. Что уже поделать. Тем не менее, он отлично работал и составил карьеру мидла в той компании. Компания была международная. Проблем у него не было. Он крутой парень! Потому, думаю что проблем с заиканием не должно быть. Сейчас живем в мире, где предрассудков меньше и меньше. Тем более, работа разработчика очень часто подразумевает скрытность ))) Пробуй, все будет отлично 👍
Макс, спасибо за видос👍 Подскажите, кто сталкивался: уже месяц пытаюсь попасть на собес(java junior), ни одного обратного звонка, телефонов для связи нет..... Вопрос: как вообще попасть на собес?, что это за бред?)))
Да и почему контактов нет? На хабр карьере даже рекрутеров видно на вакансии, можно им напрямую написать, спросить например что-то. Линкед ин есть тоже
Прошу прощения у меня вопрос о различиях билдера и просто конкатенации строки. Разве в версиях выше java 8 не использует String под капотом метод StringBuilder'а. Сейчас правда просто нет кода под рукой,что б скинуть пример. Поправьте если нет
Привет! Не подумайте ничего плохого, просто с этой темой я испытываю трудности на практике. Timeline: 23.02 Вы привели в пример задачу с менеджером. На мой взгляд, ответ на вопрос "каким принципом мы должны руководствоваться при разделении интерфейса" остался довольно абстрактным. Вы сказали, что предугадать что-то на будущее довольно сложно. Мне бы хотелось услышать от вас пару примеров какой-то "хорошей практики", когда нам следует принять решение создать "другого менеджера". То есть, плохая практика - создавать менеджеров с урезанным функционалом только потому что у менеджера стало много методов. А хорошая практика - это... - создать других менеджеров при какой тенденции? Для каких задач?
Все выливается в требования заказчика и умение предугадывать его поведение. 1. Пытаемся понять чего заказчик хочет 2. Пытаемся понять, что может захотеть в будущем с учетом п.1 3. Начинаем разработку с учетом п.п.1-2 Хорошая практика - не делать то, что не просят, но оставлять точки расширения. Для этого есть шаблоны проектирования и интерфейс как абстрактный тип.
В наших видео есть вопросы по Спрингу для джунов и выше. Можно в плейлистах глянуть. В этом видео, просто не было смысла спрашивать то, что человек ещё не учил.
Отличный вопрос)) Уже отвечал много раз на подобные вопросы в духе «любую школу можно рекомендовать, если есть большая гарантия, что попадёшь к достойному преподавателю. Всё-таки школа - это про ее состав, а не пафос и рекламу» Однако, мне нравится @ithillel и я бы рекомендовал попробовать там позаниматься. Но! Настоятельно не рекомендую ввязываться в длительные курсы. Начни с коротких 1-3 месяца и потом сам себе определи, твоя ли эта школа или нет. Как-то так))
соглашусь. Был собес в небольшую компанию и потом в тинькофф. На тинькове такие вопросы, от лидов, я даже сами вопросы не сразу понимала. Далеко не прямые, всё завуалированно, глубже про о-большое (опять-таки не напрямую, а вот что будет если такое-то дерево дополнить вот так вот), прогонка по деревьям, что чем отличается, по времени в каждой структуре данных, как изменить время. Про функциональное программирование. По спрингу -- стандарт + webflux, про сервлеты внутри, как передается без webfluxи как с ним. В небольшую компанию впринципи вопросы которые можно нагуглить, но их очень много и они залазят прям в кишки (даже если тебя собесит позавчерашний джун). На канале классные видео, но меня на все позиции в любые компании убивали далеко не так. :(
@@Jetbulb По спрингу, куча вопросов по коллекция(особенно ХешМапу все кишки), по гиту, по СиКуЛь, лайвкод. Спрашивают все, что должен знать сейчас миддл.
@@rfak05 Хороший набор. Но гите у меня конечно есть сомнения, но в остальном хороший список. А почему именно хеш-мап? Есть же куча другого, что важно. Не... конечно вопросов там можно поназадавать. Но какая ценность в кишках хеш-мап для человека который только карьеру начинает? Я тебе так доложу, что не каждый Senior, Team Lead, Tech lead расскажет это. Лучше решать задачи на применение коллекций и там выявлять ценность и детали их применения, чем устраивать "академический раш" на знание кода внутри класса. Роберт Лафоре в своей книги "Алгоритмы и структуры данных" отлично описывает хеш-таблицы и этого вполне достаточно для работы с такого рода коллекциями, остальное это детали при решении конкретной задачи.
Middle это всегда человек с коммерческий опытом. Не представляю как можно быть продвинутым специалистом при этом ни разу не решая бизнес-задачи. Junior - это человек со знаниями и совсем небольшим опытом, в некоторых случаях с его отсутствием. Junior, что выдаёт себя за Middle и находит работу мидлом - это скорее синдром выжившего. Даже сломанные часы раз в час показывают правильное время))) По поводу проекта, все зависит от его сложности. Если действительно достойный, качественный и сложенный проект, то прокатит. Ведь бизнес-задача, пусть и своя, всё-таки задача. Но это должно быть что-то действительно реальное, а не Babushka REST API v1.0 🫠
Нормально, вопросы хотя бы не сложные. Хотя местами и тупые, меня бесят вопросы типа: Чел, а почему от этого отказались и работают теперь с этой структурой? Чувак, мы не ходячая инциклопедия, ну отказались потому что при работе возникает много различных проблем, из за неудобства и тд. Или например, а назови мне все методы Object, которые ты знаешь. Открой идею ручками и посмотри, там этих методов огромная куча. Зачем мне эта информация, зачем мне знать все методы наизусть? Нельзя ли правильно поставить вопрос, назови методы Object, с которыми тебе когда то приходилось работать или которые чаще всего используются. Претензия конечно не к этому видео, но у меня был один из вопросов на собесе: Оцени себя по десятибальной шкале от 1 до 10 насколько ты хорошо знаешь джаву. Чел, бля, java язык очень сложный, там столько технологий, что знать абсолютно все (в буквальном смысле этого слова) ты просто не можешь.
Согласен. Но мне кажется, что эти элементарные вопросы задаются с целью углубиться в тему. Тоже самое недопонимал вопрос «Перечисли какие ты знаешь исключения». Нет, не иерархию исключений, а конкретные исключения в джаве. Хотя смысл их перечислять, если достаточно зайти в JDK и пересмотреть их, а потом понять, что обычно два исключения не отличаются друг от друга ничем, кроме именования))
Все C подобные языки откроют тебе реальное понимание. Я когда то давно начинал с php, быстро бросил, потом начал js, прошел некую базу типа: циклов, массивов и условных операторов, верстки сайтов и тд. Затем тоже бросил и переключился на java. Мне этот язык открыл вообще все представление об архитектуре. Изучая java ты поймешь как компьютер общается только с помощью единиц и нулей. Изучая java ты поймешь, что такое кодировки и как раньше было тяжело писать код переводя из одной кодировки в другую (сейчас все это упрощается через библиотеки). Изучая java ты поймешь как работает твоя стиральная машина, холодильник, микроволновка. Изучая java ты поймешь как работают сервера, соцсети, чаты, твое приложение сбербанк или тинькофф, которое хранит в себе всю инфу о пользователе. Изучая java ты поймешь как работают современные игры, как они запускаются, что такое экзешник и что он в себе хранит, как система сохраняет настройки пользователя после их установки. Изучая java ты поймешь, что такое оперативная память у компьютера, где храняться эти данные и как они вытаскиваются при работе. Изучая java ты поймешь как работает процессор на компе, как он распределяет потоки на твои запущенные приложения, в каком приоритете выделяется мощность твоего проца на работу одного или иного приложения. И многое другое... Короче, java очень интересный язык, но не простой. Я сам еще тугодум и мне еще предстоит огромный и длинный путь в плане изучения. Надеюсь через пол года мне все же удастся попасть на позицию джуна, т.к. входной порог ну просто нереально огромный. И я теперь не могу остановиться, я не могу жить без той информации, которую я узнал. Мне стало интересно вообще как работает машинный код. Открою секрет, на нем даже самые простецкие операции выполнить не так то просто. Чел, если ты не боишься сложностей то велком. Комньюинити джавистов очень крутое, все друг друга поддерживают и помогают, всем чувакам респектуха, вы лучшие.
Нет нет, инкапсуляция это не то что он назвал. Инкапсуляция это когда компоненты не знают друг о друге,для чего это нужно,для того чтоб каждый компонент был не зависим от другого,но при этом имел с ним взаимодействия.А то что он назвал,не относится к инкапсуляции.Модификаторы доступа нужны чтоб данные между собой не пересекались,это сделано для того что над проектом могут работать несколько разработчиков,и свойства они могут называть одинаковыми, чтоб избежать путаницы в данных, придумали модификаторы доступа . Вообще идея ооп заключается в том чтоб над проектом могут работать несколько разработчиков,при этом не видев его часть кода,но путем наследования могли дополнить его своим решением. Мало того, ооп принуждает писать стандартизирована ,что в дальнейшем облегчает поддержания кода,другими разработчиками,который не писали этот код.
@@Jetbulb я сам учу Java, ни на одном собеседовании пока не был, смотрю ваши интервью чтобы найти у себя пробелы. Просмотр этого видео меня порадовал тем, что практически на всё знал ответ (хоть и не на всё уверенный, плюс смотреть всегда легче, чем отвечать самому). Вот я и думаю, в чем подвох) Наверное в том, что собеседования тоже бывают разные, уверен, что на реальном собеседовании по многим вопросам я бы легко посыпался) Что ещё спросить - не знаю, хочу чтоб больше ничего не спрашивали xD
@@Sanchio Если чувствуешь что готов, тогда выходи на реальное собеседование или мок. Просто чтобы испытать себя и понять чего стоишь, а чему еще надо учиться))
Спасибо за контент! Однако, учитывая сложности с нахождением работы будучи джуном, было бы неплохо, если бы твои собеседования подняли планку до уровня мидла. Чтобы джуны без опыта работы смогли понять, чего им не хватает и сразу искать мидл позиции. (если это вообще имеет смысл, хотел бы уточнить это)
Хороший вопрос ты поднял. 👍 Для обозрения конечно имеет смысл, но не представляю как человека опыта написания сложных или непростых проектов, могут взять на работу мидлом. Как я уже говорил: «Джун выдающий себя за Мидла без опыта реальной разработки пусть даже одного проекта, это скорее ‘синдром выжившего’, чем закономерность»
33:57 Интервьюеру самому не мешало бы подтянуть как выглядит String и StringBuilder внутри. И там и там внутри массивы char'ов, с недавних пор их заменили на массивы байт, но опять таки и там и там.
Инкапсуляция != сокрытие. Инкапсуляция это объединение данных и методов для работы с данными в единый объект. Инкапсуляция обеспечивает сокрытие, но не является им.
Это правда, инкапсуляция действительно не является сокрытием. Если быть реально "буквоедом", то это "сбор чего-либо во что-либо". Однако не понял такой бурной реакции :) То что новичок отвечает не совсем корректно в терминах, но кодом может доказать обратное - это главное. Если говорить с высоты полета, твой вариант тоже не особо убедительный и оставляет много вопросом "на задать". )))) По сути оба, ответ в видео и в твой ответ являются составными части инкапсуляции, но не полным всеобъемлющим описанием ее сути.
29:48 Серьёзно? А часто билдите строки из разных потоков? А с Vector'ами и Hashtable'ами часто пишете код? Тупее только на собесе спросить какой слоган джавы и как зовут эту херню с красным носом с логотипа.
Я считаю, надо ещё спрашивать свойства RBT и попросить написать код его балансировки. Ну а что, вот ведь надо знать, что происходит, когда число элементов в бакете мапы превышает заданное значение.
Єто не Java похожа на C#, а C# похож на Java. Если разобраться по сущевству - когда придумали Java 1.1 C# еще не сущевствовало в проекте. Да и вообще C# - как по мне весьма странная технология: создать исполнитель байт кода только для Win мог только Бил Гейтс и его комманда. Да, есть MONO - но єто аматорский проект.
А где вопросы по субд, спринг кор, хттп, тсп и т.д.? время когда брали джунов и еще год учили их чтобы можно было что-то делать прошли, это факт. данный набор знаний очень мал для работы. Ну серьезно, что ему целыми днями массивы создавать? да это все нужно знать, но реально это 5%. дальше как минимум одна db, spring и все что в нем есть от jpa до кафки, тот же rest(http, amqp), rpс и еще куча всего интересного...
Ну ёмаё, в начале видео же сказано что будут за вопросы. Перед кем я распинался 🫠 Вадим, прошёл курс Java Core и пытать его тем, что он явно не знает - так себе затея. Он только готовится двигаться дальше и узнавать новые важные вещи.
Меня на интервью ПЕРЕД КУРСАМИ НА ДЖУНА в одной известной компании часа полтора пытали и жаба кором, и SQL, и это было давно. Сейчас порог вхождения выше, как мне кажется, особенно у джунов. Конечно тут интервью развлекательное, в реальности будет не так. По узким технологиям вряд ли будут гонять, но если чел не знает SQL, то точно всё очень плохо. Мне кажется ещё джуниора будут пытать алгоритмами, может даже и задачками, ведь у начинающего специалиста главное не широкие знания, а мышление. Вся эта какафка осваивается за неделю, если можешь в субд
@@wlasov Хорошо отметил. Это в первую очередь мок-собеседовение для человека, который хотел себя испытать при определенных условиях. Однако, это вовсе не означает, что везде так будет или не будет. На реальном собеседовании все иначе, даже при эквивалентном списке вопросов. Но на этом же мок-собеседовании проходим вопросы, которые непосредственно будут на реальных собесах. Как завещал А. Суворов - "Тяжело в учении, легко в бою!".
@@Jetbulb конечно это супер и очень полезно для проверки знаний 100%. даже не думал спорить. часто даже думая что знаешь очень сложно внятно ответить на вопрос особенно на интерью. суть в том, что сухие знания плохо усваиваются.
От чего же не расскажешь, что такое инкапсуляция? Кричать, не делать 😏 Конечно же инкапсуляция не ограничивается лишь сокрытием данных и модификаторами доступа. Есть много других полезных плюшек, вроде поддержки контракта, безопасное расширение кода без его модификации, и многое другое. Но это уже ответ выше, чем на джуна. Хотя хотелось чтобы это понимали все, от мала до велика.
А я жлоб 😂 На самом деле жду хорошего предложения, когда можно будет купить то, что я хочу, но дешевле. Был вариант купить: 14, 16гб, 512ссд, М1 со скидкой 18% но не решился, поскольку там раскладка чешская, а меня это не совсем устраивает. Жду подобное предложение с английской или интернациональной раскладкой.
@@alexjones3139 Вот жду)) Все пророчат эти чувства. На самом деле мне мой вполне подходит, но с 4К монитором, онлайн-вещаниями, запущенными тяжелыми процессами, лаптоп греется, шумит.
8 лет, пока "страна 404" с нацистским приветствием бомбила Донбас, вы не были против войны. А сейчас вы против? И не надо своё личное мнение выдавать за "IT-сообщество всего мира". Все люди разные, у всех своё мнение.
41:20 Хранить в иммутабельном объекте мутабельные объекты - какая-то дичь.. Ну ок, если пришлось, то да соглашусь нужно копировать (лучше конечно просто наружу не отдавать) в том числе и при создании нашего объекта, хотя я бы конечно сделал unsafe конструктор для вменяемых пользователей, где объект инициализируется ровно теми значениями, которые в него предали
Единственный вариант когда сломается который приходит в голову это читать/писать такие объекты под гонкой, а потом когда порочитали под гонкой вызвать переопределённый метод, который использует мутабельные поля или откастить к наследнику и использовать эти поля. Но от этого можно увернуться просто не делая мутабельных наследников
Макс, огромное спасибо тебе за все видео. Благодаря тебе, у меня получилось устроится на работу после первого же собеседования! Желаю тебе добра и процветания.
Привет, Саша!
Вот это супер-фишек! Очень мотивирует.
Офигительно знать, что труд вложенный в эти видео приносит человечеству пользу и помогает ребятам достигнуть цели.
Удачи тебе на новом месте и мягкой карьеры.
Респект
очень понравились его ответы понятными и четкими словами, коротко и ясно
Благодарность Максиму и участнику собеседования! Хорошо подготовился и развёрнуто отвечал на вопросы, полезно было послушать
Я решил учить теорию - слушая твои видео интервью на работе. Огромное спасибо за такой контент
Сделай как можно больше интервью. Дико интересно👍
Очень крутые и полезные интервью. Отличные вопросы! Не забрасывайте эту рубрику
Очень полезное интервью!
Спасибо большое за ваш труд! 🤝
Спасибо. Отличное интервью. Интересные вопросы и понятные объяснения!))
Нифига, да это не джун, а мидл полноценный, отвечает хорошо
Бред, может сразу сеньер помидор ?
@@andreyb8905 сеньёр деньёр
@@griskar45 донер
По текущим требованиям- это traine
Мидл, это когда уже имеет опыт программирования на языке, а значит в голове имеет шаблоны проектирования и решения многих проблем.
А не отвечать на базовые вопросы языка..
Классные вопросы и очень крутые ответы
У меня был перерыв в java. Видео собеседования хорошо освежает память, а порой и узнаешь что-то новое. Надо в Spring поковыряться и возвращатсья полноценно.
спасибо за видео. Макс ты самый лучший сеньор ✊✊✊
По поводу String и StringBuilder. Как я понимаю начиная с java 9 они работают +/- одинаково. Конкатенация строк проходит одинаково после реализации JEP 280.
У меня на той неделе было непростое (как для меня) 1.5ч вью на джуна джаву\скалу (типо с 2 мес обучением).
Сначала обговорили мое тестовое, где я реализовал операцию джоинов для дженериков, там у меня с алгоритмом хеш джоина вышла сложность м+н для inner и 2м+н для left, right.
Далее у меня с ходу спросили про коллекции, причем сразу же речь зашла про синхронизированные коллекции с которыми я никогда раньше не работал, я начал рассказывать что мол есть такие коллекции, для чего они и т.д.,
потом пошла совсем духота в виде многопоточности, и если про треды, ранебл я мог адекватно ответить, то когда когда речь зашла про колебл - future vs completablefuture, я приуныл, думаю немного реабилитировался рассказав после про double check lock, но вот про тред пулы я тоже особо ничего особо не ответил, кроме своих идей что порой мы работаем с большим количеством тредов и тред пулы мол для этого и нужны чтобы как-то использовать ресурсы между собой.
После этого поговорили про спринг, я рассказал им про скоупы бинов, как конфигурируются бины, как их спринг берет из контекста и т.д..
Через время вернулись к ООП, но вопрос звучал как принципы применимы к командной разработке. Мне тут пришло в голову что инкапсуляция скроет ненужную логику и покажет нужную другому разработчику, наследование позволит использовать солид принцип опен-клоуз, про полиморфизм не помню что скзазал, но что-то вроде того что другой разраб использует созданный им подкласс вместо того что был, ну и агрегация\композиция удобна в тестировании.
Далее мы снова вернулись в многопоточку, обсудили паралельные стримы (я тут тоже не силен), дальше поговорили про стрим апи, рассказал про интермидиат и терминальные (я их назвал финальные) операции.
Всего не вспомню, но спустя час собеседования дело перешло к лайв кодингу. У меня к тому моменту уже сильно поплавились мозги (особенно из-за многопоточки), поэтому простую задачу на бинарный поиск - найти квадратный корень я не решил, в голову ничего не лезло, а вот про валидацию скобок [][{}] я решение предложил, хоть и теоретическое ведь времени уже не было.
В общем думаю вряд ли меня возьмут, учитывая что джинни показывает нынче на вакансию по 80-100 кандидатов, но теперь есть понимание что надо лучше знать многопоточку, хотя на реддите пишут что джуны вряд ли ее юзают на проектах, это непростая тема где нужен хороший опыт.
Что в итоге взяли? Или мб устроился куда или учишься дальше? Прошёл год интересно)
Спасибо, очень интересно и полезно!
просто лучший
Макс можешь сделать видео практических задач которые обычно справшивают у джуна на собеседевании.
Это есть в списке потенциальных видео. Будет :)
Думаю, что в сентябре начнём пробовать этот материал.
@@Jetbulb Еще просьба рассказать что должен знать джун на данный момент с frontend. Какие минимальные требования или основы какого то фреймверка, может посоветуешь что покыварять. Сейчас в вакансиях в Украине для джунов часто упоминают что желательно иметь знания frontend.
@@MrMor94ok Как по мне, это список выглядит следующим образом:
- JS и TypeScript
- Angular или React
Более чем достаточно для вхождения и разработки разного уровня сложности приложений.
Чувак молодец! Понравилось, что знает, как устроены коллекции внутри. Не все джуны знают о нодах списка, и как вообще ноды листа связаны, не могут сказать чем отличается двусвязный список и односвязный (си и си++ передают привет, душно конечно у джунов спрашивать про односвязный список, который из коробки не реализован, но инженерное воображение проверить можно. Ещё про ссылки на ноды next и previous можно спросить, и на что указывает prev первого элемента списка и next последнего элемента). Если честно с уровнем мидла, я бы не на все вопросы ответил сходу 😆 В фреймворках копаешься обычно, а о коре знания то надо освежать! Вот посмотрел собес и вспомнил, спасибо. Залипаю часто на лекции Евгения Борисова. Как-то меняется восприятие кора после углубления в архитектуру приложений, оптимизацию и библиотеки. Часто сидишь-пердишь пишешь свои крудоресты, латаешь и причесываешь старый код, а вся романтика программирования пропадает :(, но потом приходит ЗП и снова весело! И можно новую работу искать через полгодика, с новым чеком :D Спасибо Форсунной Лампе Ильича за собес.
вот интересно
зачем бы это вообще это надо знать
ну кроме собесов
в чем практическая ценность этих знаний?
@@igorgromyko8975 Вы о чем конкретно говорите? О знаниях коллекций или о таких вещах, как ноды или односвязный список?
@@igorgromyko8975 думаю если все это в совокупности взять, то это компьютер сайнс и устройство контейнеров данных. Знания нюансов дают свободу при реализации своих контейнеров (коллекций).
@@igorgromyko8975 ну и развивают инженерное мышление и гибкость воображения при решении задач.
@@apn0597 интересно
что скажет архитектор проекта
если вы придёте к нему с собственной коллекцией? ))
Юхху ! Вечер воскресенья не будет скучным ! Спасибо !
Спасибо за ребрендинг лого! 😉
37:00, задача 2: константа byte (и Byte в том числе) так же не может быть переведена в Short. Ошибка компиляции.
можно скастить самому
Тоже проверил!Не работает!!!
спасибо, узнал много нового)
Макс, спасибо! Подскажи пожалуйста, если для обучения джаве рассматривать онлайн курсы, как считаешь, какое должно быть наполнение курса, какие разделы, сервисы, инструменты должен освоить студент? Что должен включать курс, чтобы получился прям крепкий Джун? Может есть примеры? Курсов много и наполнение у них разное, хочется не прогадать )
Крепкий джунт- это задачи Лабы по всему джава кору + веб приложение на спринге типа интернет магазин с юнит тестами на все классы.
Хорошо сказано.
Наполнение:
- Основы ООП дизайна
- Алгоритмы и структуры данных
- Java Core
- SQL
- Logging
- Unit-tests
- HTTP
- Spring Core
- Spring Web
- Spring Security
- JPA/Hibernate
- Spring Boot (web, data, test)
- Docker
На выходе студер должен быть способен создать своё веб-приложение и разметить его в интернетах для доступа, рассказать как он сделал развертывание приложения.
Это если мы говорим про джуна.
Курсы никакие никому не рекомендую 😎
Курсы - это компания с процессами и рекламой, а преподаёт человек.
Не имеет значения насколько крутые курсы, если преподаватель будет доказывать что Single Responsibility Principle означает «Делать только одну вещь, стало быть в интерфейсе должен быть один метод» или что «Шаблоны проектирования никто не использует».
Большинство курсов не имеет адекватного отбора преподавателей и оценки качества их реальных знаний.
Из опыта, новички-студенты будут бесконечно рады и ошеломлены уже тем, что их преподаватель умеет в консоль ввести сообщение «Привет, Мир!» и знает слово «Микросервис» 😏
@@Jetbulb просто оглушил!🔥 А как учиться то, Макс?🤔🤦🏻♂️
Глянь канал dmdev на RUclips)
Подскажите, насколько глубоко нужно знать spring security, например в банках?
Насколько хорошо нужно знать по памяти шаги настройки авторизации, объектов?
Спрашиваю т.к. вижу, что для небольшой первичной настройки, нужно знать немало объектов.
Как правило достаточно хорошо. Поскольку требования к безопасности порой выдвигаются очень обширные.
Однако это не означает что надо знать Spring Security идеально. В данном случае, под знанием подразумевается механизм работы этой части фреймворка, что с легкость даёт возможность с ним работать, кастомизировать, решить поставленные задачи.
Иначе это будет как Black Box разработка.
@@Jetbulb спасибо
Хороший кандидат, работал с ним на его проекте, жаль что это было его хобби :(
Грубо говоря вырос с Вадимом, руководитель он хороший, жаль времени было мало и многое реализовать не успел, надеюсь у него появится время возродить его классный проект, он поймет про какой я 😉
Вот это просто крутезный фидбек! Лучше и не скажешь)
Респект 👍
33:05 От кейса зависит. Если в цикле докидывать в билдер строки и выставить ему достаточную capacity, то да, можно сэкономить на аллокациях, иначе то же самое по сложности (не считая объект-обёртку над байтами). А если нужно разово склеить несколько строчек, то это сработает либо быстрее либо точно также как и код с явным созданием StringBuilder'а потому что для такого паттерна есть интринзик.
Скажите пожалуйста, сейчас джунам chatGPT сильно усложнил жизнь для трудоустройства? Мало было того, что нужно выучить и понять, так тут ещё и конкурент в лице машины))
Не знаю кто распространяет слухи о том, что GPTchat вытеснит инженеров-программистов. Но явно этот человек далек от ИТ-индустрии и тонкостях разработки, внедрения и поддержки ПО 😼
Вероятно этот человек и есть GPTchat))
Когда то это будет, но не сегодня и не завтра))
Джуны! Учитесь спокойно и становитесь программистами. Вместо того чтобы слушать инфо-хайперов
Спасибо. Я тоже подумал о хайпе, когда вбил "кризис в it" На русском языке - пол ютуба этих видео, а когда вбил этот же запрос на английском - там будто особо и не слышали про какой то кризис. Будто спецом шугают нас.
Дуже корисно, дякую за старання.
Пространство между корпусом наушников и головой образуют TheBackDoor :D
🤣 тоже обратил внимание )))
46:56 Нет, там нет исключения. Просто если равны, то и хешкоды должны быть равны.
Привет, спасибо за видео! Можешь подсказать, тебе встречались люди с заиканием? Я сам с этой проблемой в течении какого то время буду также проходить собеседования. Может ли данная проблема повлиять на трудоустройство?
Привет!
Знавал я парня одного. У него после аварии нервные окончания замкнуло на лице. Было ощущение, что постоянно улыбается «как идиот». СТОП, это не троллинг. На самом деле, просто так вот жизнь распорядилась. Что уже поделать.
Тем не менее, он отлично работал и составил карьеру мидла в той компании. Компания была международная. Проблем у него не было. Он крутой парень!
Потому, думаю что проблем с заиканием не должно быть. Сейчас живем в мире, где предрассудков меньше и меньше. Тем более, работа разработчика очень часто подразумевает скрытность )))
Пробуй, все будет отлично 👍
@@Jetbulb спасибо большое за ответ) ну что же, пойду дальше учиться, покорять пока что страшную архитектуру mvc :) спасибо за ответ, мотивирует!
Макс, спасибо за видос👍 Подскажите, кто сталкивался: уже месяц пытаюсь попасть на собес(java junior), ни одного обратного звонка, телефонов для связи нет..... Вопрос: как вообще попасть на собес?, что это за бред?)))
Ну Макс в Чехии вроде, у них всё с этим нормально, особенно ввиду нехватки кадров... но это пока
Да и почему контактов нет? На хабр карьере даже рекрутеров видно на вакансии, можно им напрямую написать, спросить например что-то. Линкед ин есть тоже
@@wlasov а Хабр это тоже какая то площадка с объявлениями?! Я просто кроме hh ничего не знаю.
@@МаксМакс-ч8к хабр.карьера есть такая площадка, да.
@@wlasov не проходит регистрация.....
Прошу прощения у меня вопрос о различиях билдера и просто конкатенации строки. Разве в версиях выше java 8 не использует String под капотом метод StringBuilder'а. Сейчас правда просто нет кода под рукой,что б скинуть пример. Поправьте если нет
Это отличное замечание, но там не все так радужно и есть исключения.
Детали уже в спецификации к версии надо смотреть.
Хай! Что-то со звуком произошло. Вроде и громко стало и это хорошо, но есть какой-то шум микрофона. Как-то так=)
Да вибрации много, возможно и эхо, надо стены покрыть или на этапе монтажа попытаться исправить
Да, тоже обнаружил.
На этом видео особенно не очень. Другие вроде лучше были.
Учтём. Уже заказываю новый микро, должно решить многое.
Как попасть на интервью?
iprody.com/interview
Детали по ссылке
Привет! Не подумайте ничего плохого, просто с этой темой я испытываю трудности на практике.
Timeline: 23.02
Вы привели в пример задачу с менеджером. На мой взгляд, ответ на вопрос "каким принципом мы должны руководствоваться при разделении интерфейса" остался довольно абстрактным.
Вы сказали, что предугадать что-то на будущее довольно сложно. Мне бы хотелось услышать от вас пару примеров какой-то "хорошей практики", когда нам следует принять решение создать "другого менеджера".
То есть, плохая практика - создавать менеджеров с урезанным функционалом только потому что у менеджера стало много методов.
А хорошая практика - это...
- создать других менеджеров при какой тенденции? Для каких задач?
Все выливается в требования заказчика и умение предугадывать его поведение.
1. Пытаемся понять чего заказчик хочет
2. Пытаемся понять, что может захотеть в будущем с учетом п.1
3. Начинаем разработку с учетом п.п.1-2
Хорошая практика - не делать то, что не просят, но оставлять точки расширения. Для этого есть шаблоны проектирования и интерфейс как абстрактный тип.
Тоже хочу пройти у тебя интервью.
По спрингу можно собесы или уроки на теорию и практику
В наших видео есть вопросы по Спрингу для джунов и выше. Можно в плейлистах глянуть.
В этом видео, просто не было смысла спрашивать то, что человек ещё не учил.
@@JetbulbДа, видела и слышал.
Но все же уроков больше по спрингу не помешало бы )
@@РомаГущин-т1э Согласен))
@@РомаГущин-т1э
Это отдельная тема.
Надо продолжить расширять плейлист)
Стоит идти в школу Hillel или нет?
Отличный вопрос))
Уже отвечал много раз на подобные вопросы в духе «любую школу можно рекомендовать, если есть большая гарантия, что попадёшь к достойному преподавателю. Всё-таки школа - это про ее состав, а не пафос и рекламу»
Однако, мне нравится @ithillel и я бы рекомендовал попробовать там позаниматься.
Но! Настоятельно не рекомендую ввязываться в длительные курсы. Начни с коротких 1-3 месяца и потом сам себе определи, твоя ли эта школа или нет.
Как-то так))
Спустя 7 месяцев интересно, этот парень сейчас работает?
У него все ок, грызет гранит науки и ИТ-индустрии))
Работает в Одессе, Украина. В ИТ-компании что поставляет софт в США.
Сейчас на стажеров собесы жестче. С джуна спрашивают раз в 10 больше
Йоу)
Чтобы ты добавил в список вопросов?
@@Jetbulb Лайк кодинг, ну и показывать код и спрашивать что будет вызванно на примере классов и тд ))
соглашусь. Был собес в небольшую компанию и потом в тинькофф. На тинькове такие вопросы, от лидов, я даже сами вопросы не сразу понимала. Далеко не прямые, всё завуалированно, глубже про о-большое (опять-таки не напрямую, а вот что будет если такое-то дерево дополнить вот так вот), прогонка по деревьям, что чем отличается, по времени в каждой структуре данных, как изменить время. Про функциональное программирование. По спрингу -- стандарт + webflux, про сервлеты внутри, как передается без webfluxи как с ним.
В небольшую компанию впринципи вопросы которые можно нагуглить, но их очень много и они залазят прям в кишки (даже если тебя собесит позавчерашний джун).
На канале классные видео, но меня на все позиции в любые компании убивали далеко не так. :(
@@Jetbulb По спрингу, куча вопросов по коллекция(особенно ХешМапу все кишки), по гиту, по СиКуЛь, лайвкод. Спрашивают все, что должен знать сейчас миддл.
@@rfak05 Хороший набор.
Но гите у меня конечно есть сомнения, но в остальном хороший список.
А почему именно хеш-мап? Есть же куча другого, что важно.
Не... конечно вопросов там можно поназадавать. Но какая ценность в кишках хеш-мап для человека который только карьеру начинает?
Я тебе так доложу, что не каждый Senior, Team Lead, Tech lead расскажет это.
Лучше решать задачи на применение коллекций и там выявлять ценность и детали их применения, чем устраивать "академический раш" на знание кода внутри класса.
Роберт Лафоре в своей книги "Алгоритмы и структуры данных" отлично описывает хеш-таблицы и этого вполне достаточно для работы с такого рода коллекциями, остальное это детали при решении конкретной задачи.
Чё за вопросы на джуна? Там максимум должны быть вопросы сложностью: когда скобка открывается, а когда закрывается
Привет, Макс. Когда компания ищет Junior to Middle, это человек, который работал в компании? Тут уже как самоучка с собственным проектом не прокатит?
Middle это всегда человек с коммерческий опытом. Не представляю как можно быть продвинутым специалистом при этом ни разу не решая бизнес-задачи.
Junior - это человек со знаниями и совсем небольшим опытом, в некоторых случаях с его отсутствием.
Junior, что выдаёт себя за Middle и находит работу мидлом - это скорее синдром выжившего. Даже сломанные часы раз в час показывают правильное время)))
По поводу проекта, все зависит от его сложности.
Если действительно достойный, качественный и сложенный проект, то прокатит. Ведь бизнес-задача, пусть и своя, всё-таки задача.
Но это должно быть что-то действительно реальное, а не Babushka REST API v1.0 🫠
@@Jetbulb бабушка рест апи :D Спасибо, упал с кровати
Нормально, вопросы хотя бы не сложные. Хотя местами и тупые, меня бесят вопросы типа:
Чел, а почему от этого отказались и работают теперь с этой структурой? Чувак, мы не ходячая инциклопедия, ну отказались потому что при работе возникает много различных проблем, из за неудобства и тд.
Или например, а назови мне все методы Object, которые ты знаешь. Открой идею ручками и посмотри, там этих методов огромная куча. Зачем мне эта информация, зачем мне знать все методы наизусть? Нельзя ли правильно поставить вопрос, назови методы Object, с которыми тебе когда то приходилось работать или которые чаще всего используются.
Претензия конечно не к этому видео, но у меня был один из вопросов на собесе: Оцени себя по десятибальной шкале от 1 до 10 насколько ты хорошо знаешь джаву. Чел, бля, java язык очень сложный, там столько технологий, что знать абсолютно все (в буквальном смысле этого слова) ты просто не можешь.
Согласен. Но мне кажется, что эти элементарные вопросы задаются с целью углубиться в тему. Тоже самое недопонимал вопрос «Перечисли какие ты знаешь исключения». Нет, не иерархию исключений, а конкретные исключения в джаве. Хотя смысл их перечислять, если достаточно зайти в JDK и пересмотреть их, а потом понять, что обычно два исключения не отличаются друг от друга ничем, кроме именования))
Стоит ли учить Java первым ЯП с полного 0 ?Если не силен в англ и матем? Или смотреть на питона лучше?
Стоит учить то, что нравится.
Хотя python, хоть js, хоть php - все едино.
Все C подобные языки откроют тебе реальное понимание. Я когда то давно начинал с php, быстро бросил, потом начал js, прошел некую базу типа: циклов, массивов и условных операторов, верстки сайтов и тд. Затем тоже бросил и переключился на java. Мне этот язык открыл вообще все представление об архитектуре.
Изучая java ты поймешь как компьютер общается только с помощью единиц и нулей.
Изучая java ты поймешь, что такое кодировки и как раньше было тяжело писать код переводя из одной кодировки в другую (сейчас все это упрощается через библиотеки).
Изучая java ты поймешь как работает твоя стиральная машина, холодильник, микроволновка.
Изучая java ты поймешь как работают сервера, соцсети, чаты, твое приложение сбербанк или тинькофф, которое хранит в себе всю инфу о пользователе.
Изучая java ты поймешь как работают современные игры, как они запускаются, что такое экзешник и что он в себе хранит, как система сохраняет настройки пользователя после их установки.
Изучая java ты поймешь, что такое оперативная память у компьютера, где храняться эти данные и как они вытаскиваются при работе.
Изучая java ты поймешь как работает процессор на компе, как он распределяет потоки на твои запущенные приложения, в каком приоритете выделяется мощность твоего проца на работу одного или иного приложения.
И многое другое...
Короче, java очень интересный язык, но не простой. Я сам еще тугодум и мне еще предстоит огромный и длинный путь в плане изучения. Надеюсь через пол года мне все же удастся попасть на позицию джуна, т.к. входной порог ну просто нереально огромный. И я теперь не могу остановиться, я не могу жить без той информации, которую я узнал. Мне стало интересно вообще как работает машинный код. Открою секрет, на нем даже самые простецкие операции выполнить не так то просто.
Чел, если ты не боишься сложностей то велком. Комньюинити джавистов очень крутое, все друг друга поддерживают и помогают, всем чувакам респектуха, вы лучшие.
@@44fruitella44 спасибо,значит правильный выбор сделал в пользу Java
@@44fruitella44 а какие ресурсы книги видео используете для учебы?
@@44fruitella44 как успехи с джава ?)) Есть результаты ?
На реальных собесах такие же вопросы?
Да. Но диапазон вопросов может быть шире или наоборот уже.
Все зависит от компании и собеседующих.
Респект не лише за відео, а й за марку з воєнним кораблем на робочому місці :D
Нет нет, инкапсуляция это не то что он назвал. Инкапсуляция это когда компоненты не знают друг о друге,для чего это нужно,для того чтоб каждый компонент был не зависим от другого,но при этом имел с ним взаимодействия.А то что он назвал,не относится к инкапсуляции.Модификаторы доступа нужны чтоб данные между собой не пересекались,это сделано для того что над проектом могут работать несколько разработчиков,и свойства они могут называть одинаковыми, чтоб избежать путаницы в данных, придумали модификаторы доступа . Вообще идея ооп заключается в том чтоб над проектом могут работать несколько разработчиков,при этом не видев его часть кода,но путем наследования могли дополнить его своим решением. Мало того, ооп принуждает писать стандартизирована ,что в дальнейшем облегчает поддержания кода,другими разработчиками,который не писали этот код.
То-ли вопросы лайтовые, то-ли я преисполнился познания
А вот чтобы ты спросил человека на позицию джуна по Java Core? 🙂
Поделись своим списком вопросов, мне реально интересно.
@@Jetbulb я сам учу Java, ни на одном собеседовании пока не был, смотрю ваши интервью чтобы найти у себя пробелы. Просмотр этого видео меня порадовал тем, что практически на всё знал ответ (хоть и не на всё уверенный, плюс смотреть всегда легче, чем отвечать самому). Вот я и думаю, в чем подвох)
Наверное в том, что собеседования тоже бывают разные, уверен, что на реальном собеседовании по многим вопросам я бы легко посыпался)
Что ещё спросить - не знаю, хочу чтоб больше ничего не спрашивали xD
@@Sanchio
Если чувствуешь что готов, тогда выходи на реальное собеседование или мок.
Просто чтобы испытать себя и понять чего стоишь, а чему еще надо учиться))
@@Jetbulb джуна спросят по фреймворку. Spring. Или что то похожее.
Спасибо за контент! Однако, учитывая сложности с нахождением работы будучи джуном, было бы неплохо, если бы твои собеседования подняли планку до уровня мидла. Чтобы джуны без опыта работы смогли понять, чего им не хватает и сразу искать мидл позиции. (если это вообще имеет смысл, хотел бы уточнить это)
Хороший вопрос ты поднял. 👍
Для обозрения конечно имеет смысл, но не представляю как человека опыта написания сложных или непростых проектов, могут взять на работу мидлом.
Как я уже говорил: «Джун выдающий себя за Мидла без опыта реальной разработки пусть даже одного проекта, это скорее ‘синдром выжившего’, чем закономерность»
33:57 Интервьюеру самому не мешало бы подтянуть как выглядит String и StringBuilder внутри. И там и там внутри массивы char'ов, с недавних пор их заменили на массивы байт, но опять таки и там и там.
реактивная бульба - лучший 🤣
😂👍
За лінейдж лайк!
Изумрудный - emerald, а не diamond
да w3 может кто то знает, дота с оттуда, многие и я в том числе в том же году что и дота начинали
Лайкос
Инкапсуляция != сокрытие. Инкапсуляция это объединение данных и методов для работы с данными в единый объект. Инкапсуляция обеспечивает сокрытие, но не является им.
Это правда, инкапсуляция действительно не является сокрытием.
Если быть реально "буквоедом", то это "сбор чего-либо во что-либо".
Однако не понял такой бурной реакции :)
То что новичок отвечает не совсем корректно в терминах, но кодом может доказать обратное - это главное.
Если говорить с высоты полета, твой вариант тоже не особо убедительный и оставляет много вопросом "на задать". ))))
По сути оба, ответ в видео и в твой ответ являются составными части инкапсуляции, но не полным всеобъемлющим описанием ее сути.
29:48 Серьёзно? А часто билдите строки из разных потоков? А с Vector'ами и Hashtable'ами часто пишете код? Тупее только на собесе спросить какой слоган джавы и как зовут эту херню с красным носом с логотипа.
Я считаю, надо ещё спрашивать свойства RBT и попросить написать код его балансировки. Ну а что, вот ведь надо знать, что происходит, когда число элементов в бакете мапы превышает заданное значение.
On vyshe chem junior ... pochemu junior doljen znat vsyo eto?
Потому что так диктует рынок.
Єто не Java похожа на C#, а C# похож на Java. Если разобраться по сущевству - когда придумали Java 1.1 C# еще не сущевствовало в проекте. Да и вообще C# - как по мне весьма странная технология: создать исполнитель байт кода только для Win мог только Бил Гейтс и его комманда. Да, есть MONO - но єто аматорский проект.
С кормом даже на стажера не возьмут. На Джуна сверху Spring,Rest, SQL,Hibernate
И это минимум.
Однако Влада взяли на работу и все у него складывается успешно 😏
вопросы как для миддла , ну точно не на джуна как по мне
А где вопросы по субд, спринг кор, хттп, тсп и т.д.? время когда брали джунов и еще год учили их чтобы можно было что-то делать прошли, это факт. данный набор знаний очень мал для работы. Ну серьезно, что ему целыми днями массивы создавать? да это все нужно знать, но реально это 5%. дальше как минимум одна db, spring и все что в нем есть от jpa до кафки, тот же rest(http, amqp), rpс и еще куча всего интересного...
Ну ёмаё, в начале видео же сказано что будут за вопросы.
Перед кем я распинался 🫠
Вадим, прошёл курс Java Core и пытать его тем, что он явно не знает - так себе затея. Он только готовится двигаться дальше и узнавать новые важные вещи.
Меня на интервью ПЕРЕД КУРСАМИ НА ДЖУНА в одной известной компании часа полтора пытали и жаба кором, и SQL, и это было давно. Сейчас порог вхождения выше, как мне кажется, особенно у джунов. Конечно тут интервью развлекательное, в реальности будет не так. По узким технологиям вряд ли будут гонять, но если чел не знает SQL, то точно всё очень плохо. Мне кажется ещё джуниора будут пытать алгоритмами, может даже и задачками, ведь у начинающего специалиста главное не широкие знания, а мышление. Вся эта какафка осваивается за неделю, если можешь в субд
@@wlasov
Хорошо отметил.
Это в первую очередь мок-собеседовение для человека, который хотел себя испытать при определенных условиях.
Однако, это вовсе не означает, что везде так будет или не будет.
На реальном собеседовании все иначе, даже при эквивалентном списке вопросов. Но на этом же мок-собеседовании проходим вопросы, которые непосредственно будут на реальных собесах.
Как завещал А. Суворов - "Тяжело в учении, легко в бою!".
@@Jetbulb конечно это супер и очень полезно для проверки знаний 100%. даже не думал спорить. часто даже думая что знаешь очень сложно внятно ответить на вопрос особенно на интерью. суть в том, что сухие знания плохо усваиваются.
@@anatolii720 Понял тебя :)
Но все-таки Вадим обладает уже сформированными знаниями и черпает из головы.
Проекты реализовывает, продвигается вперед.
Хватит уже мылить то что инкапсуляция это только сокрытие данных и private ! Инкапсуляция имеет иное определение
От чего же не расскажешь, что такое инкапсуляция?
Кричать, не делать 😏
Конечно же инкапсуляция не ограничивается лишь сокрытием данных и модификаторами доступа. Есть много других полезных плюшек, вроде поддержки контракта, безопасное расширение кода без его модификации, и многое другое.
Но это уже ответ выше, чем на джуна. Хотя хотелось чтобы это понимали все, от мала до велика.
новичОк
Спасибо, исправил.
@@Jetbulb 👍
Вот что меня интересует. Почему у тебя макбук не на Apple silicon ? Уверен, ты можешь его себе позволить. Пачимууууу?
А я жлоб 😂
На самом деле жду хорошего предложения, когда можно будет купить то, что я хочу, но дешевле.
Был вариант купить: 14, 16гб, 512ссд, М1 со скидкой 18% но не решился, поскольку там раскладка чешская, а меня это не совсем устраивает.
Жду подобное предложение с английской или интернациональной раскладкой.
@@Jetbulb Умно, эти штуки сейчас дорогие ) Но как купишь - обалдеешь от скорости)
@@alexjones3139
Вот жду))
Все пророчат эти чувства.
На самом деле мне мой вполне подходит, но с 4К монитором, онлайн-вещаниями, запущенными тяжелыми процессами, лаптоп греется, шумит.
Map это вообще не коллекция.
8 лет, пока "страна 404" с нацистским приветствием бомбила Донбас, вы не были против войны. А сейчас вы против?
И не надо своё личное мнение выдавать за "IT-сообщество всего мира". Все люди разные, у всех своё мнение.
40:25 Просто все поля, без исключения
41:20 Хранить в иммутабельном объекте мутабельные объекты - какая-то дичь.. Ну ок, если пришлось, то да соглашусь нужно копировать (лучше конечно просто наружу не отдавать) в том числе и при создании нашего объекта, хотя я бы конечно сделал unsafe конструктор для вменяемых пользователей, где объект инициализируется ровно теми значениями, которые в него предали
1:08:48 Ну блин) Про checked исключения так хорошо рассказал, а тут засбоил)
1:09:26 try с ресурсами может быть и без finally и без catch
40:20 Финальным-то нахуя..
Единственный вариант когда сломается который приходит в голову это читать/писать такие объекты под гонкой, а потом когда порочитали под гонкой вызвать переопределённый метод, который использует мутабельные поля или откастить к наследнику и использовать эти поля. Но от этого можно увернуться просто не делая мутабельных наследников
1:12:14 Не, не здорово
27:25 Неа