Тестовое собеседование Java разработчика #11 - Руслан Жуминов
Vložit
- čas přidán 15. 07. 2024
- Видеозапись mock интервью с начинающим AQA Русланом. Руслан не знаком с базовыми фреймворками, поэтому упор был сделан на основы языка, алгоритмы и БД.
00:00:00 - знакомство
00:03:36 - тип данных short
00:04:42 - short vs class Short
00:05:56 - обобщения в Java (Generics)
00:07:19 - класс ArrayList (динамический массив)
00:11:11 - класс LinkedList (связный список)
00:12:51 - класс TreeSet (красно-чёрное дерево)
00:16:18 - интерфейс Сomparable
00:17:25 - решение алгоритмической задачи (максимальная глубины дерева)
00:32:33 - протокол HTTP
00:34:10 - базы данных (нормализация)
00:36:02 - написание SQL запроса (INNER JOIN)
00:47:18 - ответы на вопросы
00:50:10 - заключение
Большое спасибо Евгению за предоставленную возможность проверить свои знания. Буду заниматься дальше) Всем удачи!)
Успехов бро!
@@user-ky2fw9kw7m спасибо))
Спасибо за таймкоды в описании!
Хотя ваши видео смотрю без перемотки, каждый раз что-то новое узнаю)
Спасибо :)
Жень, спасибо за такие видео! Продолжай пожалуйста)
Спасибо за отзыв :)
Спасибо за подготовку и за видео
Спасибо за отзыв!
Евгений, орден за самообладание
Парам-парам-пам, лайк. Ждём следующих видео
Евгений, лучший собес по структуре, динамике и охвату материала. По базам идеально было бы тоже заготовки иметь, новичок на слух вряд ли уловит таблицы (у них еще волнение вдобавок), а так сразу на экран две таблицы и задание сджойнить то или это.
Парень живой и смелый, он пробьется просто за счет напора. Знания восполнит по факту.
И еще среди всех собесов лучший вопрос и ответ в конце. Именно это и стоило спросить у матерого разработчика.
И как всегда супер манера наводить кандидатов на мысль простым языком. Превосходно.
Спасибо за видео! Отличные вопросы, очень помогает вспоминать материал и искать пробелы.
Немного сбивают прекращения звука на заголовках тем, сами по себе объявления тем очень хорошо, но возможно было бы лучше продолжать звук фоном или сделать надпись на прозрачном/полупрозрачном фоне.
Спасибо за контент!!! Ну прямо школа интервьюверов для начинающий и не очень=)
Спасибо👍
Рекомендуемые материалы:
- www.amazon.com/Effective-Java-Joshua-Bloch/dp/0134685997
- www.amazon.com/High-Performance-MySQL-Optimization-Replication/dp/1449314287
- www.amazon.com/Java-Concurrency-Practice-Brian-Goetz/dp/0321349601
- www.amazon.com/Pro-Spring-Depth-Guide-Framework/dp/1484228073
- www.amazon.com/Cracking-Coding-Interview-Programming-Questions/dp/0984782850
хорошее начало! понимание коллекций (реально красно-черные деревья вообще мало кто знает) но в конце совсем просел. Побольше уверенности и чуть трудолюбия - все у него получится!
Да, базовые знания есть, с этим можно работать дальше.
Спасибо)
А в институте это учат )
Задачка кайфовая, подобная на литкоде есть, только там, по моему, сумму двух чисел "написанных" в обратном порядке в реализаций линкдлиста вернуть в обратном порядке линкдлистом.
Предложение по монтажу:
Не нравится, что видео прерывается вставками с темами на весь экран, я считаю лучше или делать всплывающее окно в углу, бегущую строку или ещё что-то что не будет прерывать видео, но будет показывать текущую тему обсуждения.
Спасибо за предложение, так и попробую в следующий раз
Евгений, небольшая просьба. Возьмите, пожалуйста, микрофон получше :)
Спасибо за контент!
Спасибо за отзыв!
Да, тоже заметил проблему, в ближайшее время закажу новый.
@@EugeneSuleimanov Советую посмотреть на мирофоны fifine - недорогие, для таких роликов по качеству звучания подходят
@@TheSanekAndreev уже заказал и жду комплект rode. Лучше не нашёл. Надеюсь, с ним звук будет хорошим)
@@EugeneSuleimanov Поздравляю с обновкой) У rode отличные микрофоны
@@EugeneSuleimanov когда мы пишем: select * from customers inner join orders on customers.idcustomers = orders.customers_idcustomers; то нам покажет только тех пользователей которые сделали заказы - это была суть задания?
Как всегда - супер методика!
Евгений, можешь скинуть материалы в описание к видео?
Да, конечно, все будет добавлено в описание
Мне одному показалось, что Руслан пользовался "шпорами" на мониторе, на которые переключался?
Не одному :) Но, по опыту могу сказать, что использование подсказок слышно даже по манере изложения. Человек, когда говорит, показывает свой стиль изложения материала, и когда этот стиль резко меняется - с вероятностью 99,99%, можно говорить, что человек где-то это читает. В любом случае - цель данного интервью - выявить пробелы, что и было сделано.
Про джоины подсматривал)))
Местами вообще явно прям подглядывает)))
@@EugeneSuleimanov однозначно, из контекста понятно, что парень из автотестеров метит в java backend, и пробелов ну просто масса) интересно, было делать повторный собез через 3 месяца по запросу;)
Евгений - опытный интервьюер и даже со шпорами запросто найдет вопрос на понимание, а не декларацию информации из шпоры.
Евгений, предлагаю начинающим разработчикам давать список тем которые будут охвачены собеседованием, чтобы ответы были увереннее
В этом и есть смысл интервью, они не должны знать темы
@@johnniewalker1343 а в чем тогда смысл смотреть такие интервью, ээээ нуууу ээээ не помню
Добрый день, Евгений!
Заметила, что при поиске максимальной глубины для дерева данное решение отрабатывает верно только в том случае, если вызов рекурсивно метода выполнять именно в последовательности, где первый вызов для той стороны которая короче. Иначе получаем неверный результат. Понимаю, что при собеседовании никто не тестирует окончательно решение. Но просто хочу узнать ошибаюсь я или нет)
Подскажите плиз, в задаче с поиском глубины, как у нас появляются числа в maxLeft и maxRight для сравнения в конце, если все равно у нас дойдет до null и вернет 0 и два ноля будут между собой сравниваться?
В этом случае отработает 2е условие, так как 0 не больше 0
@@EugeneSuleimanov спасибо, теперь понял)
не понимаю людей , которые просят их протестировать, но при этом пытаются обмануть проверяющего подглядывая и гугля во время тестирования.
Тоже заметил, что гуглил и что-то там читал
Полностью согласен, вторую половину просто смотрел в экран и читал с экрана
Как всегда отлично) Можно было бы и мне попытать счастье на вашем учебном собеседовании?)
Спасибо за отзыв!
Да, конечно, пишите на почту - обсудим детали:
proselytear@yahoo.com
По поводу пути обучения
Я на данный момент начал изучать Джаву, сейчас на этапе изучения кора
Наткнулся на ресурс hyperskill, сейчас изучаю по нему, но бесплатный период заканчивается, и вот думаю
Гиперскилл нравится вроде как (маленькие проекты, теория как по мне хорошо рассказывается и т.п.), но эффективнее ли будет книги?
Дополню, что моё изучение немного облегчено тем, что я около года назад учился на пути iOS девелопера, но не получилось в силу отсутствия вакансий, и как джуном или даже трейни не получилось никуда.
Оплачивать дальше гиперскилл и изучать, или брать отдельно тему и по книгам её изучать?
Сам не студент, сейчас работа есть, так что если может кто посоветовать что, буду благодарен. Заранее спасибо!
Книги в любом случае нужны, на курсах не будет полного объема теории.
@@helios32132 согласен, все нужно закреплять практикой
Я закончил курс Hyperskill Java Dev за 3 мес и даже запилил свой проект для них (Online Chat называется). Это на данный момент лучшее место где ты можешь самостоятельно учиться. Книги нужны как дополнительный ресурс, но ни в коем случае ни как замена. Более того, ты на практике не будешь лезть в книжку и искать там ответы, ты пойдешь в интернет на различные форумы разработчиков или напрямую будешь читать документацию. Документация в отличие от книжки обновляется
Теперь опубликуйте плиз интервью с Юлией Жуминовой :)
:)
а че там?
DimasPartyMaker Я хз, самому интересно!
02:14 хитровы... =))
Часто замечаю, что начинающие разработчики путают понятия "добавление" (add) и "вставка" (insert). Видимо, потому что в процессе обучения присутствует значительный упор на алгоритмы манипуляции данными внутри контейнеров.
Евгений, Как относитесь к Mybatis? Привет вам с Казахстана!
Не работал на реальных проектах с ним, но, в целом, не плохая технология. Мне, исключительно из-за моего личного опыта комфортнее работать с JPA :)
Мой бантик - хлам
такой вопрос, на таком уровне знаний еще далеко, чтобы джуном на бэк взяли?
Евгений, просьба микрофон рядом, бубняво звучит и с эхом небольшим. А так +
терпение на уровне: профессионал) парню нужно больше практики, читая книги, ничего не запомнишь толком.
Первый)
Можно пример привести, когда реально понадобилось знать по памяти сколько значений влазиет в short? Просто собеседование должно пересекаться с реальными задачами
При работе с большими данными и нам нужно экономить память. При этом, мы знаем предполагаемых значений в системе.
Да и в целом - это фундаментальные знания, без которых инженером быть сложно.
Но, в данном контексте, я хотел услышать, понимает ли кандидат целом, как связан диапазон допустимых значений с размером типа данных.
@@EugeneSuleimanov К слову с short'om, в плане оптимизации, не все так однозначно. К примеру в байт-коде просто нет инструкций сложения, деления и тд. для short'a, чуть подробнее тут stackoverflow.com/questions/27122610/why-does-the-java-api-use-int-instead-of-short-or-byte/27122853#27122853
@@denisshuvalov5726 это корректное замечание, но, мой ответ был больше не о тонкостях оптимизации, а о том, что знать размеры базовых типов данных языка с которым работаешь - необходимо. Поэтому и пример был, наверное, не самый лучший.
@@EugeneSuleimanov Ни в коем разе не спорил, просто для меня это было удивительным, когда первый раз узнал )
second
Звук не качественный :(
Деревья и графы в универе преподают)
Сделай плиз туториал как прикрутить Amazon Cognito. Вместо Spring Boot испльзуется Thorntail.
На базах данных дропнул. Стыдно стало смореть.
чето совсем слабенько даже для джуна)
Тот неловкий момент, когда знаешь лучше собеседника, но не можешь ему подсказать.
На самом деле, если говорить о работе AQA, то вопросы Евгения тянут на уровень мидла по уровню знания кора джавы. Только для AQA, помимо кора джавы, работы с базами и HTTP, нужно знать и другие вещи: теорию тестирования, Selenium, уметь работать с селекторами и локаторами, знать TestNG/Junit, Maven/Gradle, паттерны, которые используются в автоматизации и т.д.
Безусловно, вы правы. Но, я не компетентен в этой сфере, чтобы собеседовать людей, поэтому спросил только то, что пересекается.
Странный подход.. не реализовался в своей сфере..пойду в программисты
Мне кажется, что это личное дело каждого, здесь я стараюсь оценить человека исключительно с технической точки зрения. А мотивация у каждого своя.
В его сфере платят в 3 раза меньше
Т.е. напрягает именно такой подход? К сожалению в некоторых сферах приходится напрягаться побольше, чем в программировании, а зарплаты в два-три раза меньше. Если у человека, допустим, хорошие математические способности, он далеко не гуманитарий, но просто где-то в жизни не повезло и поступил не на ту специальность - бывает, что, ему теперь впахивать за мелочь? В своей сфере человек может реализоваться и быть очень хорошим специалистом, но когда тебе вместо повышения ЗП дают грамоту с благодарностью, то ты волей-неволей задумаешься о смене специализации. Короче, нормальный подход. Мыслите более широко, тогда он не будет казаться странным.
@@user-ss2rj4wz5s такие люди просто конкуренции бояться и бояться, что потеряли свои академические годы зря, а тут после курсов пришел талантливый человек и его взяли.
@@helios32132 возможно выделить время в любом возрасте. Лично знаю таких людей. Надо просто задаться целью и меньше себя жалеть.