Опыт собеседования с Mastercard для Java Backend-разработчика (2 года опыта)
Опубликовано: 12 Января, 2023
Раунд 1 Технический (1 час):
- Что такое гибернация и как она работает?
- Почему процедуры и функции, написанные на SQL, работают быстрее, чем функции, написанные на java для той же задачи.
- В чем разница между интерфейсами и абстрактными классами?
- Что такое SpringBoot? И почему он предпочтительнее Spring MVC.
- Почему Java быстрее, чем Python?
- Что такое полиморфизм? Можем ли мы перегрузить основной класс?
- Что такое курсор и триггер? Когда использовать триггер?
- Объясните архитектуру вашего полного проекта (это был веб-сайт управления взаимоотношениями с клиентами) и самую последнюю работу, над которой вы работаете.
- Напишите рекурсивный и итеративный подход к печати ряда Фибоначчи.
- Дан связанный список, и нам нужен n-й элемент с конца. Каким будет ваш подход?
Раунд 2 Технический (1 час 15 минут):
- Какие классы?
- Что такое интерфейсы и абстрактные классы? Из Java 8 у нас могут быть стандартные и статические методы в Java 8, тогда в чем основная разница между ними?
- Можно ли использовать абстрактные классы вместо интерфейсов или это вызовет ошибку компиляции?
- Когда использовать абстрактный класс и когда использовать интерфейсы. Какие факторы вы будете учитывать при принятии решения?
- Что такое полиморфизм? Объясните роль JVM в динамическом полиморфизме.
- Как строки хранятся в базах данных. В каком физическом месте он хранится? И как они взаимодействуют друг с другом.
- Почему размер массива фиксирован? Думайте с точки зрения JVM. И укажите роль JVM в этом. Что нужно изменить, чтобы массив стал динамическим?
- Какие объектно-ориентированные концепции поддерживают полиморфизм и как?
- Он спрашивал о моем интересе. Я сказал ему, что в настоящее время совершенствую свои навыки работы со структурами данных. Затем он спросил: «По-вашему, как работает leetcode? Если вам нужно разработать платформу кодирования, каким будет ваш подход?
- Как вы сказали, вы улучшаете структуру данных, давайте посмотрим, насколько вы улучшились. Определите класс Mountain и используйте его объект. Найдите третью по величине гору в заданном массиве и верните ее объект. (Гора -> сначала увеличивается, а затем уменьшается после пика). Анализ временной сложности.
I/p: 1,2,1,2,3,4,5,3,2,4,6,8,9,10,9,8,7,10,12,14,15,16,17,18,19,10,5,2 Output: 2 8 6 ->(Start Index, End Index, Width of Mountain)
Раунд 3 (Технический+Управленческий) (1 час 15 минут):
- Что такое SSL? Что такое SSL-сертификат?
- Что такое протокол HTTP и почему он используется для связи между сервером и клиентом?
- Разница между REST и SOAP. Почему REST предпочтительнее SOAP.
- Почему REST быстрее, чем SOAP.
- Что вы используете для регистрации? Как вы его настраиваете?
- Что такое экземпляр AWS EC2 и как в нем развернуть jar?
- Разница между SQL и NoSQL. И как решить, когда использовать SQL или NoSQL,
- У нас есть таблица сотрудников с атрибутами: имя, фамилия и вставка. Два администратора хотят одновременно сменить сотрудников с одним и тем же идентификатором.
- Как вы справитесь со сценарием и каков будет ваш подход? Должно быть напечатано правильное сообщение об ошибке.
- Какую сложную проблему вы решили и чем гордитесь?
- Реализация HashTable и HashMap. Где хранятся данные (в оперативной памяти или на жестком диске)
- Что такое пул потоков Java? Как это работает.
- Каковы ваши 3 слабые и 3 сильные стороны?
- Как вы объясните микросервисы 8-летнему ребенку?
- Почему Мастеркард?
- Предположим, у вас есть отличная идея для проекта, над которым вы работаете. Но большинство членов команды и руководства против вашей идеи. Как вы ответите?
- Каково качество хорошего члена команды? Как вы оцениваете себя как члена команды по 10-балльной шкале?
- Кем вы видите себя в ближайшие 5 и 10 лет?
Раунд 4 (Обсуждение кадров):
- Почему Мастеркард? Что вы знаете о MasterCard?
- Вы готовы переехать в Пуну?
- Затем обсуждение льгот и зарплаты.
Результат: Выбрано