Карьера IT-специалиста манит многих. Опытные программисты, инженеры по контролю качества софта, IT-менеджеры зарабатывают в 3—5 раз больше людей из других сфер с таким же стажем. Представители этих профессий часто имеют возможность работать удаленно, в том числе, с заказчиками из США, где толковым программистам согласны платить любые деньги.
В России увлеченные своим делом новички в IT-сфере тоже чувствуют себя комфортно: наши компании ежедневно нуждаются в новых приложениях и сайтах, налаженной IT-инфраструктуре, безопасном хранении конфиденциальных данных. Для трудоустройства в организацию, готовую хорошо платить, необходимо многое знать и уметь делать. В статье мы расскажем, с чего начать обучение в IT, если за душой пока только большой интерес к этой области и пара онлайн-курсов на примете.
Кем можно стартовать в IT-сфере
Каждому будущему IT-специалисту нужны технические и нетехнические навыки. Мы рассмотрим и те, и другие для специалиста технической поддержки, разработчика ПО и менеджера IT-проектов.
Специалист технической поддержки
Стать сотрудником службы техподдержки — самое простое, с чего может начать карьеру далекий от программирования человек. Работник техподдержки помогает клиентам и сотрудникам компании решать конкретные проблемы, связанные с продуктами или сервисами. Если у посетителя интернет-магазина не получается оформить заказ или у сотрудника компании зависла операционная система, они будут писать и звонить в техподдержку, чтобы получить помощь.
Чтобы работать в техподдержке нужно:
- разбираться в операционных системах Windows, MacOS, Linux/Unix;
- разбираться в конкретном продукте, который запустила компания: программе, сайте, мобильном приложении, базе знаний;
- уметь писать SQL-запросы, чтобы напрямую запрашивать информацию из баз данных при возникновении ошибок;
- уметь общаться с людьми: например, расспросить звонящего человека, что случилось, и объяснить ему ситуацию так, чтобы он все понял вне зависимости от уровня технических знаний.
Обучение IT специалистов с нуля на онлайн-курсах подразумевает освоение слушателями основных технических навыков. Для работника службы техподдержки это знание популярных операционных систем, изучение языка SQL-запросов и базовых навыков программирования на языке, на котором написан продукт. Нетехнические навыки вроде умения общаться с людьми преподают на специальных курсах, таких как «Soft skills для специалистов», или эти навыки приходят естественным образом — с опытом.
Требования к работникам технической поддержки гораздо ниже, чем к разработчикам ПО. Если разобраться в этой простой специальности, можно пойти учиться дальше и со временем стать программистом.
Разработчик или тестировщик ПО
Программист занимается проектированием, реализацией и/или контролем качества программных продуктов. Например, веб-программист собирает сайты, iOS-разработчик пишет приложения для мобильной электроники Apple, тестировщик ПО ищет ошибки в софте и сообщает о них программистам. Вне зависимости от специализации программист должен иметь представление обо всех этапах жизненного цикла продукта.
Новичку пригодятся такие навыки:
- азы, без которых будет трудно разобраться в основной информации: что такое бит и байт, какими бывают типы и структуры данных, как работают локальные сети, что такое дерево и стек и др.;
- ООП, или объектно-ориентированное программирование: это принцип составления программ из объектов и классов, располагаемых иерархичным образом;
- языки программирования: С++, Java, PHP, Python и другие — выбор языка зависит от специализации, которая интересует новичка;
- языки веб-разметки: HTML и JavaScript;
- технологии для контроля качества программ;
- устройство операционных систем: iOS и Android, Windows, MacOS, Linux/Unix;
- базы данных: MySQL;
- Scrum: подход к управлению проектами, при котором одна или несколько самоорганизованных команд создают продукт поэтапно;
- Agile: принцип гибкой разработки программ небольшими командами под демократичным управлением.
Мы перечислили основные технические и нетехнические навыки для начинающих программистов и тестировщиков ПО.
Тем, кто намерен заниматься разработкой программ, рекомендуем начинать обучение IT-технологиям после выбора специализации
IT-менеджер
Специалист по управлению IT-проектами — человек, который отвечает за взаимодействие команды разработчиков с бизнесом. Проджект-менеджеры следят за соблюдением сроков и достижением целей бизнеса. Они умеют объяснить программистам, чего и почему хотят собственники компании, а ТОП-менеджменту компании рассказывают простым языком про технологии разработки.
IT-менеджер должен знать:
- методы Agile и Scrum;
- как быть лидером, не становясь тираном и не уходя в демократию;
- как планировать проект и составлять рабочий график для команды;
- как распределять бюджет и управлять рисками.
Продукт-менеджер и проджект-менеджер — специалисты с технической смекалкой, лидерскими навыками, крепкими и одновременно гибкими психологическими границами. Их путь развития — это руководство IT-подразделениями и открытие своего бизнеса, связанного с разработкой программного обеспечения.
IT-менеджер обязан разбираться во всех этапах разработки программного продукта. Поэтому данная специализация — не всегда хороший выбор для человека, никогда не имевшего дела с созданием софта. При нулевом опыте в программировании и управлении командами стоит попробовать себя в других IT-специальностях — например, пройти курсы веб-разработки.
Как выбрать IT-специализацию с нуля
Если пока не ясно, с чего начать IT-карьеру, советуем поинтересоваться в компаниях своего города, какие технологии им нужны для проектов, и отталкиваться от спроса. Новичкам обычно сложно находить заказчиков за рубежом, поэтому для начала стоит обратить внимание на компании в своем городе.
Еще имеет значение простота входа в технологию. Если времени на освоение Java или C++ мало — а изучение этих языков программирования занимает от года — можно попробовать себя в HTML, CSS или WordPress. IT-специалистам, знакомым с простыми и популярными технологиями, платят не так хорошо, как Java-разработчикам, зато на их изучение уйдет от двух месяцев до полугода, и в руках уже будут реальные инструменты для начала карьеры.
Возможность поначалу работать из дома тоже имеет значение, потому что специалисты-новички обычно совмещают основную работу с обучением в онлайн-школе и получением первого опыта в IT-специальности. Если важно работать удаленно, рекомендуем начать с языка веб-разметки HTML, языка веб-программирования PHP и изучить на курсах CMS.
Как начать обучение в IT
Найти ментора с подходящей специализацией.
Если есть знакомый программист, готовый уделить время обучению новичка азам программирования, то самый сложный момент входа в профессию можно считать пройденным.
Минус обучения с ментором в том, что не у всех есть знакомые программисты с достаточным количеством свободного времени для работы с новичками.
Пытаться читать и практиковать самому.
Новички-самоучки — хорошо мотивированные люди с развитым навыком получения новой информации. В интернете много открытых источников информации: видео на YouTube, статьи, форумы программистов, платные и бесплатные книги.
Фриланс-бирж с простыми заказами для программистов, веб-верстальщиков и тестировщиков-новичков тоже очень много. Если хочется стать программистом с нуля, изучать можно все подряд и даже пытаться выполнять несложные заказы.
Минус самостоятельного обучения — его несистемность. Новичку непонятно, что именно и в какой последовательности нужно узнавать для освоения новой для него IT-специальности.
Записаться на курсы.
Большое преимущество обучения в IT в том, что оно может быть удаленным и эффективным одновременно. Новичку не обязательно сидеть рядом с преподавателем, чтобы разобраться в предмете: он может смотреть видео, читать статьи и участвовать в вебинарах из дома. Преподаватель будет удаленно проверять домашние задания, исправлять ошибки и говорить, какие навыки стоит подтянуть для совершенствования в профессии.
Где искать online-курсы для начинающего программиста
Портал checkroi.ru собрал курсы для новичков, которым хочется построить карьеру в IT-сфере. На сайте представлены обучающие программы длительностью от 5 недель до 24 месяцев от от ведущих школ программирования. Курс можно взять для себя или подарить тому, кто мечтает стать разработчиком ПО.
Агрегатор Checkroi предлагает курсы по таким направлениям:
- iOS и аndroid-разработчики — слушатели научатся собирать мобильные приложения для смартфонов и планшетов;
- разработчик игр — ученики освоят последовательность создания игр для мобильных и десктопных устройств, научатся составлять и реализовывать интересные сценарии;
- тестировщик программного обеспечения — на этом курсе слушатели узнают, как ловить ошибки в программах до того, как их нашли пользователи;
- data scientist — ученики становятся специалистами по анализу данных, разбираются в машинном обучении и учатся управляться с искусственным интеллектом;
- разработчики программного обеспечения — слушатели выбирают между популярными языками программирования Java, PHP, Python, чтобы посвятить время освоению самой интересной им технологии.
На сайте есть курсы продолжительностью 7—10 месяцев для тех, кто хочет освоить азы и сразу пойти на стажировку или на работу в компанию, и курсы для желающих досконально разобраться в профессии и прийти в компанию максимально подкованным и готовым к реальным задачам.
Агрегатор checkroi.ru предлагает русскоязычные курсы, составленные практикующими IT-специалистами, хорошо знакомыми не только со своей сферой деятельности, но и с методологией преподавания. Они умеют объяснять новичкам сложные вещи простыми словами, делать из абстракций понятные образы, находить ошибки в коде и рассказывать, как их исправить. Информация в курсах подается сжато и размеренно — так, чтобы слушатели успевали все запоминать.
Онлайн-курсы по обучению IT-специальностям с нуля — удобный способ приобрести новую профессию, не тратя время на дорогу и не изучая лишних общеобразовательных предметов. Уже в процессе обучения самые активные и мотивированные слушатели получают интересную работу и создают полезные связи.