Найти тему
Игропоиск

Как начать работу в IT. Пошаговая инструкция на личном опыте.

Оглавление

Доброго времени суток, Друг!

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

С чего начать?

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

-2

У каждого направления свои требования к навыкам, как техническим, так и гибким (навыки связанные с общением). Стоит отметить, что специалисты в сфере IT делятся на уровни в зависимости от этих требований:

-3

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

Middle разработчик – это уже опытный сотрудник, готовый к самостоятельной работе. Пускай он все еще не может правильно определить приоритеты или выбрать наиболее эффективный способ решения задачи, но и контроля со стороны «старших» он требует существенно меньше

Senior разработчик – это достаточно уверенный и опытный специалист, прошедший боевое крещение реальными проектами, переживший не один дедлайн. Основное отличие «старших» в том, что они уже полностью самостоятельны и могут не только единолично принимать правильные решения, но и нести за них ответственность перед заказчиками и пользователями разрабатываемых решений. Достаточно часто они управляют собственной командой менее толковых опытных сотрудников, при этом существенно меньше сами пишут код, зато могут беглым взглядом выявлять ошибки и упущения новобранцев, помогают им с расстановкой приоритетов и определением направления для развития. Кроме того, это уже однозначные эксперты в определенной области, которые высоко ценятся на рынке труда.

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

1. Выбор языка или специализации
Выбор зависит от того, что Вас больше привлекает. Нравятся компьютерные игры, можно выбрать направление gamedev`а, соответственно языки C++ или C# и игровые движки, например Unreal Engine. По душе мобильные игры - мобильная разработка (kotlin, swift и т.д.). Если нравится копаться в коде и работать в терминале - бэкенд специализация. Творческий человек - добро пожаловать в дизайн. Например, мне всегда было интересно как работает интернет, сайты и все связанное с этим. Думая над тем, кем я все же хочу работать, я решил заняться тем, что мне нравится. Поэтому, моим выбором было изучение html, javascript, php, css.

2. Изучение требований
Вторым шагом будет изучение предложений на рынке, оценка своих знаний и возможностей и анализ вышеперечисленного.
Ресурсов для поиска работы достаточно, поэтому на данном шаге просто заходим, допустим, на сайт поиска вакансий, ищем понравившуюся нам профессию (для примера frontend- разработчика) и видим что-то такое:

-4

Проанализировав с десяток предложений у Вас сформируется список требований состоящий из языков, технологий и навыков необходимых для работы. Оценив все это сделайте вывод: есть ли у Вас знания и готовность выполнять задачи, с которыми придётся столкнуться в этой сфере? Если ответ утвердительный, то можете переходить к откликам на вакансии и первым собеседованиям. В ином случае, продолжим.

Обучение и портфолио

Есть не один путь освоения выбранной профессии, рассмотрим основные 3 варианта:

  • Освоение профессии самостоятельно
    Обучение с помощью статей в интернете, видеоуроки на YouTube, подкасты и прочее. Но советую эту информацию фильтровать, тк некоторые источники не являются достоверными и Вы можете впустую потерять свое время.
  • Прохождение онлайн-курса
    Отношусь к этому варианту весьма скептически, но он имеет место быть. Некоторые ресурсы предлагают сертификаты о прохождении курсов, что может стать небольшим плюсом при отборе кандидатов, откликнувшихся на вакансию.
  • Обучение у ментора
    Это может быть более опытный друг или коллега из IT-сферы. Новичку в профессии пригодится обратная связь от специалиста, который уже прошёл похожий путь и может помочь решить проблему, дать совет, подбодрить или мотивировать двигаться дальше.

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

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

Например, Вы можете попробовать автоматизировать процессы или решить проблемы, с которыми приходится сталкиваться каждый день. Также с помощью пет-проекта можно практиковать новые навыки, полученные во время учебы. Пет-проектами могут быть, например, сайты, чат-боты, алгоритмы, программы для заметок, to-do листы. Здесь как раз поможет анализ требований, который был проведен при изучении требований. Допустим, работодателю нужно знание определенных фреймворков. У вас проект на Flask, а в вакансии требуется знание Django. Разберитесь, и создайте проект на этом фреймворке.

Желательно иметь перед собеседованиями хотя бы 3-4 пет-проекта, которые можно посмотреть, пощупать и оценить. Со всем этим нам поможет GitHub. Работа с ним не вызывает трудностей, особенно после выхода GitHub Desktop. Вы можете создать репозиторий, выложить туда свои пет-проекты и оформить профиль. В итоге получаем весьма не плохое портфолио, с которым Вам будет не стыдно на собеседовании.

Например так выглядел мой аккаунт когда я устраивался на работу:

-5

Из 11 репозиториев 8 были моими пет-проектами и это сыграло большую роль на собеседовании.

Трудоустройство

Чтобы специалисту без опыта найти работу в IT, в среднем требуется от 1,5 до 3 месяцев активного поиска, говорит нам интернет. Но не все так радужно. Все зависит от ряда факторов: количества предложений, сезона, политической обстановки и прочего. В среднем может уйти от недели до полугода.

Самое главное на текущем этапе правильно составить резюме, не боятся откликаться на вакансии и проходить собеседования. Советов по составлению резюме в интернете предостаточно, поэтому расписывать этот пункт нет особого смысла. Первые 3-5 собеседований для Вас пройдут в режиме анализа. Нужно получить обратную связь от работодателей и понять, как улучшить текущее резюме и портфолио. Поэтому стоит отслеживать рынок вакансий каждый день и просматривать каналы поиска: сайты, телеграм-каналы и соцсети.

Собеседование - следующий шаг после отклика. Количество этапов собеседования зависит от компании или должности, но обычно не превышает 3–5: первичный созвон, тестовое задание, техническое интервью.

Нужно тщательно готовиться к каждому этапу. На первичном созвоне рекрутер задаёт уточняющие вопросы и просит подтвердить опыт, указанный в резюме, и показать работы из портфолио (опционально). Даже при наличии портфолио, все равно скорее всего придется выполнять тестовое задание. Критерии и сроки его выполнения оговариваются заранее. Обычно тестовое задание не сложное, а на его выполнение даётся несколько дней.

Техническое интервью это самая важная часть собеседования, на этом этапе кандидат общается со специалистами и/или будущими коллегами. Обычно задают вопросы по языкам, технологиям и навыкам, которые им необходимы, обсуждают Ваши пет-проекты. Будьте готовы к самым разным вопросам, от легких до сложных и обратно. Возможно предложат решить какую-то задачу или написать код. Не стоит торопиться, спокойно обдумайте, что от Вас требуют, если что-то не понятно, не бойтесь спросить.

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

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

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

Не стоит бояться ошибок или провалов: каждая неудача даёт возможность улучшить или изменить подход к решению проблемы и стать увереннее. Можно ошибаться быстрее и чаще, при этом рефлексировать и двигаться вперёд.

Спасибо за уделенное время, успехов в Ваших начинаниях!