Опыт собеседования группы ABB для инженера-программиста

Опубликовано: 21 Августа, 2021

Всем привет, хочу поделиться своим опытом собеседования с ABB на должность инженера-программиста. Я удивлен, что в Компании никто не написал ни одного опыта для этого поста. Это был объединенный кампус для ИИТ 3-го поколения. Компания разрешила только EE и CSE.

Раунд 1: Было три секции.

  • Раздел 1: Способности и рассуждения (20 мин.).
  • Sec2: Кодирование (1 час) Допустимые языки: Java / Cpp / python / C

    Вопросы по кодированию были умеренно сложными.

    1. Распечатать путь между любыми двумя узлами в двоичном дереве.
    2. Дан массив строк. И дана одна строка. Мы сказали, сколько раз входная строка сдвигалась со своего места при сортировке.

      Строка обязательно сравнивается только с соседней строкой. Мы должны отсортировать строки в соответствии с суммой первых трех букв в строке (если строка - «abcdef», тогда значение ascii для этого будет int (a) + int (b) + int (c), то есть 294)

      Пример:

       array = {январь, февраль, март}
      строка ввода = январь
      Ascii для januray = 313
      Ascii на февраль = 301
      Ascii для марта = 320

      Вывод: Если мы отсортируем этот массив, на выходе будут февраль, январь, март (301 313 320). Итак, мы должны сказать, сколько раз январь менялся местами со своим соседом.

       1

      Ответ - Я применил пузырьковую сортировку, простую сортировку, и сравнение позиции приведет к неправильному ответу, предположим, 10,9,8,7 - после сортировки 7,8,9,10. При неправильном методе ответ будет 1, но если мы посмотрим на первый шаг пузырьковой сортировки, это будет 9,8,7,10. На этом шаге счет равен единице, на следующем шаге - 8,7,9,10. так что ответ будет 3.

    3. Общее количество элементарных ячеек, покрытых всеми заданными прямоугольниками

  • Sec3: Выбор между двумя разделами. Один раздел содержал C #, Cpp, .NET, а другой - Java (30 мин).

Я попробовал первый. Вопрос MCQ был из ООП, выходные вопросы Basic C.

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

В шорт-лист вошли 26 студентов из 120–130.

Раунд 2 (30 минут): интервьюер спросил меня, нервничаю ли я, и попытался успокоить меня, сказав: «Вы можете выключить камеру, если хотите». Он спросил меня, как прошло мое предыдущее интервью (от разных компаний, посещавших кампус). Затем он сказал, о чем вы хотите, чтобы я вас спросил. Я сказал CV и все, что требует эта работа.

  1. Он сказал мне, что у меня есть 5 минут, чтобы поговорить о чем угодно. Я рассказал о проектах, которые делал.
  2. Один проект был про графическую анимацию, которая его заинтересовала.
  3. Поэтому он спросил о Graph, почему это важно. Обходы - кратко BFS, DFS.
  4. Затем он спросил о MST. Что это значит? Приведите пример из жизни. (подключение опор на местности)
  5. Затем он спросил меня об основных идеях электрических проектов, реализованных с помощью Arduino.
  6. Затем он спросил, что я буду делать в следующем месяце, независимо от того, получу я работу или нет. Я сказал, что DS и алгоритмы - моя главная цель.
  7. Он снова перескочил обратно в DS. Он попросил меня открыть краску и нарисовать двоичное дерево и показать его обход как в DFS, так и в BFS.
  8. Он спросил о базовых ООП. Множественное наследование и т. Д.
  9. Он также спросил меня о сферах, которые мне интересны в их компании.
  10. Затем он закончил интервью, спросив, есть ли у меня к нему какие-нибудь вопросы. Я спросил его об обратной связи для улучшения себя.

Примечание: внимательно слушайте PPT. Это поможет вам в кадровом раунде (в некоторых случаях и техническом).



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

Думаю, в следующий раунд вошли 15 студентов.

РАУНД 3 (30 минут): Он начал с вопроса о предыдущем интервью. Он спросил меня, хочу ли я, чтобы он включил камеру. Я сказал, что взаимодействие будет лучше, если он включит его, поэтому он включил.

  1. Он спросил меня о моей стажировке. Что сделал? Почему я использовал определенную технологию, такую как PGSQL и т. Д.? Почему ANGULAR JS?
  2. Затем он спросил о моем проекте по программированию сокетов. Что такое архитектура клиент-сервер? Зачем нам это нужно? Примеры из реальной жизни? Как я реализовал архитектуру клиент-сервер? Как использовать многопоточность для повышения производительности?
  3. Затем он задал вопросы об ООП из C ++. Множественное и многоуровневое наследование.
  4. Он спросил что-то об ошибке компиляции в многоуровневом наследовании, и я сразу сказал: «Алмазная проблема». Он был впечатлен быстрым ответом. Затем он перешел к алгоритмам. Он задал один вопрос.
  5. Вопрос - Подсчитайте первый повторяющийся символ в данной строке. Обсудите его временную и пространственную сложность. Было хорошо просто выразить идею, не нужно ее кодировать.
  6. Потом сказал, что с технической частью покончено. Интервью закончилось за 15 минут. Поэтому он задавал вопросы о хобби. Почему мне это нравится? Время проходит за 10 минут.
  7. Затем он спросил меня, есть ли у меня к нему вопросы. Я спросил, как они собираются внедрять основные темы CS, такие как ОС, сети и т. Д., Во все, что они делают, и каков будет мой вклад в это.

PS: Интервьюер был откровенен. Я никогда не чувствовал себя на собеседовании. Я где-то читал, что интервью - это не монолог, это диалог.

Было отобрано 10 студентов.

РАУНД 4 (30 минут) Этот раунд был совершенно неожиданным. Большинству моих товарищей по собеседованию задавали вопросы HR и базовое взаимодействие. Так что я также подготовил кадровые вопросы - где вы видите себя через 5 лет… бла-бла-бла.

Раунд начался, он попросил меня представиться. Затем он уволил вопрос DS. Я был шокирован. Но я собрался и попытался ответить.

Была дана входная строка. Мне нужно распечатать все действительные анаграммы строки. Допустимые слова хранятся в файле. Количество слов в этом файле было огромным, скажем, 1 миллион.

Я сказал, что мы создаем все анаграммы данного слова, вставляем их в хэш-карту и просматриваем файл.

После этого он сказал улучшить временную сложность. Я сказал создать массив счетчика для входной строки и сравнить его с массивом счетчика слов в файле. (сравнение будет постоянным временем - O (26)). Он все еще не был удовлетворен.

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

Поэтому я предложил сначала просмотреть файл, чтобы создать массив счетчиков (например, «abcd» будет соответствовать {1,1,1,1,0…}) и преобразовать этот массив в строку, чтобы у нас было «1111000…», а затем мы вставьте его в хэш-карту (в C ++ вы можете использовать map <string, vector <string>>). Таким образом, мы сможем вывести все анаграммы в O (1) или O (log n) (только время поиска). Он остался доволен.

Предположим, что файл содержит «abcd», «bcad», «dcab», все будут сопоставлены с «111100 ..».

Затем он спросил о моих сильных и слабых сторонах (лучше привести ситуации, с которыми вы столкнулись, чтобы доказать свою точку зрения).

Наконец, все было кончено.

PS: Если у вас есть лучшее решение этого вопроса, не стесняйтесь его размещать.

Примечание: выражайте свое мышление, а не думайте только мысленно. Боритесь за подсказку. Он обязательно даст вам один, если вы на правильном пути.

Раунд 5 (20 минут ЧСС):

  1. Он начал обсуждение с того, что попросил меня представиться.

  2. Затем он перешел к подготовленному им поведенческому вопросу.

  3. Он дал мне другую ситуацию и спросил, как я с ней справлюсь.

    Пример: что вы будете делать, если кто-то в компании не отвечает на вашу электронную почту или сообщения.

  4. Как вы решите конфликт между членами команды?
  5. Самый большой провал, как вы с ним справились?
  6. какой у вас опыт в качестве руководителя группы?
  7. Где ты видишь себя через 5 лет?

Через 30 мин объявили результат. 4 студента были отобраны из моего колледжа и 3 - из других ИИТ.

К счастью, я был одним из них.

Вниманию читателя! Не прекращайте учиться сейчас. Освойте все важные концепции DSA с помощью самостоятельного курса DSA по приемлемой для студентов цене и будьте готовы к работе в отрасли. Чтобы завершить подготовку от изучения языка к DS Algo и многому другому, см. Полный курс подготовки к собеседованию . Если вы готовы, проверьте свои навыки с помощью серий тестов TCS, Wipro, Amazon и Microsoft.