Как я взломал TCS Digital
Ура! Результаты моего собеседования в TCS Digital опубликованы, и я, к счастью, сделал это. Поскольку я давно хотел работать в области искусственного интеллекта, я не думаю, что есть лучшая платформа, чем TCS Digital, для обучения тому, как это сделать в профессиональном мире, для таких новичков, как мы.
В этом блоге я поделюсь своей стратегией подготовки, ресурсами, которые я использовал, и даже своей кодовой базой для прохождения всех этапов и их взлома один за другим.
Целевая аудитория. Эта статья предназначена для студентов, изучающих инженерные специальности, которые в настоящее время учатся на последнем курсе (независимо от направления). Однако, если вы находитесь на одном из ранних лет, эта статья все равно поможет вам начать работу раньше, что на самом деле является большим преимуществом.
О цифровых технологиях
Во-первых, вы должны знать, что это за технологии, так как вы будете работать с ними, если вас выберут. Знание этих технологий поможет вам пройти более поздние этапы процедуры приема на работу.
Ключевые термины, о которых вам следует знать (не стесняйтесь проверять другие ресурсы, чтобы узнать о них):
- Искусственный интеллект
- Машинное обучение
- Глубокое обучение и НЛП
- Облачные вычисления
- Компьютерное зрение
- Блокчейн
- Виртуальная реальность
Необязательно знать обо всех этих технологиях попутно; Я, конечно, этого не сделал. Однако вы должны иметь некоторое представление обо всех из них и иметь опыт работы хотя бы с одним из них; а под опытом я имею в виду проекты.
Наконец, вы можете прочитать, что TCS говорит об этих технологиях на их собственном веб-сайте TCS Interactive.
Этапы процесса найма
Есть несколько способов попасть в TCS Digital; Я буду упоминать шаги, которые я предпринял в процессе, и подробно расскажу о каждом из них.
Этапы в процессе:
- CodeVita
- Интервью для ниндзя
- Онлайн-тест для цифровых технологий
- Интервью для Digital
Вот шаги, которым я следовал. Вы могли заметить, что это ступеньки езды за пределами кампуса. Если вы являетесь студентом одного из престижных колледжей, где TCS проводит цифровой набор, выполните только шаги №3 и №4.
Для всех остальных начните сверху, т. Е. С шага №1.
Теперь я раскрою каждую из этих фаз одну за другой.
Этап # 1: CodeVita
TCS ежегодно проводит собственный конкурс кодеров под названием CodeVita. Он состоит из задач алгоритмического кодирования, как и большинство соревнований по стандартному кодированию.
Если вы студент последнего курса и вам удастся получить «хороший» рейтинг в этом конкурсе, вы сразу получите право на собеседование, без необходимости сдавать какой-либо тест на пригодность (вот почему я предпочитаю этот шаг). Если нет, вам придется пройти NQT и пройти этот тест.
Под «хорошим» рангом я подразумеваю ранги ниже 3000 на всякий случай, хотя в некоторых случаях вы все равно можете пройти квалификацию, если у вас меньше 4500. На всякий случай убедитесь, что вам удалось решить как минимум 2 задачи из набора задач.
Кроме того, тщательно выбирайте язык, на котором вы решаете проблему; Вам могут задать вопросы на этом же языке во время интервью. Предпочтительным языком для конкурентного программирования является C ++ , хотя вы можете выбрать другой язык программирования, если он вам подходит.
Ресурсы для CodeVita.
- TCS CodeVita Прошлые вопросы
- Полный справочник по соревновательному программированию
- CodeChef Практика
- C ++ для программистов (курс)
- Форк C ++ (курс на GeeksforGeeks)
- Учебник C ++ STL (на GeeksforGeeks)
Этап # 2: Интервью для ниндзя
После того, как вы получите хорошее место в CodeVita, вас, вероятно, вызовут на собеседование. Постарайтесь изо всех сил пройти это интервью, так как оно даст вам работу «универсального кодировщика», так что даже если вы не получите Digital, у вас все равно будет работа.
Вопросы в этом собеседовании будут разными, в зависимости от вашего резюме и того, как вы ведете обсуждение в комнате для собеседований.
Важные разделы в резюме.
Ваше резюме в формате TCS будет состоять из различных разделов, которые, скорее всего, будут определять ход собеседования. Позвольте мне остановиться на некоторых из них в частности.
- Тренинги / Осуществленные проекты. Несомненно, это один из самых важных разделов вашего резюме. Убедитесь, что у вас есть как минимум два технических проекта. Будьте внимательны с ними, а также с технологиями, которые вы для них использовали. Например, если вы упомянули банковскую систему, написанную вами на Django, вы должны знать, как работает ваш проект, общую структуру Django, программирование на Python, HTML / CSS и JavaScript.
- Предметы интереса. Излишне говорить, что хорошо разбирайтесь во всех предметах, которые вы упомянули. Не просто перечисляйте все предметы, которые вы уже изучали; вместо этого упомяните только те, в которых вы больше всего уверены. (Советы для студентов, изучающих информатику: независимо от предметов, которые вы упоминаете, подготовьте ООП на Java, СУБД и отработайте SQL-запросы.)
- Языки программирования. Упомяните C и Java и покончите с ними обоими. Вы также можете упомянуть другой объектно-ориентированный язык вместо Java (например, C ++ или Python), если вы в них более уверены. Щелкните эту ссылку, чтобы просмотреть ресурсы на этих языках.
- Хобби. Не верьте, этот раздел имеет значение. Часто задают вопросы о хобби, поэтому упомяните только те хобби, которыми вы действительно увлечены.
И снова, взломав это интервью, вы получите работу в категории «Generic Coders» с CTC в размере 3,36 индийских рупий LPA. Чтобы получить работу в категории Digital, вам необходимо пройти следующие два шага. Если вы этого не сделаете, у вас все равно будет работа ниндзя.
Этап № 3: Онлайн-тест для цифровых технологий
Если вам удастся взломать вышеприведенное интервью, поздравляем! Это означает две вещи:
- Вы получили работу в категории «Стандартные кодеры», также известной как TCS Ninja. Ваша эффективность на этом и следующем этапе не повлияет на это предложение о работе.
- Вы подходите для участия в TCS Digital, и здесь все становится не так просто.
Не хочу вас пугать, но и врать не собираюсь. Это трудное испытание. Однако хорошо, что при достаточной практике вы определенно сможете взломать его.
Во-первых, позвольте мне упомянуть разделы в этом тесте. Это английский / вербальные способности, количественные способности, латеральное мышление, ловкость, логика программирования и продвинутое программирование.
You can get familiar with these sections, and practise them on the official mock link, here.
В сводной таблице в следующей таблице показаны порядок и время, указанное для этих разделов.
Название раздела | английский | Количественные способности | Нестандартное мышление | Ловкость | Логика программирования | Расширенное кодирование |
---|---|---|---|---|---|---|
Продолжительность (в минутах) | 15 | 30 | 30 | 25 | 20 | 60 |
Кол-во вопросов | 10 | 12 | 7 | 2 | 7 | 1 или 2 |
Порядок появления | 1-я группа | 2-я группа | 3-я группа | 4-я группа | 5-я группа | 6 группа |
Заметки.
- Источник этой таблицы - официальная фиктивная ссылка, которой я поделился выше.
- Что касается 6-й группы (Advanced Coding), в фиктивной ссылке есть только один вопрос, но нам было предложено решить два вопроса за одно и то же время в реальном тесте. Подробнее об этом ниже.
Давайте теперь пройдемся по этим разделам один за другим.
1. английский
Этот раздел будет состоять из десяти вопросов, которые нужно решить за пятнадцать минут. В фиктивной ссылке вопросы основаны на таких темах, как глаголы, предлоги, определение ошибки в предложении, определение правильной последовательности предложения и т. Д. Он также содержит вопросы синонимов и антонимов сложных слов.
Вы проверяете ресурсы, доступные в Wordpundit, для улучшения своего словарного запаса.
Однако в реальном тесте все вопросы были на понимание отрывка. Кроме того, все отрывки были о цифровых технологиях. Вот почему в начале этой статьи я дал ссылки на некоторые из этих технологий. Прочтите их все и узнайте о них, чтобы не чувствовать себя не в своей тарелке во время экзамена.
Ресурсы для английского раздела.
- 10 самых умопомрачительных грядущих технологий [запись в блоге о грядущих технологиях]
- Подготовка к академическому тесту IELTS [модуль 3 этого курса посвящен чтению и пониманию]
2. Количественные способности
Этот раздел будет содержать самые сложные вопросы о способностях: 12 вопросов, которые нужно решить в течение получаса. Задачи будут взяты из математики средней школы и потребуют твердого понимания концепций и способности думать для решения в ограниченное время. Все это можно воспитать на практике.
В настоящее время нет официальных материалов практики, предназначенных исключительно для целей этого раздела. То, что вы можете сделать, это практикуется из любого материала, который вам попадется в руки, некоторые из которых я перечислю ниже.
Ресурсы для раздела "Количественные способности"
- Fast Track Objective Arithmetic (книга)
- Количественная способность к конкурсным экзаменам (книга)
- Перестановки и комбинации (плейлист YouTube)
- Практические вопросы на GeeksforGeeks
3. Боковое мышление
Monday, six friends went camping. Tuesday, John, Jack, and James cooked some mushrooms. Wednesday came and they ate the mushrooms. Thursday found them all dead. Exactly one friend survived, how come?
Answer: Thursday is the name of the friend who did not have the mushrooms, and so he / she survived.
Вы угадали: этот раздел будет состоять из головоломок.
Когда вы начинаете этот раздел, отбросьте любое горизонтальное, вертикальное или даже логическое мышление и сделайте это как можно более горизонтальным! Посмотрите это видео на YouTube, в котором разъясняются различия между ними.
Будьте готовы решить ребус, подготовить все возможные слова со смыслом из данного слова, найти это недостающее звено, определить правильный образец? - в общем, любая головоломка, которую вы можете придумать.
Просмотрите примеры вопросов, содержащихся в фиктивной ссылке . Стандарт вопросов в реальном тесте будет примерно таким же. Времени будет много (полчаса на 7 вопросов), так что попробуйте все вопросы.
Ресурсы для бокового мышления
- Головоломки
- Боковое мышление (книга)
4. Ловкость
Этот раздел будет содержать два вопроса, которые нужно решить за 25 минут.
В фиктивной ссылке первый вопрос - это простая программа на основе API на Java, которую необходимо решить в данном редакторе. В этом случае вам нужно прочитать вопрос, чтобы знать, что он задает, и реализовать программу, используя инструменты, которые они вам предоставляют.
Однако в реальном тесте этот вопрос был заменен новым языком, который они создали, который имел дело с обработкой математической структуры, множеств и поставленных задач для решения на указанном языке. Естественно, вам нужно будет быстро пройти через языковые правила, понять их и решить программу в их редакторе.
Второй вопрос - это исчерпывающее понимание математической концепции / будущей технологии. В фиктивной ссылке отрывок посвящен компьютерному зрению, а в моем тесте - теории игр и дилемме заключенного. От вас требовалось тщательно проанализировать отрывок и сделать из него выводы о применении указанной теории / технологии.
Опять же, что касается второго вопроса, вам необходимо быть в курсе последних и перспективных технологий в цифровом мире.
Ресурс для раздела Agility
- Как использовать Java API
5. Логика программирования
Если вы студент CSE, вы уже должны быть знакомы с темами в этом разделе.
Recursion, arrays, stacks, queues, linked lists, trees, binary search trees, binary heaps, graphs.
Короче говоря, вы должны знать структуры данных и их реализации. Наряду с ними вы должны знать стандартные алгоритмы и их пространственно-временную сложность. У вас будет 20 минут, чтобы решить 7 вопросов.
Ресурсы для раздела "Логика программирования"
- Алгоритмы и структуры данных (плейлист YouTube)
- Практикуйте структуры данных на GeeksforGeeks
- Алгоритмы практики на GeeksforGeeks
- 180+ проблем с алгоритмами и структурой данных с использованием C ++ (репозиторий GitHub)
6. Расширенное кодирование
Как видно из названия, этот раздел представляет собой часовой цикл кодирования.
В фиктивной ссылке этот раздел состоял из одного вопроса, но в фактическом тесте нам дали две программы для решения за одно и то же ограничение по времени. Однако эти две программы были относительно проще, чем та, которая указана в фиктивной ссылке.
Если вам задают один вопрос, он, вероятно, будет того же стандарта, что и вопросы первого раунда CodeVita, поэтому еще раз проверьте раздел CodeVita для этого раздела.
Допустимые языки: C, C ++, Java, Python 2.7, Perl. (Этот набор языков может измениться со временем.)
Кроме того, вы можете взглянуть на этот репозиторий Github . Он содержит все программы, которые я решил за две недели, которые у меня были для этого раунда.
Интегрированная среда развития. Помимо обычного текстового редактора, нам также была предоставлена Eclipse Oxygen IDE для помощи в написании кода. Я настоятельно рекомендую вам установить указанную IDE и ознакомиться с тем, как она работает.
Этап # 4: Интервью для Digital
На оценку вашей успеваемости в онлайн-тесте может уйти несколько дней. Тем не менее, вам следует начать подготовку к этому собеседованию сразу после теста.
У вас будет огромное преимущество на собеседовании, если у вас будут проекты, созданные с использованием новых технологий . Для меня это был классификатор изображений, написанный с нуля для распознавания рукописных цифр. (Вы можете найти этот проект здесь.) Использовались технологии Deep Learning и Neural Networks.
Хотя у меня было еще 2 проекта с теми же критериями, один из которых был Решателем Судоку, который использовал базовые концепции ИИ для решения головоломки Судоку, а другой - распознавателем образов кошек, интервьюер настоял на том, чтобы рассказать о вышеуказанном проекте.
Кроме того, у меня за плечами было еще несколько проектов, о которых я хотел бы рассказать в интервью. Одним из них было банковское приложение, написанное на Django, и мы потратили немало времени на его обсуждение.
Итак, вот что я должен сказать: изучайте предметы, которые вы упомянули в разделе «Интересующие вас темы» резюме, но сосредоточьтесь на создании и изучении этих проектов. Кроме того, вы должны быть в состоянии объяснить каждую концепцию, которую вы использовали при реализации проекта.
Например, если вы включаете какой-либо проект DL, убедитесь, что вы знаете важные концепции, такие как градиентный спуск, нейронные сети, мелкие сети против глубоких сетей, функции активации, которые вы использовали для разных уровней, прямое распространение против обратного распространения и т. Д. на.
Если у вас уже есть несколько проектов подобного рода, все готово. С умом выбирайте проекты, которые вы собираетесь включить, и убедитесь, что вы сможете все объяснить в комнате для собеседований.
Ресурсы для интервью
- Если вы только начинаете работать с машинным обучением, вы можете ознакомиться с курсом Udacity по указанной теме. Этот курс не только объяснит необходимые фундаментальные концепции, но и предоставит практические мини-проекты для применения вашего обучения к реальным наборам данных.
- Если вы хотите закрепить свои концепции машинного обучения, я рекомендую курс на Coursera.
- Если вы начинаете с глубокого обучения, я настоятельно рекомендую начать с онлайн-книги Майкла Нильсона. Первые две главы служат введением в тему, наряду с проектом классификатора изображений, о котором я говорил ранее.
- Вы можете дополнить свое изучение DL, пройдя эту серию курсов DL на Coursera, читая вышеупомянутую книгу. В качестве альтернативы, если вам не хватает времени, вы можете пройти курс Udacity по глубокому обучению.
- Наконец, вы можете начать работу с ИИ, начав с курса ИИ Калифорнийского университета в Беркли на edX.
Примечание. Необязательно проходить все эти курсы за то ограниченное время, которое у вас есть. В моем случае я уже прошел первый курс из серии, упомянутой в пункте (4), поэтому я все это пересмотрел. Кроме того, я завершил первые две главы книги, упомянутые в пункте (2), вместе с данным в нем проектом, и эти две главы руководили большей частью интервью. Помимо них, я также прошел части курса, упомянутые в пункте (1), и части курса DL Udacity, упомянутые в пункте (4), и начал с курса ИИ в пункте (5), все из которых были чрезвычайно полезны. полезно знать. Итак, вам следует соответственно разделить свое время, посмотреть, какие курсы вам больше всего подходят, что можно было бы пройти за отведенное время, и пройти их.
Конечные заметки
Попасть в TCS Digital непросто, но, безусловно, полезно. Учись усердно, учись с умом и удачи!
Вниманию читателя! Не прекращайте учиться сейчас. Освойте все важные концепции DSA с помощью самостоятельного курса DSA по приемлемой для студентов цене и будьте готовы к работе в отрасли. Чтобы завершить подготовку от изучения языка к DS Algo и многому другому, см. Полный курс подготовки к собеседованию . Если вы готовы, проверьте свои навыки с помощью серий тестов TCS, Wipro, Amazon и Microsoft.