Эта статья будет полезна новичкам, выбирающим профессию и людям, которые хотят сменить специализацию и перейти в IT, но не уверены, что им это подойдёт. Поговорим о преимуществах работы в IT-сфере и расскажем, с чего начать, чтобы всё получилось.
10 причин, чтобы стать программистом
Высокая зарплата, интересные задачи и возможность работать в любой точке мира. Рассказываем об этих и других причинах, почему стоит начать учиться на программиста прямо сейчас.
Причина 1: высокая зарплата
Крупные компании каждый год запускают новые проекты. Для этого они набирают разработчиков всех уровней, в том числе начинающих, которые потом могут стать опытными программистами и лидерами команд. За перспективных кандидатов идёт настоящая война: только они устраиваются на проект, им уже приходят оферы с более высокой зарплатой от других компаний. А их, часто пытается «перебить» та фирма, в которой он работает.
Посмотрим данные исследования по зарплатам от рекрутиногового агентства RealHR на первый квартал 2021 г.
Профиль работы | Junior (новичок) | Middle (опытный специалист) | Senior (руководитель, наставник) |
Fullstack | 137 931 ₽ | 178 160 ₽ | 298 850 ₽ |
C++ | 109 195 ₽ | 170 977 ₽ | 287 356 ₽ |
Мобильные приложения | 114 942 ₽ | 206 896 ₽ | 287 356 ₽ |
Рынок труда сильно перегрет. Иногда кандидат не стоит тех денег, которые ему предлагают, но фирме он нужен для перспективы. Программист за год работы может получить столько же, сколько маркетолог или дизайнер получал бы через три года. Если деньги для вас — один из главных факторов работы, выбирайте профессию программиста.
Причина 2: возможность работать удалённо
Айтишники легко могут работать удалённо — им нужен только список задач и ноутбук. Все практики и мероприятия проводятся удалённо. Собрание команды можно провести в зуме. Получить задачу — в джире или трелло. Сдать работу — через гитхаб. Главное — иметь хороший интернет и быть на связи вовремя, чтобы не тормозить работу команды.
Даже если нужно приезжать в офис, у вас будет относительно свободный график. Во многих IT-конторах рабочий день начинается в 10–11 часов. Вам не нужно стоять в утренних и вечерних пробках — вы сами выбираете, когда хотите начать и закончить рабочий день.
Причина 3: минимум контактов с людьми
Это особенно нравится интровертам. Обычно айтишники — люди с математическим складом ума, которые предпочитают составлять в голове сложные абстракции, а не отвлекаться на общение с людьми. Поэтому за годы существования профессии сложились практики, которые избавили программистов от общения с заказчиком.
В команде разработки есть один человек, с которым вы обязаны взаимодействовать — ваш тимлид. Вы можете даже не контактировать с остальной командой, менеджерами, клиентами и руководством. Тимлид — это такой же разработчик, как и вы, и он заинтересован в том, чтобы как можно меньше времени тратить на неэффективное общение.
Причина 4: интересные задачи
Программисты создают куски сложных систем, делают жизнь проще и постоянно создают что-то новое. Несколько лет назад мы не могли представить себе, что будем оплачивать все налоги через приложение и заказывать продукты, вместо того, чтобы ходить в магазин. В банках нейросети оценивают, настоящие ли документы предоставил новый клиент и можно ли открыть ему счёт. Приложения каршеринга рассчитывают, насколько адекватно ведёт себя на дороге водитель и можно ли дать ему скидку на следующий заказ.
Если для нас все виртуальные возможности выглядят просто удобными функциями, то разработчики вникают в процессы гораздо глубже. Они держат в голове сложные сценарии и придумывают взаимозависимые конструкции, которые становятся новыми функциями программ и приложений.
Причина 5: разные языки программирования
У разработчиков есть выбор инструментов для работы. Разные языки программирования используются для разных целей, каждый разработчик выбирает то, что ему ближе — может развиваться в одном направлении или постепенно во всех.
Вот, как меняются навыки в зависимости от выбранного направления.
- Фронтенд-разработчики — делают то, что видит пользователи: интерфейс, кнопки, анимацию и др. Главная их задача — сделать так, чтобы сервис, программа или сайт выглядели одинаково хорошо на разных устройствах. Инструменты фронтендов — языки HTML, CSS, Javascript и их фреймворки.
- Бэкенд-разработчики — делают логику работы программы со стороны сервиса. Они должны понимать, какие данные им отдаёт фронтенд, как эту информацию обрабатывает сервер и какую информацию он передаёт обратно. Для них выбор языков больше, но обязательно нужно учить Java и C# и разбираться в базах данных MySQL и MongoDB. Те, кто чаще работают с массивами данных и нейросетями, учат Ruby и Python.
- Мобильные разработчики — учат те языки, которые использует их платформа. Для iOS это Swift, для Android — Java и Kotlin. Работают программисты такой специальности и над фронтом, и над бэком.
- DevOps — переходная профессия между системными администраторами и разработчиками. Девопс-инженеры следят за тем, чтобы новые версии программ адекватно обновлялись и не «глючили». Для того чтобы ими стать, учатся работе с Docker, Ant, Ansible и CI.
Причина 6: возможности для релокации
Для многих новичков работа программистом — это ещё и возможность переехать из родного города поближе к столице. Крупные компании и стартапы из Москвы, Санкт-Петербурга и Казани ищут разработчиков по всей стране — им важны навыки специалиста, а не его место жительства. Организовать переезд подходящего сотрудника для крупной компании — не проблема.
Программа релокации подразумевает, что сотрудники компании помогают найти съёмное жильё поближе к работе, переехать, даже перевезти семью и влиться в коллектив. Такие же возможности есть у тех, кто хочет переехать из России. Компании из Германии и стран Прибалтики постоянно ищут программистов из России, Украины и Белоруссии, потому что они обходятся дешевле местных специалистов. От вас, кроме хороших скилов, потребуется знание английского и эффективная работа.
Причина 7: возможность вертикального и горизонтального роста
Вертикальный рост — это как повышение разряда профессии. Вот как это выглядит у разработчиков:
- Junior — новичок, выполняет базовые задачи.
- Middle — уверенный специалист, делает сложные задачи.
- Senior — сильный и опытный специалист, обучает «джуниоров» и берёт на себя самые ответственные этапы работы.
- Team Leader, «тимлид» — самый опытный разработчик в команде, который распределяет задачи и следит за развитием всех ее членов.
- CTO, Chief Technical Officer — технический директор, разрабатывает архитектуру проекта.
Во многих компаниях есть план развития. Ваш тимлид объясняет, над какими новыми технологиями и навыками вы должны работать, чтобы продвинуться дальше по карьерной лестнице в своей компании. Вы осваиваете их, показываете на практике и переходите на следующую ступень. Ни одна адекватная компания не будет долго держать джуниора на такой позиции, если он готов стать мидлом. Потому что, если он уйдёт, все вложенные силы и средства не дадут никакого результата.
Горизонтальный рост — это переход из одной сферы в другую. Если вы выбрали фронтенд, но поняли, что вам хочется больше работать с базами данных, серверами и внутренней логикой. Вы сообщаете об этом тимлиду и составляете план, как стать бэкенд-разработчиком — нужно будет осваивать новые языки и технологии. В любом IT-проекте всегда есть разные роли в команде. И у вас почти всегда возможность перейти на другую роль, если вы сами решили, почему стоит это сделать.
Причина 8: возможность работать с бизнес-процессами
Ещё одна интересная перспектива программиста — это самому открыть стартап или уйти в руководство. Когда вы работаете над проектом, то разбираетесь не только в том, как реализовать поставленную задачу, а дальше — хоть потоп. Приходится смотреть на бизнес-модель и то, как новая функция изменит её. Со временем вы поймёте, что бизнес — это система, внутри которой работают процессы. И о каждом процессе вы будете узнавать всё больше.
А потом вы прокачаетесь так, что будете понимать всё в бизнесе своего проекта или заказчика. И тогда у вас будет возможность открыть аналогичный проект и сделать его так, как считаете нужным. Или стать руководителем, разобравшись с управлением персоналом и процессами — зарплаты там тоже очень хорошие. Грубо говоря, вы обучаетесь тому, как работает бизнес и как его оптимизировать. И почему-то за это обучение вам ещё и платят (а не вы, как на курсах).
Причина 9: защита от «восстания машин»
Всё больше профессий уходит из нашей жизни. Сегодня сервисы сами приводят клиентов, помогают подобрать товары, реставрирую фотографии, пишут текст и делают видео. Почему люди уходят из профессий — их заменили технологиями. Это выгодно бизнесу и в погоне за оптимизацией компании будут внедрять автоматизированные решения.
Сервисы и нейросети заменяют людей и уничтожают целые рынки. Раньше таксисты были чуть ли не привилегированной кастой — сегодня они сдельные сотрудники на службе у агрегаторов. Скоро, когда будут протестированы беспилотные автомобили, они могут в принципе исчезнуть. Как не стать безработным — важный вопрос.
Но есть профессии, в которых людей долго не получится заменить. Это разработка тех самых технологий, которые будут вытеснять людей. Айтишники точно не входят в группу риска по этому фактору. Код не может писать сам себя, система не построит свою архитектуру. Если вы боитесь такого сценария своего персонального апокалипсиса, задумайтесь над тем, чтобы стать программистом.
Причина 10: можно учиться онлайн
Чтобы начать работать в IT и стать программистом, вам необязательно поступать в колледж или вуз. Многие онлайн-школы имеют свои курсы по программированию, от курсов-ликбезов для новичков до углублённого изучения для перехода от мидла к сеньору. Вы выбираете конкретный язык, который хотите освоить сами, и учите его, не отвлекаясь на ненужную теорию и технологии.
Учиться в онлайн-школе можно по вечерам или выходным, без ущерба для основной работы. Большинство курсов оформлены как видеоуроки с домашними заданиями, которые будет проверять ваш наставник и указывать на «слабые места». Многие школы в конце обучения помогают с трудоустройством.
Как стать программистом
Вот несколько рекомендаций для тех, кто хочет освоить профессию программиста.
- Фронтенд-разработчик. Прежде всего нужно разобраться в языках разметки и стилей HTML и CSS и основами языка JavaScript, а затем прокачивать навыки. На курсе «JavaScript-разработчик» от Nordic IT вы разберётесь в современных версиях языка и научитесь разрабатывать сложные интерактивные интерфейсы и сможете как оптимизировать и ускорить разработку сложных веб-приложений и сайтов на JavaScript.
- Бэкенд-разработчик. Будущим бэкенд-разработчикам рекомендуем курс-профессию «Backend-разработчик на Go» от Skillfactory. За 12 месяцев вы освоите язык программирования Go и научитесь разрабатывать бэкенд высоконагруженных сайтов и приложений. Вы отработаете навыки на практике, соберёте и пополните портфолио, а Skillfactory поможет с трудоустройством.
- Мобильный разработчик. Будущим мобильным разработчикам рекомендуем начать с курса «Профессиональная разработка Android-приложений» от GeekBrains. Вы научитесь грамотно проектировать архитектуру клиент-серверных андроид-приложений, сможете лучше понимать и поддерживать код и тестировать каждый модуль в отдельности и систему целиком.
- Девопс. Если хотите стать девопс-инженером, рекомендуем начать с базового курса «DevOps: быстрый старт» от ProductStar. Вы освоите саму методологию DevOps, прокачаете технические навыки и сможете организовать продуктивную командную работу разработчиков, тестировщиков и системных администраторов.
Помните, ни один курс не гарантирует, что вас сразу возьмут на работу. Но вы получите прочную теоретическую базу, реальную практику и портфолио. Дальше вы сможете изучать более сложные технологии, вести свой небольшой проект, выкладывать что-то на гитхаб — делать всё, чтобы понравиться hr-специалисту крупного проекта. И тогда вы сможете быстрее устроиться по профессии.
Запомнить главное
Программист — особенно ценный специалист в условиях развития информационных технологий. Это интересная и перспективная профессия, потому что применить свои навыки можно в самых разных сферах — от науки до сферы игровых технологий.
Уровень заработной платы опытных специалистов высокий — и он зависит от уровня специалиста, эффективности его работы и выбранной сферы. Глубже разобраться в различных специальностях поможет обзор популярных направлений.
И помните, программист необязательно должен работать на какую-то компанию в штате. Многие получают необходимый опыт в команде, а потом становятся владельцами собственного бизнеса и разрабатывают свои интересные проекты.