Oracle Interview Experience для консультанта по облачным технологиям FTE
Всего было проведено 3 раунда собеседований. Один онлайн-тест и два технических собеседования. 1 тест на пригодность, 2 полностью технических собеседования за один день. Из-за covid-19 весь описанный ниже процесс проводился онлайн в Zoom. В течение 1 часа после завершения процесса мы получили письмо с предложением от Oracle.
Онлайн раунд:
- Тест на способности: (Общая продолжительность: 2 часа)
- Тест основан на разделах и времени. Тест длинный и напряженный, но между разделами можно делать перерывы. Оставьте некоторое время в конце, чтобы сделать рассчитанное или случайное предположение (без отрицательной маркировки).
- Имп. Темы для теста: дерево AVL, блок-схемы кодирования, SQL-запросы, ОС (основные темы, такие как взаимоблокировки, понимание процессов и потоков, их алгоритмы планирования), база данных, ООП (сделайте это хорошо, все основные методы, такие как инкапсуляция, абстракция, наследование и т. д.) .
- 36 из 223 были отобраны для собеседования.
Техническое интервью, раунд 1: интервью проводилось в Zoom и длилось около 45 минут. Интервью началось с простого представления себя, а затем интервьюер начал с технических вопросов.
- Напишите CREATE Table для сотрудника и отдела
- Выполнить операцию присоединения
- Напишите запрос, чтобы узнать отделы, в которых количество сотрудников больше 100.
- Напишите код C++ для хранения имен сотрудников и сортировки их в порядке возрастания[Невозможно использовать встроенную сортировку]
C++
#include <bits/stdc++.h> using namespace std; //Time Complexity:O(n^2) //SpaceO(1) extra space complexity void my_sort(vector<string>&v) { int n=v.size(); for ( int i=0;i<n-1;i++) { for ( int j=i+1;j<n;j++) { if (v[i]>v[j]) { swap(v[i],v[j]); } } } } int main() { // your code goes here int n; cin>>n; vector<string>v; for ( int i=0;i<n;i++) { string s; cin>>s; v.push_back(s); } my_sort(v); for ( auto ch:v) { cout<<ch<<endl; } return 0; } |
- Преобразование массива в связанный список: https://www.geeksforgeeks.org/create-linked-list-from-a-given-array/
- Задал вопрос, связанный с основами CS, такими как нормализация, разница между 3NF, BCNF, наследование, полиморфизм, пейджинг.
- Затем он начал спрашивать о моем проекте, например, что такое машинное обучение, что такое линейная регрессия и почему я использовал линейную регрессию в своем проекте?
- Задаваемые вопросы, связанные с обработкой данных и EDA
- Почему я выполнил стандартизацию данных?
- Какой вывод я сделал из построения парных графиков?
- Где я размещал свое приложение?
24 человека из 36 перешли во 2 тур
Техническое интервью, раунд 2: интервью проводилось в Zoom и длилось около 30 минут. Интервью началось с простого представления себя, а затем интервьюер начал с технических вопросов.
- SQL-запрос, чтобы найти имена сотрудников с именами их менеджеров [может быть решено с помощью Self Join]
- Как вы можете стилизовать компоненты Html?
- Какой тег используется для связывания файлов в HTML?
- Что такое МЛ?
- Опишите свой проект? Что он делает на самом деле? Как вы пришли к выбору моделей при разработке приложения?
- Что такое Фласк? Почему при создании приложения вы выбрали Flask, а не Django?
- Что такое наследование? Напишите код, показывающий множественное наследование
- Что такое Полиморфизм? Какие бывают виды полиморфизма?
- Напишите код для перегрузки функций.
- Напишите код для демонстрации полиморфизма во время выполнения.
Наконец, 15 человек из 24 получили письмо с выбором, и я был одним из них.