Рубрики

Bloomberg Интервью Опыт | Набор 5 (для программиста начального уровня)

Я подал заявку онлайн через секцию карьеры Bloomberg. Приложение было для инженера-программиста начального уровня на сайте Bloomberg London. Мне нужно было загрузить свое резюме и сопроводительное письмо. Мой язык выбора для интервью был C / C ++.

Секция 1:
В течение нескольких недель после подачи заявления мне позвонили из HR и сказали, что они хотели бы выдвинуть мою кандидатуру и назначить телефонное собеседование. Это было телефонное интервью 1: 1. Телефонный звонок начался с того, что интервьюер представился, а затем кратко рассказал о себе. Затем он спросил меня, почему я хочу присоединиться к Bloomberg. Он задал мне следующие вопросы:

1a) Основы указателя:

#include <string.h>
#include <iostream>

  

using namespace std;

  

  

int main(int argc, char *argv[])

{

    char    abc[27];

    char    *ptr = abc;

    strcpy(abc, "abcdefgxyz");

    / *

     * Каковы типы и значения выражений:

     *

  

     * 1. abc

     * 2. * abc

     * 3. abc [2]

     * 4. & abc [3]

     * 5. abc + 4

     * 6. * (abc + 5) + 2

     * 7. abc [10]

     * 8. abc [12]

     * 9. & ptr // ??? a = & ptr;

     * /

     cout << &abc << endl;

       

       

    return 0;

}

1b) Соответствие скобок:
Вам дана строка, состоящая из скобок и других символов. Вы должны сказать, хорошо ли это сбалансированная строка. Смотрите ниже, например:

/*

"(aa)bb" -> true
"[ aa [ bbb ]" -> false
"aa } bbb { c" -> false
"aa [ bb () ]" -> true
"[aa { ] cc } ]" -> false

*/

1c) Дизайн веб-браузера:
Разработайте и внедрите веб-браузер, который поддерживает функциональность, позволяющую в каждом конкретном случае эффективно сообщать топ-5 посещенных веб-сайтов по количеству посещений. Этот вопрос был вариантом LRU-кэша, и его можно оптимально реализовать, используя карту и двусвязный список. См. Ниже для шаблона дизайна:

struct Webpage

{

    std::string url;

    size_t numberOfVisits;

};

  

struct History

{

    void visit(const std::string & url)

    {

    // Реализуем логику

    }

  

    void printTop5()

    {

          // Реализуем логику

    }

};

  

int main()

{

    History h;

    std::cout << "before visits\n";

    h.visit("www.google.com");

    h.visit("nytimes.com");

    h.visit("guardian.co.uk");

    h.visit("dev.ibm.com");

    h.visit("www.google.com");

    std::cout << "after  visits\n";

    h.print();

}

Раздел 2:
После этого телефонного интервью меня пригласили на видео-интервью. Этот процесс интервью проходил 2: 1 и проходил по той же схеме, что и предыдущий. Были заданы следующие вопросы:

2a) Выполнить кодирование длины строки. Смотрите ниже, например:

aaaaabbbccd => a5b3c2d1
xyz => x1y1z1

2b) Объединить перекрывающиеся интервалы. Смотрите ниже, например:

[1,3] [2,5] [8,9] => [1,5] [8,9]
[1,3] [2,6] [4,99] => [1,99]

Раздел 3:

После видео-интервью меня пригласили на еще одно видео-интервью 2: 1. Это следовало тому же шаблону введения, что и в предыдущем интервью. Были заданы следующие вопросы:

3a) Учитывая бинарное дерево, скажите, является ли это действительным BST.

// This is BST
//            10
//           /  \
//          5    15
//         / \
//        1   7

// This is not BST
//            10
//           /  \
//          5    15
//         / \
//        1   11

// This is not BST
//            10
//           /  \
//          5    15
//         / \
//        6   7

3b) Реализовать общую хэш-карту в C ++. Обязательно используйте шаблоны, хорошие хэш-функции и будьте готовы обсудить дизайн для обработки коллизий.

Раздел 4:

После вышеупомянутого успешного телефонного и видео-интервью меня пригласили в лондонский офис для интервью на месте. Мне оказали визовую помощь и предоставили двухстороннее экономическое путешествие (Индия-Лондон), а также 2 дня и 2 ночи проживания в отеле.

Со мной было около 10 других кандидатов из разных стран и стран. Нас встретили HR и дали полный офисный тур. Офисные помещения просто потрясающие — возможно, одни из лучших в отрасли. Я действительно любил это. Этот тур длился около часа. После этого мы все завтракали с инженерами, которые должны были брать наши интервью. На этой сессии мы должны были работать в сети.

Я дам подробности интервью на месте в следующих подразделах:

4a) Первый раунд: это было интервью 3: 1 по алгоритму и структурам данных. Мне задали вопрос, очень похожий на 1.b. Произошло небольшое изменение: если '&' соответствует '&' в строке, как вы измените свой код, чтобы приспособиться к этому. Предполагается, что вы будете следовать модульности кода, так что, если будет добавлено какое-либо требование, вы легко сможете это учесть. Кроме того, мы обсудили основные принципы C / C ++ — указатели, типы данных. Кроме того, были вопросы дизайна на стеке — как вы будете это реализовывать? — используя массивы или связанный список и каковы компромиссы.

4b) Второй раунд: это было интервью 1: 1 с техническим менеджером. Мы подробно обсудили наше резюме — что я достиг, каковы были недостатки проекта, упомянутого в резюме. Он задал много поведенческих вопросов, где хотел узнать, насколько я хороший командный игрок.

Затем он задал вопрос дизайна. Вы работаете в электронном обмене. В течение дня вы получаете тики (торговые данные), которые состоят из названия продукта и его обмениваемого объема акций. Например: {имя: vodafone, том: 20}. Какую структуру данных вы будете поддерживать, если:
* Вы должны указать топ k продуктов, торгуемых по объему в конце дня . (Я использовал вектор и кучу для этого).
* Вы должны указать топ k продуктов, торгуемых по объему в течение дня . (Я использовал сбалансированный BST и карту для хранения адресов памяти каждого продукта).

4c) Третий раунд: Третий раунд был с одним из представителей HR. Она задала вопрос о заинтересованности HR-команды. Некоторые из них перечислены ниже:
* Почему Блумберг?
* Как вы узнали о Bloomberg?
* Почему вы не подаете заявку в другие компании в Лондоне?
* Какое ваше идеальное рабочее состояние?
* Что поддерживает тебя в мотивации?
* Почему вы хотите покинуть свою нынешнюю компанию?
* Будете ли вы грустить по поводу ухода из вашей компании?
* Какова ваша зарплата ожидания?

Раздел 5:
После собеседования на месте был организован последний телефонный звонок с инженером в Лондоне. Цель призыва в том виде, в котором он цитировался, заключалась в следующем: «Узнать, обеспечивает ли Bloomberg то, что ожидает кандидат, чтобы в итоге это была беспроигрышная ситуация для обоих». Основное внимание было уделено поведенческому аспекту кандидата. Ниже приведены некоторые из вопросов, которые я помню из интервью:
* Почему Блумберг?
* Чего вы ждете от Bloomberg?
* Почему вы выбрали информатику в качестве основного направления?
* Каким проектом вы гордитесь?
* В каком проекте вы провалились?
* Что бы вы изменили, если бы у вас была возможность снова поработать над неудачным проектом?
* Что самое разочаровывающее в вашей нынешней организации?
* Расскажите о плюсах и минусах компаний, в которых вы работали?

Раздел 6:

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

СОВЕТ ПРО: узнайте больше о Bloomberg. Во всех интервью вас спросят, почему вы хотите присоединиться к Bloomberg. Узнайте о некоторых проектах Bloomberg, которые вас интересуют, и обсудите то же самое с вашим интервьюером. Чем больше у вас энтузиазма по поводу присоединения к Bloomberg — тем больше это увеличит ваши шансы на то, что вас выберут. На собеседовании в Bloomberg помимо проверки ваших технических способностей также выясняется, подходит ли вам организация, а это значит, что вашей поведенческой стороне будет уделяться значительное внимание. Проверьте следующие ссылки для получения информации о технологиях в Bloomberg:
https://www.bloomberg.com/careers/technology/engineering/
https://www.techatbloomberg.com/
https://www.bloomberglabs.com/

Если вы как GeeksforGeeks и хотели бы внести свой вклад, вы также можете написать статью с помощью contribute.geeksforgeeks.org или по почте статьи contribute@geeksforgeeks.org. Смотрите свою статью, появляющуюся на главной странице GeeksforGeeks, и помогите другим вундеркиндам.

Пожалуйста, пишите комментарии, если вы обнаружите что-то неправильное или вы хотите поделиться дополнительной информацией по обсуждаемой выше теме.

Напишите свой опыт интервью или отправьте его по электронной почте на адрес contrib@geeksforgeeks.org

Рекомендуемые посты:

Bloomberg Интервью Опыт | Набор 5 (для программиста начального уровня)

0.00 (0%) 0 votes