Жара начинается! 15% на все курсы!
Весенняя распродажа
00:00:00:00
Our Website is Almost Ready
Launch a targeted campaign.
Scale your infrastructure with our simple service.
Days
Hours
Minutes
Seconds
1 декабря

Экспресс-гайд по собеседованиям для тестировщиков, девопс-инженеров и java-разработчиков

Работа — это обмен затрачиваемой силы и времени на материальные средства путем вкалывания как Папа Карло. Чтобы к нему приобщиться, нужно проехать катком по паре мини-боссов. В их ролях — эйчары и действующие специалисты, обитающие на локациях «интервью» и «техническое собеседование».

Оговорюсь сразу — в материале не будет списков типовых вопросов, условий алгоритмических задач и руководств по зарплатным переговорам. Эксперты школы TMS дадут тебе удочку — расскажут о самой концепции прохождения техсобесов, порекомендуют темы для повторения и поделятся своим коммерческим опытом.


Интервью с эйчаром и техническое собеседование — ху из ху

Последнее внятное исследование о количестве собеседований перед приемом на работу было проведено в мохнатом 2012 году ребятами из Work It DAILY. Тогда эксперты выяснили, что для заветного джоб-оффера специалистам из разных областей приходится проходить через ноги руки по меньшей мере девяти эйчаров и рекрутеров.

Удивительно, но эта статистика неплохо бьется с нынешним айти-рынком. Конечно, есть и исключения — Гуру от мира автоматизации тестирования часто ищет работу дольше, чем начинающий, но подающий надежды падаван-девопс. Однако здесь проблема кроется, скорее, в количестве вакансий и числе соискателей.

Интервью с эйчарами и менеджерами проводят, чтобы оценить, насколько компания подходит сотруднику, а сотрудник — компании. Задача рекрутера заключается в получении информации о кандидате: что для него важно в работе, какими знаниями он обладает и что ожидает от бренда. Техсобесы используют для оценки прикладных навыков. В рамках таких бесед эксперты проверяют твои хардовые и софтовые скилы.

На технических собесах и интервью ждут джунов:

  • с хорошей технической базой и желающих учиться, чтобы вылепить из них высококлассных специалистов;

  • не боящихся говорить, рассуждать и спрашивать, ведь разработка — это командный процесс, невозможный без регулярного взаимодействия с другими;

  • хотя бы немного задумывающихся о бизнесе и его процессах, а также о том, какую пользу они могут принести компании;

  • готовых нести ответственность на своем уровне, проявлять инициативность и заинтересованность.

Готовность к собеседованиям — это навык, который можно развивать. Кандидат, вложивший пару очков в «интеллект», «хитрость» и «технические скилы», практически не будет слышать стандартных фраз-отписок вроде «мы вам перезвоним».


Как пройти техническое собеседование

Сегодня каждое второе техническое собеседование проходит онлайн и представляет собой созвон с включенной камерой. Тебя спрашивают о предыдущем опыте, могут предложить решить задачу, написать программу или найти ошибку в коде. Вопросы разнятся в зависимости от уровня вакансии. Джунам нужна теория с терминами и формулировками, мидлам и сеньорам — практические навыки и понимание процессов.

— Технический собес предполагает решение задач. Есть какие-то секреты подготовки? Может быть, сайты или ультимативные книжки?

— «Сервис с задачками по программированию LeetCode уже превратился в стандарт для подготовки к алгоритмическим собеседованиям. Меня это бесит, ведь упражнения там часто не имеют никакого отношения к практической разработке. Крупная и привлекательная компания может позволить себе извращаться над кандидатами любыми способами, но далеко не каждый бренд будет строить из себя Google. В фирмах из СНГ задачи есть, но они достаточно легкие», — Олег Григорьян, преподаватель курса Java-разработчик в TMS.

— Как быть соискателю, который при прохождении технического собеседования понял, что он чего-то не знает?

— Ткните пальцем в того, кто знает все. Чем глубже копаешь в программировании, тем лучше понимаешь, что дна нет. Соискателю нужно держать лицо — если не можешь дать четкий ответ, порассуждай, сделай пару предположений и постарайся их обосновать. В разработке нет смысла заучивать что-то наизусть, как стихи — важно осознавать, почему и для чего все работает так, а не иначе. Твоя способность думать и искать выход из ситуации окажется ценнее, чем верные, но сухие ответы


Позиция эксперта по автоматизации тестирования

Автоматизатор — это эксперт по проверке работоспособности софта, отвечающий за создание сценариев для автоматической проверки программ и приложений. Его хардовые скилы варьируются в зависимости от направления работы. Писать скрипты опытные QA-инженеры (от англ. quality assurance — «обеспечение качества») предпочитают на таких языках, как Java, Python, JavaScript и C#.

На техническом собесе у начинающего автоматизатора обязательно спросят о видах тестирования, техниках тест-дизайна, методологиях разработки и критериях качества требований. Будут и задачи формата:

  • протестировать общедоступный API;

  • составить баг-репорт по реальной или вымышленной ошибке;

  • сформировать тест по реальным требованиям;

  • создать тест для учебного проекта.

Автоматизация тестирования — тема обширная, и разбирать ее нужно в отдельном порядке. Поэтому мы записали целый Натив, посвященный вопросам на технических собеседованиях QA-инженеров, владеющих языком Java.

— Существуют ли какие-то основные критерии, выдвигаемые к кандидатам на позицию начинающего автоматизатора тестирования?

— «Я всегда говорил, что хороший автоматизатор должен обладать четырьмя качествами. Первое — он должен быть хорошим тестировщиком. Второе — он должен хорошо знать язык программирования. Третье — это автоматизация тестирования. Четвертое — английский язык и коммуникативные навыки.

Есть люди, которые все схватывают на лету, но не умеют общаться. Во многих компаниях собеседование — это поговорить о жизни. Если человек не проявляет софт-скилы, он не получит работу. Берем эти четыре ингредиента, смешиваем воедино и получаем идеального кандидата», — Дмитрий Рак, преподаватель курса автоматизированное тестирование на Java в TMS.


Должность Java-разработчика

Чтобы понять, как проходят интервью и техсобесы Java-девелоперов, будем двигаться от обратного — прошерстим блоги эйчаров и рекрутеров. Судя по веткам на «Хабре», владеющих «Жабой» экспертов собеседуют в рамках плюс-минус одного сценария. Выглядит он так: вопросы по языку → предыдущий опыт → поиск мотивации соискателя → рассказ о проектах → ответы на вопросы.

На техническом собеседовании новичка, желающего занять должность Junior Java backend developer, проверяют на знание:

  • базовых алгоритмов;
  • структур данных;
  • принципов и шаблонов программирования;
  • устройства сетей;
  • реляционных баз данных и SQL;
  • Java Core;
  • Java Persistence API;
  • Spring Core + Boot + Web + Data + самых основ Security.

Вопросы — вот первое, что будет ждать эйчар или технический специалист от новичка на собеседовании. Они становятся признаком лояльности и заинтересованности как в отдельной вакансии, так и в самой компании в целом. Когда бренд нанимает джуна, он делает своеобразную инвестицию — вкладывает время в человека, который деньги на старте приносить не будет. Поэтому организация сначала поймет, насколько кандидат благонадежен и заинтригован, и только потом вышлет джоб-оффер (или не вышлет????).

— Нужно ли изучать проекты компании перед собеседованием? Какой в этом смысл и стоит ли тратить время?

— «Я бы не сказал, что это необходимо. В целом, дополнительная информация о бренде может оказаться полезной. В рамках собеседования не только компания выбирает тебя, но и ты выбираешь компанию. Да, джуниор-разработчик находится не в такой сильной позиции, как сеньор-девелопер, но соглашаться на любой треш-вариант — не лучшая идея.

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


Место девопс-инженера

DevOps-инженер — это человек-автоматизатор. Он автоматизирует все, что движется, а что не движется — двигает и автоматизирует. В своей подготовке специалист такого профиля изучает ряд тем, связанных как с разработкой, так и с внедрением различного софта. Став на ступеньку мидла, он может обнаружить себя, занимающегося написанием автотестов, изучением «шарпов» или созданием serverless-функций для управления всей инфраструктурой проекта.

В списке тем, освещаемых в рамках технического собеседования с кандидатом на позицию junior DevOps:

  1. Вопросы о методологии DevOps. Что такое DevOps, зачем нужна эта концепция, как она связана с Agile, Scrum и Kanban — ты же должен знать, чем предстоит заниматься на работе.

  2. Навык программирования на любом популярном языке. Знание Python, Bash, Ruby или Go, умение писать простенькие алгоритмы и скрипты для автоматизации.

  3. Технологии Docker и Kubernetes. Соискатель должен быть готов к тому, чтобы написать Dockerfile или Helm chart, а также рассказать, чем Deployment отличается от Daemonset'a.

  4. CI/CD инструменты + IaC (Ansible/SaltStack/Terraform) — Gitlab CI, Jenkins, Azure DevOps, либо что-то другое. Здесь будет достаточно иметь опыт с одним инструментом из каждой категории.

  5. Linux и облака (AWS/GCP/Azure Cloud) — вспоминаем о том, как включается операционка, что отражает показатель load average и чем плохи дочерние зомби-процессы.

  6. Знание сетей. Полезно уметь рассказать про TCP/IP, DNS и объяснить, что такое маска подсети. В ту же копилку — вопросы по HTTP-протоколам и различиям между TCP и UDP.

На техническом собеседовании часто поднимаются и другие вопросы — их обязательно прописывают в вакансиях. К счастью, все перечисленные темы студенты школы TMS разбирают на практических занятиях, в рамках курса DevOps-инженер.

— Можешь дать несколько советов по прохождению технического собеседования на позицию junior DevOps?

— «Если не знаешь ответа на очередной вопрос, попробуй поразмышлять вслух и прийти к выводам. Если совсем с технологией не работал или вопрос оказался слишком сложным — прямо так и скажи. Ты не «Super Ultra DevOps Lead 3000 lvl», что-то не знать — абсолютно нормально!

Проси фидбэк сразу после собеседования. То есть, еще до того, как отключишься от звонка с эйчаром, рекрутером или техническим специалистом.

Лучше хорошо знать сети, операционные системы и веб-серверы, чем уметь работать с Docker и Kubernetes, но плавать в «базе».

Прохождение собеседований — это навык, который можно и нужно тренировать. С каждым разом у тебя будет получаться все лучше», — Максим Разумов, преподаватель курса DevOps-инженер в TMS.


Секреты прохождения интервью

Вообще-то, все секреты прохождения интервью мы давно разобрали в Карьерном центре — здесь тебя ждут три части гайда по техническим собесам, материал о правилах подписания договоров и рекомендации по составлению резюме. Обязательно приобщись, а затем отполируй полученные знания с помощью нативов на ютуб-канале IT-школы TeachMeSkills.

— «На собеседовании, товар — это ты. Продавай себя и помни, что в нашем деле нет места скромности и зажатости. Интервью — твоя минута славы и повод для самопрезентации, от качества которой зависит весь результат. Даже если по характеру тебе не свойственно ярко показывать свою натуру — fake it till you make it.

Собеседование — это двусторонняя сделка. Тебе нужно узнать все о компании, а компания хочет узнать побольше о тебе. Поверь, никому не будет приятно, если ты разорвешь все контакты посреди рабочего процесса просто потому, что не выяснил важные детали на берегу.

Любой исход собеседования — положительный. Не бойся отказов, ведь они прекрасны и позволяют учиться на своих же ошибках. Пробуй брать от интервью абсолютно все — фидбэк, материалы, лишние поводы для работы над собой. С каждой попыткой беседы будут получаться лучше, а отказов станет меньше», — Олег Григорьян, преподаватель курса Java-разработчик в TMS.

Хочешь освоить Java-разработку на уровне Олега Григорьяна? Или разобраться во всех тонкостях девопс-инжиниринга и дать нам интервью в нативе вместе с Максимом Разумовым? Может, тебя манят скилы автоматизатора тестирования, которыми владеет Дмитрий Рак? Записывайся на курсы в IT-школу TeachMeSkills — с нами найти деньги, почет, славу и уважение работу мечты намного проще!
      Над материалом работал Михаил Агеев
      Понравился материал? Поделись им с друзьями!

      Стань востребованным IT специалистом

      Наша цель — дать тебе знания и опыт, достаточные для трудоустройства в крупнейшие IT компании.