Как правильно учиться в IT — сфере. ТОП ошибок при обучении. Конкретные советы начинающим
В этой статье я постараюсь дать конкретные советы, как, на мой взгляд, правильно обучаться в IT-сфере. В том числе, разберем частые ошибки, мешающие эффективному обучению. Поговорим как про бесплатное самообразование, так и обучение на платных курсах и в университетах. Поехали!
Начнем с самостоятельного обучения. Благо, сегодня на просторах интернета есть огромное количество бесплатной информации очень хорошего качества. Бывает, что качество даже лучше, чем на платных курсах.
Так вот, информации много, она бесплатна, но, к сожалению, эффективно пользоваться ей могут далеко не все. Вот в мое время приходилось собирать все по крупицам. Обучался я крайне неверно и до сих пор избавляюсь от негативных привычек. Поэтому, давайте учиться правильно учиться
Шесть частых ошибок в обучении
Но для начала рассмотрим 6 частых ошибок в обучении, которые мешают нам достичь цели:
Советы по выбору специальности
Подойдите к выбору специальности серьезно. Если вам сложно даются точные науки, выбирайте творческие направления, такие как дизайн или менеджмент. Либо несложную разработку, например, как верстка сайтов. Не нужно гнаться за рейтингами языков программирования, слушать мнение сомнительных соседей. Нужно делать то, что нравится и проще всего дается. Хорошо освоив несложную специальность, при необходимости, вы всегда сможете ввязаться во что-то еще, и сделать это будет уже гораздо легче. Ключевой момент – это хорошо освоить специальность. Иначе, это будет перепрыгивание, и ни к чему хорошему не приведет.
Вот вам список IT — специальностей по категориям.
Интенсивность (график) обучения
И тут мы плавно переходим ко второй проблеме – это спешка. Реальность такова, что на адекватное изучение, даже сравнительно простой специальности, нужно выделить и потратить определенное количество времени. Передаю привет всем курсам «любой язык программирования за три недели»!
Так сколько же нужно времени? Точная цифра зависит от конкретного ученика, кому-то нужно больше времени, кому-то меньше, мы все разные и это здорово, но у меня есть конкретный план, следуя которому можно получить хотя бы примерные цифры.
Итак, если мы обучаемся самостоятельно, то у нас есть отличное преимущество – это возможность формировать свой собственный личный комфортный график обучения.
Например, график «два раза в неделю». Что это значит? Это значит, что два раза в неделю вы смотрите новый урок, то есть получаете новую информацию.
Интенсивность занятий зависит от многих факторов: ваша занятость другими делами, финансовое положение, количество времени, которое вы можете выделять на обучение и т.д. Будет правильным, почувствовав, что времени на усвоение темы не хватает, перейти на более медленный темп.
Важно чтобы не было спешки, чтобы вы с нетерпением ожидали каждый новый урок, немного устав практиковать одно и тоже, а не взваливали новую информацию на неокрепший фундамент. В идеале – движемся дальше только тогда, когда есть уверенное практическое понимание текущей темы. Иначе наши знания рухнут, как карточный домик, под грузом новых, более объемных тем.
Что же делать между уроками? Практиковать полученную информацию!
Советы по практике
Во время практики возвращайтесь к теории: пересматривайте уроки, перечитывайте статьи, пользуйтесь шпаргалками и справочниками.
Во время практики работайте с небольшими объемами. Его всегда легче доводить до ума. Причем не только физически, но и морально. На вас не давит большой объем, не заставляет ускоряться. Тем более, скорее всего, у вас вряд ли будет получаться нормально сделать что-то крупное. Этот факт ударит по самооценке и мотивации. А нам это точно не нужно. Намного лучше во время обучения практиковаться на мелких объемах, но делать их хорошо.
Во время практики экспериментируйте! Помимо явных задач, например, домашек, работайте с несуществующими задачами. Напишите на листочке вопрос «А что если?», приклейте на монитор. И каждый раз, работая с той или иной темой, задавайте себе этот вопрос и экспериментируйте!
Например, вы проходите псевдоэлементы. Вывели с их помощью картинку слева. Не останавливайтесь на этом. Поставьте справа, снизу, сверху. Уберите свойство «дисплей», поймите почему не работает. Запомните, что псевдоэлемент – это строчный объект, и для него по умолчанию не работает ряд CSS свойств и т.д.
Выворачивайте тему наизнанку. Так мозг тренируется решать нестандартные задачи, и технология усваивается на глубоком уровне. Ну а хорошо владея технологией, вы сможете сделать все что угодно!
Опорные пункты технологий
Стоит отметить, что в каждой технологии есть основные темы, виртуозно владея которыми можно легко достичь успеха. Советую определить эти опорные пункты и отработать их особенно хорошо.
В верстке это строчная/блочная структура, позиционирование, модули построения структур (flexbox и grid), адаптивная верстка и, конечно, базовый JavaScript.
Не стоит учить сразу все на свете теги и свойства. Важно получить базу, но железобетонную, а уже потом на нее можно будет накладывать слоями все что угодно. Плавное и комфортное развитие.
Как бороться с ленью и страхом
Что же делать с ленью, прокрастинацией и т.д.? Ну, для начала нужно признаться себе, что это именно наша лень, а не искать причины извне, которые вероломно мешают вам достичь успеха. Бывает, в своих неудачах мы виним родных, близких, независящие от нас обстоятельства и т.д. Чушь собачья. Бери и делай.
При этом с родными и близкими нужно договариваться заранее. Объяснять, что вам нужно время и покой на обучение. Но в это время не считать ворон, а усердно заниматься.
По поводу страха скажу так: как только вы поймете, что начинаете овладевать технологией, как только почувствуете, что смотрите на задачу, как Нео смотрел на матрицу, то есть совсем не так как вы смотрели на неё еще месяц назад, – вот тогда страх уйдет сам собой. Ведь дело мастера боится, а не наоборот.
Добавлю, что к контенту стоит относиться серьезно, даже если вам его просто подарили. Относитесь к нему так, как будто вы заплатили за него деньги. Бытует даже поговорка: нет ничего более дорогого, чем бесплатное.
Главная проблема самообучения
Главная проблема самообучения, которая все-таки остается, – это отсутствие фидбека о своем развитии.
Но тут есть выход – это консультации, либо менторство некого специалиста в сфере, которую изучаете. Как правило, они бесплатными не будут, но таким образом за небольшие деньги вы сможете получить информацию о текущем состоянии ваших знаний, получить ревью ваших работ и так далее.
Также существуют различные сообщества и чаты для общения и обмена опытом, где можно, находясь в кругу таких же ребят, получать хоть какой-то фидбек.
Как выбрать платный курс
Конечно, большинство озвученных ранее ошибок можно избежать, приобретая платные курсы. И это замечательно, но нужно понять, какие именно из всех курсов выбрать. И начать нужно с того, что научиться отделять курсы ради бизнеса от обучающих курсов.
Курсы – как бизнес – сегодня очень популярны. Желающих стать суперпрограммистами за три недели и зарабатывать сотни миллионов в минуту очень много. Поэтому, предприниматели открывают различные IT-школы, впаривают всевозможные интенсивы и так далее. Преподают в таких школах ребята с далеко не всегда реальным опытом и умением преподавать.
Поэтому, для начала я советую пробовать учиться самостоятельно, чтобы иметь хоть какие-то понятия про ту технологию, которую хочется изучить уже за деньги. Убедившись в том, что это ваше, стоит обратить внимание на подачу материала тем или иным преподом. Это важно. Даже если материал подается нужный, но присутствует некая раздражающая черта или занудство в подаче – это может сделать обучение неэффективным. С другой стороны, понятная и приятная подача материала, в сопровождении юмора и мотивации, сделают процесс обучения веселым приключением. В комфортной обстановке знания будут усваиваться намного лучше.
И, конечно же, очень важно учиться у практикующих специалистов. Таким образом у вас будет только актуальный набор знаний и практики, необходимый для работы в рамках конкретного курса. Вы не будете тратить время на получение лишних, либо не первоочередных знаний, которые в последствии сможете получить и сами, положив их на мощную необходимую базу.
Выбирайте курсы, где не учат делать что-то. «В конце курса мы сверстаем вот такой сайт». Выбирайте курсы, где учат технологиям. И как я уже упоминал, изучив технологию вы сможете сделать все что угодно.
Вот вам пример: если цель курса – научиться вырезать из дерева круг, то это не сделает из вас мастера по дереву. А вот научившись владеть инструментом, методиками и думать, как мастер по дереву, – можно вырезать все что угодно, решать нестандартные задачи и успешно развиваться уже самостоятельно.
При этом всем нужно понимать, что обучаясь даже за деньги, вы все равно учитесь сами, просто в этом вам немного помогают. Есть некий график, контроль, определенные объемы информации и т.д. Я к тому, что все также нужно болеть и гореть тем, что вы решили изучить. И, какой бы не был курс, нужно будет много работать самостоятельно: как во время, так и после его окончания.
Стоит ли поступать в университет?
Пару слов об образовании в институтах и универах. Да, многие говорят, что диплом никому не нужен. Но поступать и посещать ВУЗ нужно не ради диплома и даже не ради знаний. К сожалению, система образования в большинстве таких заведений желает лучшего. Поступать стоит ради жизненного опыта и невероятно полезных знакомств. Наверняка на весь универ найдутся пара толковых преподов и талантливых ребят. Вот с ними и нужно «тусить», развиваться, впитывая опыт. Кстати, очень часто знакомства и опыт именно студенческих лет помогают найти первую работу.
Стоит ли читать книги?
Что по поводу книг, спросите вы? Тут дело личное. Если вам легче получать информацию из печатных изданий – так и поступайте, но у книг на узкотехнические темы есть способность терять актуальность. Там невозможно задать вопрос, прочесть уточняющие комментарии и так далее. В этом плане информация в цифровом формате выглядит более приемлемой.
Читать нужно и важно, но я бы советовал читать что-то общее, развивающее логическое мышление или чувство вкуса, то что всегда будет актуально. Хорошим примером будет наверняка известная вам книга «Грокаем алгоритмы», которую читают большинство начинающих программистов. (https://habr.com/ru/company/piter/blog/323310/)
Как конспектировать материал?
Поговорим о конспектировании материала. И, раз уж вспомнили про информацию на бумаге, я настоятельно рекомендую вам делать заметки как во время обучения, так и во время работы – ручкой, карандашом, фломастером, – неважно, но пишите, рисуйте, разукрашивайте. Переносите мысли из головы на бумагу, доску, стену. Так информация будет усваиваться намного лучше, а решать задачи будет более наглядно.
Бумажные блокноты отлично подходят для усвоения материала, но плохо подходят для хранения шпаргалок, так как поиск может занять время. Для этих целей можно создавать скриншоты того или иного действия и хранить, распределяя по папкам.
Какие программы и инструменты использовать?
Что же насчет программ и инструментов? Многие из вас спрашивают, какой редактор выбрать? Каким сборщиком пользоваться и т.д. Спешу вам сообщить, что никакие саблаймы, вс коды, галпы, вебпаки и фотошопы с фигмами не сделают из нас специалистов. Все это инструменты, которые нужно использовать только тогда, когда они необходимы – для помощи в решении или оптимизации той или иной задачи. И выбор того или иного инструмента должен соответствовать этой задаче. Не стоит ездить на БелАЗе за хлебом, а на Порше возить картошку. Это неудобно и нелепо.
Фокусируйтесь на важном, а выбор нужного инструмента придет сам по себе в тот момент, когда вы точно будете знать, что от него хотите получить.
На чем сосредоточится во время обучения?
Так, что же самое важное? На чем сосредоточиться во время обучения? Для этого нужно понять, что именно на самом деле делает нас специалистами. Мое мнение таково, что специалист – это не тот, кто лучше всех изучил некий язык программирования, либо помнит все HTML теги; и точно не тот, кто хорошо владеет сразу тремя редакторами кода или сборщиками. Все это лишь инструменты для реализации задач, которые решаются у нас в головах. И чем быстрее, правильней и лучше мы их умеем решать, тем более востребован и дороже наш труд.
Хороший верстальщик отлично понимает принципы качественной верстки и ее предназначение. Быстро строит в голове структуру, просто глядя на макет. А знания HTML и CSS ему нужны для того, чтобы записать свое виденье для отображения в браузере.
Хороший программист сможет быстро и правильно спроектировать программу. Так как он развивал способности к абстрактному проектированию. И опять же, некий язык программирования ему нужен только для общения с машиной.
Хороший дизайнер делает дизайн, который решает задачу, не потому что умеет владеть фотошопом, а потому что постоянно развивает чувство прекрасного и занимается изучением трендов, влияния тех или иных элементов дизайна на восприятие человеком.
В итоге, уже на этапе обучения мы должны понимать — что есть основное, а что есть второстепенное в данной профессии.
Софт скилы (Soft Skills)
Также сегодня стоит уделять немалое внимание так называемым софт-скилам. Вот ряд навыков, которые стоит развивать в IT-сфере:
Обучайся, развивайся и помни – живи, а работай в свободное время!
Гид: что изучать, чтобы получить ИТ-профессию
Планы на будущий год.
В этой статье собраны ссылки на основные материалы, которые вам понадобятся, чтобы начать путь в ИТ-профессии: стать программистом, тестировщиком, аналитиком или кем-то ещё. Используйте её как навигатор: можно добавить в закладки, сохранить на стену или просто возвращаться к ней по мере прохождения.
Направления
Сфера ИТ очень большая, и в неё входит не только программирование. Если коротко, то всё ИТ можно разделить на 5 групп:
Если не понимаете, что эти направления значат, начните с ответов на самые популярные вопросы про ИТ — это поможет сориентироваться и погрузиться в тему.
Простые ИТ-профессии для старта
Проще и быстрее всего стать контент-менеджером — человеком, который отвечает за публикацию постов, картинок и статей в компании. Обычно для этого нужно немного разбираться в базовой вёрстке, уметь работать с фотошопом и иметь навык работы в соцсетях. Плюс этой работы — много практики и быстрое погружение в ИТ. Как освоитесь, сможете решить сами, чем вам интересно заниматься дальше.
Ещё на старте можно попробовать профессию тестировщика. Он проверяет качество программ и устраивает для них стрессовые ситуации. Если программа прошла тесты, можно выпускать, если нет — возвращается на доработку. В 2020 году средняя зарплата инженера по тестированию — 55 тысяч.
ИТ-профессии посложнее
Если хорошо изучить HTML, CSS и JavaScript, можно стать фронтенд-разработчиком. Они пишут сайты, разрабатывают интернет-магазины и делают почти всю внешнюю часть интернета. В среднем зарплата фронтенда — 116 тысяч.
Но это видимая часть интернета. За невидимую отвечают бэкенд-разработчики — продумывают логику работы сайта, настраивают базы данных для хранения информации, следят за скоростью загрузки и отвечают за общие возможности сайта. За это они получают примерно 130 тысяч в месяц.
Ещё есть дата-сайентисты. Они занимаются аналитикой больших данных, работают с нейросетями и программируют искусственный интеллект. Звучит сложно, но сейчас это самое перспективное направление в ИТ. Можно начать с аналитики, а если понравится — продолжить уже как полноценный дата-сайентист. По деньгам — как договоритесь, но обычно это 100 тысяч и выше.
Почитайте, как специалисты из разных профессий пришли к тому, что они умеют сейчас, чем они занимались на старте и как вообще пришли в ИТ:
Как стать руководителем ИТ-команды за 5 лет. Александр Штыков: путь от контент-менеджера до тимлида.
Владимир Олохтонов о работе старшего разработчика в Авито. Путь от монтажника локальных сетей до инженера машинного обучения.
«Никто не верил, что я сама пишу код». Анастасия Никулина: о дата-сайнс, ютубе и программировании.
Трудоустройство и собеседования
Если вам понравились эти истории и вы хотите так же — вот что вам поможет с трудоустройством:
Главные языки и технологии для старта
Для разных профессий нужны разные навыки и языки. Но для быстрого старта достаточно этого:
HTML — на нём пишут и верстают все сайты в интернете.
CSS — помогает оформлять красиво то, что уже свёрстано.
JavaScript — для программирования разных возможностей сайта: добавления товара в корзину, формирования персональной ленты или для корпоративного чат-бота.
Python — для тех, кто хочет пойти в бэкенд или в дата-сайенс. Для обычной веб-разработки он не нужен.
Для общего развития
Обычно такое не спрашивают при трудоустройстве, но для общего ИТ-развития это будет полезно. Заодно посмотрите, как ИТ влияет на привычные вещи.
Где учиться
Лучше всего учиться с наставником — он поможет быстро разобраться с тем, что непонятно, и проконтролирует весь процесс погружения в профессию. В Практикуме есть бесплатная часть с обучением — попробуйте, если понравится — продолжите учиться дальше.
С чего начать, чтобы стать айтишником, если вы далеки от IT
В статье мы расскажем, какие шаги предпринять, с чего начать и как построить свое обучение, чтобы стать айтишником, если вы далеки от ИТ.
Определитесь со специализацией
В первую очередь, вам нужно решить, почему вы идете в ИТ. Вам нравится делать сайты, создавать программы для операционных систем, продумывать дизайн или тестировать? Это решение станет отправной точкой в процессе обучения.
В зависимости от выбора, вы сможете определить для себя программу обучения, подготовить план и подобрать первые источники: книги, сайты или онлайн-курсы.
Учите английский язык
Если ваших знаний языка не хватает на свободное чтение, начать следует именно с него. Английский будет нужен не только для коммуникаций, вам придется много читать и искать в интернете на английском. Это может быть как техническая документация или ответ на StackOverflow, так и просто интересная тематическая статья на Medium.
Научитесь гуглить
Это второй важнейший навык, после знания иностранного языка, который жизненно необходим при обучении. Важно научится правильно формировать запросы и отсеивать ненужную информацию еще на странице выдачи.
Освойте базовые понятия
Для начала узнайте, чем отличается бит от байта, изучите базовые термины и концепции информатики, узнайте про условия, циклы и прерывания. Как работает процессор, зачем нужен веб-сервер и что за ascii – все это нужно знать, чтобы начать углубляться в ту область, которая вам интересна.
Структуры данных и алгоритмы
Структуры данных и алгоритмы – фундаментальные для разработки и ИТ понятия. Вам не расскажут о них как следует на прикладных курсах по программированию, поэтому изучите эти вещи самостоятельно.
Для начала разберитесь с терминами стек, дерево, очередь, хеш. Для понимания алгоритмов необязательно зарываться в теорию графов, но как минимум понять quicksort – должно быть вашей целью.
Ознакомиться с концепцией объектно-ориентированного программирования будет полезно независимо от того, какой язык вы выбрали и как собираетесь его применять. ООП – один из самых популярных стилей разработки, поэтому вам нужно не только знать определения основных концепций (наследование, инкапсуляция, полиморфизм), но и понимать, как они работают, уметь реализовать их в коде программы.
Базы данных
Если вы уверенно овладели синтаксисом интересующего вас языка программирования, стоит узнать как он работает с разными типами баз данных, а заодно узнать о видах БД и их различиях.
Даже если ваш язык обычно не взаимодействует с базой данных напрямую (например, JavaScript), вам нужно знать что происходит в этой области разработки: вы лучше будете понимать, как работает программа в целом.
Так как же стать айтишником?
Переучиться и сменить профессию можно всегда и в любом возрасте. Важно лишь помнить, что это очень долгий и сложный процесс. И чем позднее вы за это возьметесь, тем сложнее вам будет.
Чтобы стать айтишником, нужно настроить себя на долгий процесс изучения азов и непрерывное самообучение в течении всей карьеры. Запаситесь терпением, ведь между началом обучения и первой работой может пройти много месяцев и даже лет.
5 советов разработчикам без опыта и студентам: как начать работу в IT
В Haulmont приходят как опытные специалисты, так и разработчики без опыта. Мы часто общаемся с новичками, которые не знают, с чего начать путь в IT. Собрали полезные ресурсы и рейтинги, а еще спросили руководителей нашей программы по трудоустройству начинающих разработчиков, как изучить рынок, выбрать язык программирования и о чем не забыть на собеседовании. Если вы уже опытный разработчик, будем рады узнать ваш опыт и советы для новичков.
1. Выберите нишу, а затем — язык программирования
Разработка имеет множество направлений. Кому-то хочется уйти во Front-End, кому-то — в Game Dev, Enterprise, Mobile или Back-End и так далее. Как выбрать лучшее и с чего начать?
Конечно, лучше то, что нравится вам. Но существуют и более конкретные показатели, на которые можно опереться.
Посмотрите, много ли позиций открыто в выбранной вами нише, какой в них порог вхождения и какие есть перспективы для роста. Изучите рейтинг вакансий и уровень зарплат. Например, вот подробное исследование от hh.ru с разбивкой по регионам и формату работы (офис/удаленка).
Вы заметите: хорошая зарплата зависит не только от опыта разработчика и ниши, но и от языка программирования. Например, согласно исследованию GitHub — крупнейшего web-сервиса для хостинга (то есть хранения) IT-проектов — десятку популярных языков возглавил JavaScript, затем идут Python, Java, Typescript, C# и так далее.
Рейтинг языков программирования / github.com
Приведенный рейтинг GitHub — лишь одно из исследований. Чтобы понять, какой язык программирования изучать, смотрите рейтинги с разбивкой по сферам. Тогда вы увидите: в мобильной разработке преобладает Swift, в Back-End — Java, во Front-End — JavaScript. Выбирайте язык в пределах вашей специализации. Чем популярнее язык, тем больше на него открытых вакансий и выше конкуренция.
Можно пойти не массовым путем, а нишевым — то есть изучать более узкие языки, например, Kotlin, Go, Rust, Ruby. Кстати, позиции со знаниями таких языков могут оплачиваться выше.
2. Выберите стажировку/программу трудоустройства
Если в вашем городе много IT-компаний (это особенно актуально для Москвы, Санкт-Петербурга и некоторых городов-миллионников), посмотрите, на чем они специализируются и обучают ли языку программирования с нуля. Некоторые работодатели в условиях высокой конкуренции готовы вложить силы в развитие своих сотрудников, и для вас это может стать отличной возможностью.
Такие программы бывают короткими (от пары месяцев до полугода) и длительными (от полугода и больше). Разница между ними не только во времени.
Как правило, длительная стажировка рассчитана на специалистов «с нулевым» уровнем. Скорее всего, ваше обучение не будет оплачиваться и займет много времени, зато у вас будет ментор, возможность освоить язык программирования и посмотреть на работу IT-компании изнутри.
На коротких стажировках молодые разработчики зачастую обучаются конкретным технологиям — Spring, BigData, UJS, React — и работе на проектах. Но все зависит от специализации компании и выбранного курса. Здесь уже пригодится знание основ языка программирования
Если хотите обучаться и в то же время получать зарплату и профессиональный опыт, выбирайте программы по обучению и трудоустройству. У нас в Haulmont есть такая программа под названием Bench (Бенч). Так как мы не обучаем разработчиков с нуля, то ждем специалистов с хорошими знаниями Java core и сразу предлагаем работу и зарплату. Молодые коллеги знакомятся с нашими технологиями и функциональностью реальных клиентских решений, общим стандартом оформления кода, нашей платформой Jmix, технологиями и фреймворками, которые мы используем в компании. В других компаниях свои условия и предложения — не бойтесь спрашивать.
3. Ресурсы для учебы и самообразования
Для начала поговорим про студентов. Дело в том, что вам доступен богатый перечень бесплатных и действительно полезных лицензий и софта от ведущих производителей ПО и технологий. Например, JetBrains, авторы популярной во всем мире среды разработки IntelliJ IDEA и языка Kotlin, предоставляют студентам (и преподавателям тоже!) бесплатные образовательные лицензии. В этот пакет входит доступ к почти 20 продуктам и средам разработки компании, включая саму IntelliJ IDEA.
Рано или поздно вам предстоит познакомиться с системами контроля версий и репозиториями: без этого в разработке никуда. Так что советуем уже сейчас изучить Git и GitHub.
Git — это самая популярная система контроля версий. Она позволяет сохранять код в контрольных точках (чтобы в случае ошибки откатиться в то состояние, когда всё работало), отслеживать изменения в файлах и редактировать их с другими разработчиками. Система контроля версий также пригодится, если вы работаете в командных проектах.
GitHub — это web-сервис, своего рода, соцсеть для разработчиков, куда можно выложить свой код и задавать вопросы, общаться с комьюнити в Open source-проектах. К тому же, для студентов их преподавателей сервис предоставляет пакет с бесплатным доступом к GitHub Pro, облачным сервисам, средам разработки и доменам.
Чтобы воспользоваться лицензиями, вам нужно подтвердить свой студенческий статус — вы легко найдете необходимые инструкции на страницах сервисов.
Существует богатый перечень продуктов и образовательных программ от Microsoft. Однако некоторые услуги доступны по вузовской лицензии. Если вы не уверены, спросите, подключен ли ваш университет к этой программе.
Но что, если вы уже не студент? Здесь не можем не сказать про курсы и онлайн-школы — сейчас их много на любой бюджет, и они легко находятся по первому запросу в поисковике. Из неочевидных решений советуем обратить внимание на обучение от авторов языка программирования, который вы хотите освоить, или лидеров IT-рынка. Например, существуют курсы от уже упоминаемых JetBrains. В программе есть модули для совсем новичков. Также есть ресурсы для подготовки к сертификации от Oracle — одних из разработчиков Java. Они будут полезны более опытным специалистам. И не забывайте про Git и Github — даже без студенческого пакета знание этой системы контроля версий и web-репозитория необходимо.
Конечно, разработка — это про постоянное самообучение. Так что книги, ролики на YouTube и тематические ресурсы должны стать регулярной рутиной. Читайте технические материалы на Хабр и Tproger. На этих площадках разработчики делятся знаниями и опытом, компании (и ваши будущие работодатели) ведут блоги, рассказывают о своих технологиях и новых релизах. Это позволит вам оставаться в курсе IT-новостей, популярных технологий и направлений.
4. Не бойтесь тестового задания и собеседования
Да, чтобы попасть на стажировки и программы по трудоустройству, нужно пройти тестовое задание и собеседование. Для многих это становится сюрпризом и стрессом. Но благодаря тестовому вы точно узнаете, хватает ли вам знаний и будет ли интересно учиться. Обычно на выполнение дается пара недель, но всегда можно договориться об удобных для вас сроках.
Тестовое прошло успешно? Идем на собеседование. И опять отметим, что в каждой компании они проходят по-разному. Хотя одно можно сказать точно: не бойтесь, что вас будут экзаменовать. Когда мы собеседуем Junior developers, то не ждем глубоких познаний в области разработки enterprise-приложений. Сосредоточьтесь на объектно-ориентированном программировании в целом и Java Core (или того языка, который вы изучили). Расскажите об особенностях языка, его синтаксисе и основных классах.
Часто начинающие разработчики говорят про образование и опыт работы (если он есть), но забывают рассказать о технологиях, с которыми они знакомы. Если вы знаете основные фреймворки: Spring, Hibernate и умеете работать с такими инструментами как Git и BugTracker — обязательно расскажите о них. Это будет вашим преимуществом в глазах работодателя.
Будьте честны и не завышайте свои знания — это легко выяснится на встрече. Кроме теоретических вопросов на собеседовании вам дадут практические примеры, чтобы посмотреть, как вы понимаете код. Здесь вы сможете показать свои реальные знания на практике.
5. Чем выделиться среди других новичков
Если вы уже знаете основы языка, подумайте над собственным проектом.
Возьмите предметную область, которая вам интересна, придумайте задачу, декомпозируйте и автоматизируйте ее. Да, будет много сложностей, багов и неизвестных слов. Но в итоге можно получить опыт, с которым можно двигаться дальше.
Затем опубликуйте проект на GitHub — хорошо, что вы уже знакомы с ним — и прикрепите в резюме. Работодатель приятно удивится вашему знакомству с популярным web-сервисом и общей вовлеченностью в Open source.
И еще кое-что: большая часть документации к языку программирования, фреймворкам и технологиям, а также книги и статьи об актуальных технологиях написаны на английском. Так что, если ваш уровень все еще «London is the capital of Great Britain», есть весомый повод исправить ситуацию.
Надеемся, эти советы помогут вам в начале пути. А что бы вы посоветовали начинающим разработчикам? Поделитесь своим опытом.




