Тестовое собеседование Java разработчика #6 - Вадим Пилипченко

Sdílet
Vložit
  • čas přidán 20. 04. 2020
  • Видеозапись mock интервью с middle java разработчиком Вадимом.

Komentáře • 136

  • @EugeneSuleimanov
    @EugeneSuleimanov  Před 4 lety +26

    Материалы, рекомендуемые к изучению:
    1. ORM:
    www.amazon.com/Java-Persistence-Hibernate-Christian-Bauer/dp/1617290459
    2. Cредства миграции БД:
    flywaydb.org/getstarted/how
    www.baeldung.com/database-migrations-with-flyway
    3. БД:
    habr.com/ru/post/66151/
    docs.oracle.com/cd/B28359_01/server.111/b32024/partition.htm
    4. Архитектура:
    www.amazon.com/Patterns-Enterprise-Application-Architecture-Martin/dp/0321127420
    www.ebooks.com/en-ua/book/726531/continuous-delivery/farley-david-humble-jez
    =========================
    Примеры кода из задания:
    00:24:27.766,00:24:30.766
    Eugene Suleimanov: Map map = new HashMap();
    00:24:42.700,00:24:45.700
    Eugene Suleimanov: map.put(map, "TEST");
    00:24:51.881,00:24:54.881
    Eugene Suleimanov: map.put(map, "WTF!!!");
    00:25:49.606,00:25:52.606
    Eugene Suleimanov: String result= map.get(map);
    00:27:05.318,00:27:08.318
    Eugene Suleimanov: List list = new ArrayList();
    00:27:08.490,00:27:11.490
    Eugene Suleimanov: list.add(1)
    00:27:12.139,00:27:15.139
    Eugene Suleimanov: list.add(1.0)
    00:27:16.601,00:27:19.601
    Eugene Suleimanov: list.add(1L)
    00:27:20.704,00:27:23.704
    Eugene Suleimanov: sout(list)
    00:27:56.965,00:27:59.965
    Eugene Suleimanov: Arrays.toString(list)
    00:28:31.631,00:28:34.631
    Eugene Suleimanov: list.get(2) instanceof Long

    • @arthurfonzerelli6484
      @arthurfonzerelli6484 Před 4 lety +18

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

  • @user-rr2zz9fp8u
    @user-rr2zz9fp8u Před 3 lety +55

    7:20 Statement в jdbc
    9:23 ACID
    11:30 уровни изоляции транзакций(их 4)
    14:44 способы обезопасить процесс изменения строк таблицы в бд(с помощью хешСуммы, например)
    19:03 иерархия исключениий
    20:41 try with recourses
    23:10 обрабатывать на месте vs прокинуть исключение дальше
    24:30 пример с Map из описания видео
    27:05 пример с List
    32:14 Object.finalize()
    33:06 Spring bean scopes(их 6)
    34:50 mock'и для тестов
    35:51 партиционирование таблиц (вертикальное vs горизонтальное)
    36:22 full scan vs index scan
    36:32 индексы, составные индексы, минусы и плюсы их использования
    38:48 возможна ли реализация https комуникации меджу сервисами развернутыми локально?

  • @djonidjonovic8029
    @djonidjonovic8029 Před 4 lety +61

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

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

    Большое Вам спасибо!
    Вы прекрасный интервьюер.
    Успехов и развития!

  • @user-mb4uo7fb9o
    @user-mb4uo7fb9o Před 4 lety +6

    Отличное видео, собеседник хорошо подготовлен! Побольше бы таких.

  • @GoPetr
    @GoPetr Před 4 lety +7

    Спасибо Вам за труд!

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

    Спасибо за такой формат )) очень интересно, собираюсь стать программистом. Отличная возможность оценить свои знания в сравнении.

    • @davidkain9046
      @davidkain9046 Před 3 lety +1

      Одумайся пока не поздно

  • @user-kt7hy5vk3k
    @user-kt7hy5vk3k Před 4 lety +1

    Отличный формат. Ждем новых интервью

  • @fredor2844
    @fredor2844 Před 4 lety

    Супер! Давайте еще!

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

    Очень круто. Если бы были бы ещё вопросы, вообще огонь, а то с телефона неудобно смотреть и вбивать в Заметки)

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

    Полезные видио =) Много чего полезного. Спасибо за такие позновательные видео.

    • @EugeneSuleimanov
      @EugeneSuleimanov  Před 2 lety

      Спасибо за отзыв, рад, что материал оказался полезен:)

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

    Чётко , снимай больше видосов.

  • @lolol_miay
    @lolol_miay Před 4 lety +40

    Про автоклозабл как препод на зачёт вытягивал))

  • @user-ix2tg5ur4u
    @user-ix2tg5ur4u Před 4 lety +8

    Вот бы так же, только про андроид :)
    Посмотрел с удовольствием, спасибо.

  • @FilmicFil
    @FilmicFil Před 3 lety

    Просто для продвижения. Нравится канал)

  • @ewgeniyburlakov6233
    @ewgeniyburlakov6233 Před 3 lety

    Годнота

  • @flyman335
    @flyman335 Před 4 lety +5

    Евгений, спасибо за Ваш труд. Можно ли добавить в формат собеседований разбор примеров кода и задачки на алгоритмы. Интересно как кандидаты будут справляться с ними, ведь на реальном собеседовании они будут.

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

      Спасибо за отзыв! Есть такая мысль, сейчас как раз думаю, как это можно добавить в данный формат.

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

    На всякий случай (не знаю писали или нет) по поводу примера с Map - в данном виде он не скомпилится из за несоотвествия генериков при map.put(map, "TEST");
    Можно заменить генерик на Map

  • @user-tr5js3px4x
    @user-tr5js3px4x Před 4 lety +10

    Евгений, спасибо, что вы делаете! Очень полезно! К сожалению, не нашел информацию про Вас, расскажите про свои проекты, скилы и чем вы гордитесь в своей работе
    Может это будет даже видео

    • @EugeneSuleimanov
      @EugeneSuleimanov  Před 4 lety +5

      Спасибо за отзыв! Подумаю, в каком формате это лучше всего сделать.

    • @user-px3qu6nl9f
      @user-px3qu6nl9f Před 3 lety

      +100. Было бы интересно послушать

  • @Mukhinroman
    @Mukhinroman Před 4 lety +8

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

  • @user-qi6zo5tw6t
    @user-qi6zo5tw6t Před 3 lety +2

    Здравствуйте, Евгений. Нашел ваше видео только сейчас. Есть вопрос: почему в примере с листом из Number list.get(2) instanceof Long выведет false? По типам все совпадает, более того сама Java выдает true.

  • @user-vy6ct9dn9i
    @user-vy6ct9dn9i Před 4 lety +8

    Евгений, хотелось бы узнать, как люди попадают на ваши собеседования и какой ваш интерес?
    Недавно наткнулся на ваши видео, канал шикарен!

    • @EugeneSuleimanov
      @EugeneSuleimanov  Před 4 lety +14

      Спасибо за отзыв! Пишут на почту - proselytear@yahoo.com
      А по поводу интереса - вопрос философский - если бы я сам знал ... :)

  • @ildardeveloper2515
    @ildardeveloper2515 Před 4 lety +15

    выводить бы на экран письменные вопросы

    • @EugeneSuleimanov
      @EugeneSuleimanov  Před 4 lety +9

      Я добавлю их отдельным комментарием и закреплю его. Спасибо за замечание.

  • @HowToGoPro
    @HowToGoPro Před 4 lety

    Евгений, я не совсем разобрался с вопросом про защиту поля в базе данных, но по поводу системы контроля версий бд, flyway, например, то с их помощью накатывается структура базы и чексума считается для миграции. А данные независимо от flyway уже селятся и апдейтятся?

    • @EugeneSuleimanov
      @EugeneSuleimanov  Před 4 lety +1

      Про защиту поля - уже написал в каком-то из предыдущих комментариев - про DENY... А flyware - общались только про специфику работы самой системы миграции.

  • @wivernx9449
    @wivernx9449 Před 4 lety +11

    Евгений, какой это уровень? Досмотрел до конца 39:30, услышал.
    Eugene Suleimanov Кстати на ютубе набирает популярность канал одного программиста с интервью на Java разработчика, только он ещё и на вопросы в следующем видео сам отвечает. возможно будет полезно для развития вашего канала. Кто за рубрику Ответы- на вопросы собеседований - ставь палец!)

    • @EugeneSuleimanov
      @EugeneSuleimanov  Před 4 lety +5

      ИМХО - мидл

    • @user-zv4kq8ly2n
      @user-zv4kq8ly2n Před 4 lety

      @@EugeneSuleimanov Евгений а что значит ИМХО?)))

    • @EugeneSuleimanov
      @EugeneSuleimanov  Před 4 lety +5

      По моему скромному мнению )
      Это, чтобы потом не могли прикопаться. Мол, я же только мнение высказал - отличная штука :)

    • @caffeinejavacode1475
      @caffeinejavacode1475 Před 4 lety +5

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

    • @user-vr9nr9dy1l
      @user-vr9nr9dy1l Před 4 lety +1

      Ро́берт Джеймс Фишер по его мнению

  • @ms_shifu7047
    @ms_shifu7047 Před 4 lety

    cool

  • @1asgarov
    @1asgarov Před 4 lety

    Спсибо за видео было интересно - вы вроде сказали что рекомендуемую литературу выложите?

    • @EugeneSuleimanov
      @EugeneSuleimanov  Před 4 lety +1

      Спасибо за отзыв! Все материалы в закрепленном комментарии.

  • @user-si6sh4jw5d
    @user-si6sh4jw5d Před 4 lety +3

    Открываться.... ))) не плохо )

  • @alexsav7427
    @alexsav7427 Před 3 lety +1

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

    • @rusnipyzda195
      @rusnipyzda195 Před 3 lety

      падає з StackOverflow. Причина в рекурсії при прорахунку get

  • @yanlevchenko3870
    @yanlevchenko3870 Před 3 lety

    а что значит таблицы создаются на базе клиента? База клиента находиться на сервере? Или как это вообще работает?

  • @smyvin
    @smyvin Před 3 lety

    для сложных запросов майбатис хорошо подходит

    • @EugeneSuleimanov
      @EugeneSuleimanov  Před 3 lety

      Да, но, если уже встряли с Spring Data, то есть projection. Крайне выручает местами.

  • @foxtrotsierra5095
    @foxtrotsierra5095 Před 4 lety +1

    Ну да, а примеры по которым спрашиваешь было сложно добавить в описание

    • @EugeneSuleimanov
      @EugeneSuleimanov  Před 4 lety +8

      Я верно понимаю, что это попытка конструктивной критики обёрнутая пародией на сарказм?

  • @user-wi1nh4yp3w
    @user-wi1nh4yp3w Před 4 lety

    По поводу map так и не разобрали до конца, что там в результате будет. Я джаву не знаю, но просто попробую догадаться. Похоже, что Map здесь старый добрый словарь, реализованный как хэш-таблица. Полагаю, что в качестве ключа тут будет адрес объекта map в памяти, а это просто число и оно не меняется. Поэтому не изменяемость ключа сохранится. Ну и когда мы добавляем по одному и тому же ключу эти строки, то вторая затрет первую. Поэтому результатом будет WTF!!! Евгений скажите так это или нет?

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

      Compilation error. Здесь пытаются положить ключ типа Map в мапу ожидающую в качестве ключа Map.

  • @smdfb7334
    @smdfb7334 Před 4 lety +3

    Мне одному показалось что вопросы на мидла были в разы проще чем на джуна?

    • @EugeneSuleimanov
      @EugeneSuleimanov  Před 4 lety +1

      Вопрос не так важен, как ответ на него :)

  • @tamik1277
    @tamik1277 Před 4 lety

    А можете сделать тестовое собеседование для Android разработчика?

    • @EugeneSuleimanov
      @EugeneSuleimanov  Před 4 lety

      К сожалению, нет. Не компетентен в данной области.

  • @MagicSkyTV
    @MagicSkyTV Před 4 lety +1

    Выводи, пожалуйста, примеры, которые пишешь в скайпе в видео) Хотя бы поверх скрином)

    • @EugeneSuleimanov
      @EugeneSuleimanov  Před 4 lety

      Добавил лог чата в закрепленном комментарии. Спасибо :)

  • @ditemirkhan
    @ditemirkhan Před 2 lety

    таймкоды были бы кстати

  • @johannesbrown8853
    @johannesbrown8853 Před 4 lety +1

    А какой был пример с Map?

    • @EugeneSuleimanov
      @EugeneSuleimanov  Před 4 lety

      @First Sin да, верно. Именно такой. Прошу прощения, что упустил этот момент при публикации видео.

  • @pavlogpg
    @pavlogpg Před 4 lety

    А какой пример был с row листом?

    • @EugeneSuleimanov
      @EugeneSuleimanov  Před 4 lety

      Добавил лог чата в закреплённый комментарий.

  • @AndreyDeveloper
    @AndreyDeveloper Před 4 lety +6

    А меня можно по собеседовать, хотя бы на juniora? Чисто не для места, чисто для ролика?

    • @EugeneSuleimanov
      @EugeneSuleimanov  Před 4 lety

      Напишите мне на почту: proselytear@yahoo.com
      Обсудим детали.

  • @darknet6664
    @darknet6664 Před 4 lety

    Где книги рекомендуемые найти?

    • @EugeneSuleimanov
      @EugeneSuleimanov  Před 4 lety

      Добавил рекомендуемую литературу в закреплённый комментарий.

    • @darknet6664
      @darknet6664 Před 4 lety

      @@EugeneSuleimanov спасибо

  • @FilmicFil
    @FilmicFil Před 3 lety +3

    System.out.println(map.get(map)); У меня StackOverflowError))

  • @ConfidenceGold
    @ConfidenceGold Před 2 lety

    То есть что он пишет в коде нам не видно? Эх, а я думал чему-то научусь

  • @romans.a.2523
    @romans.a.2523 Před 4 lety +5

    Так как можно защитится от изменения суммы в БД?

    • @EugeneSuleimanov
      @EugeneSuleimanov  Před 4 lety +4

      На самом деле - мой ответ в собеседовании далёк от реальности. И целью было, увидеть, как человек думает при решении не стандартных задач. Ну а целом, когда я работал над подобным функционалом - DENY UPDATE... И при вставке в БД транзакции запускается хранимая процедура, которая апдейтит баланс аккаунта. А вот там при валидации использовались и контрольные суммы и проверки и т.д.

    • @user-hq6nm2tf6j
      @user-hq6nm2tf6j Před 4 lety

      я так понял используя checksum, но надо, чтобы и хакер не знал, как она рассчитывается

    • @user-kz5wv1tc2v
      @user-kz5wv1tc2v Před 4 lety

      Возможно должна быть двойная запись : чтобы деньги поступили нужно их списать

    • @Jusestars
      @Jusestars Před 4 lety

      @@EugeneSuleimanov Правильно ли я вас понял, что защита происходит средставми самой БД?

    • @user-ur1wv3vx7e
      @user-ur1wv3vx7e Před 4 lety

      @@EugeneSuleimanov а можно ли хранить в бд данные о балансе аккаунта? Не лучше ли будет считать баланс по транзакциям?

  • @user-jo3ri5mt9y
    @user-jo3ri5mt9y Před 3 lety +3

    три года стажа?! мля.. видели б вы как в лабу епама трясли. без стажа. чтобы студентом стать. Вопросы грамотные и не сильно сложные. самое распространенное. Евгению лойс.

    • @meison7969
      @meison7969 Před 3 lety

      Работаешь уже или ещё на лабе?

    • @user-jo3ri5mt9y
      @user-jo3ri5mt9y Před 3 lety

      @@meison7969 работаешь

    • @meison7969
      @meison7969 Před 3 lety +1

      @@user-jo3ri5mt9y красавчик а сколько заняло времени в епам от лаб до оффера ?

    • @user-jo3ri5mt9y
      @user-jo3ri5mt9y Před 3 lety +1

      @@meison7969 я ушел из епама сразу после окончания Лабы. 4 месяца. Лаба вам не панацея. Там никто никого не учит от слова совсем. Только сам. Самообучение. Если сам не можешь, то это не твое. И так везде и всегда.

    • @user-wn8vd7mm3b
      @user-wn8vd7mm3b Před 3 lety

      @@user-jo3ri5mt9y Не Беларусь случайно?

  • @Nyamistaya
    @Nyamistaya Před 4 lety +1

    Вы работаете на балконе? :)

  • @mikhail6694
    @mikhail6694 Před 4 lety

    map.put(map, "TEST"); map.put(map, "WTF!!!"); Error java: incompatible types: java.util.Map cannot be converted to java.util.Map

    • @user-lq4if3rf3d
      @user-lq4if3rf3d Před 3 lety

      Вы неправильно создавали мапу изначально скорее всего

  • @MichaelSuzko
    @MichaelSuzko Před 4 lety +4

    Удивляет, что после трех лет опыта Вадим себе к возможным джунам относит... По мне через год опыта, если нормально стараться и развиваться, ты не можешь быть джуном, должен быть уже мидлом без всяких вопросов. Но если конечно тяжело идет, то джуном можно и 10 лет просидеть

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

      удивляет что за три года он так и не узнал как работают индексы)

    • @dimasamsonau3646
      @dimasamsonau3646 Před 2 lety

      @@smyvin если ты с ними никогда не сталкивался - нахер они тебе тогда нужны?

    • @wizzard211
      @wizzard211 Před rokem

      Джун он 100% .

  • @KhazanViktor
    @KhazanViktor Před 2 lety

    32:20 детский сад

  • @mormeoi
    @mormeoi Před 4 lety +1

    Кажется, что спрашивать о возрасте на интервью считается дурным тоном. На западе точно. Кстати, почему задач нет?

    • @EugeneSuleimanov
      @EugeneSuleimanov  Před 4 lety +3

      На Западе это не только дурной тон, но и на иск можно нарваться. А в данных видео, исключительно, чтобы люди понимали общую картину. Возможно, это и не красиво, постараюсь убрать этот вопрос в будущем. Спасибо, что обратили внимание на этот момент.

  • @dark_evil77
    @dark_evil77 Před 4 lety +1

    ДРЮ КИКНУЛ МЕНЯ!!!

    • @antondoronin1261
      @antondoronin1261 Před 4 lety

      Великий Дрю всегда справедлив

    • @EugeneSuleimanov
      @EugeneSuleimanov  Před 4 lety

      Я немного не в теме, а что это такое?

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

      @@EugeneSuleimanov на самом деле не ясно, зачем было писать такой комментарий у вас на канале. Дрю, он же Андрей - это автор канала czcams.com/channels/1g3kT0ZcSXt4_ZyJOshKJQ.html
      В чате подписчиков Андрея в Telegram в последнее время люди постят ваши ролики с собеседованиями. Именно так, например, я начал вас смотреть.

    • @dark_evil77
      @dark_evil77 Před 4 lety +1

      Eugene Suleimanov это группа letscode) в телеграме, меня просто так кикнул человек по имени ДРЮ!

    • @alexandernikolaev174
      @alexandernikolaev174 Před 4 lety

      Для статистики, vk.com/video-111905078_456245689

  • @if_xx
    @if_xx Před 4 lety

    Интервью у шрауда, это прикольно)

    • @EugeneSuleimanov
      @EugeneSuleimanov  Před 4 lety

      Что такое шрауд? )

    • @if_xx
      @if_xx Před 4 lety

      @@EugeneSuleimanov Это популярный стример shroud, ты немного похож на него, по первым впечатлениям)

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

    Если 3 года назад это были требования на мидла, то это просто ни о чем сегодня. Даже не трейни наверное.

    • @EugeneSuleimanov
      @EugeneSuleimanov  Před rokem

      Да, требования растут. Наверное, это даже правильно.

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

      @@EugeneSuleimanov уж не потому ли, что подобные "мидлы" боятся, что их выкинут ?))

    • @EugeneSuleimanov
      @EugeneSuleimanov  Před rokem

      @@user-qx3jt8fw1v чел. фактор, конечном влияет, но это больше относится к позициям менеджерским :)
      Не стоит забывать про активное развитие технологий, программирование сейчас и 10 лет назад - совершенно разные вещи.

  • @seydazimovnurbol1974
    @seydazimovnurbol1974 Před 4 lety +1

    ЧСВщный интервьюер + тупо ботанство