Как начать карьеру в IT, если со всего перечня необходимого у вас только желание, Google и приблизительное понимание будущей специальности из того пятиминутного видео на YouTube?
Старт карьеры в IT — нелегкий путь. И даже если все можно погуглить и набросать для себя ориентировочный план действий, все равно это не заменит опытного знакомого (ментора), который за кофе поделится картой точного расположения «граблей» и лазейками, чтобы эта дорожка кое-где, но была менее тернистой.
Я подумал, какие советы я дал бы себе 14 лет назад в начале своей карьеры Java Developer. И я решил поделиться ими с вами. Надеюсь, что они будут полезны и помогут вам не совершать моих ошибок 🙂
Let’s go!
В начале карьеры, особенно, когда удалось присоединиться к команде проекта, где используются различные технологии и фреймворки (или к стремительно развивающемуся стартапу), разработчик сталкивается с тем, что имеющихся знаний и навыков недостаточно для эффективного решения задач.
Тогда новичок будет хвататься за все нагуглившиеся книги или статьи, или те, которые посоветуют более опытные члены команды, будет пытаться их «съесть» максимально быстро, все сразу, иногда даже жертвуя выходными или сном. Это приведет к спаду мотивации, эффективности, уменьшению удовольствия от процесса работы и обучения, и в конце концов джун неизбежно столкнется с выгоранием. С этим сталкивался и я. Много раз.
Поэтому у меня есть такое правило: «Максимально фокусируйся на двух-трех вещах одновременно, и не больше» .
Хочу остановиться на некоторых важных пунктах:
Важно овладеть основным языком программирования, который используется разработчиком на проекте для решения поставленных задач. Также важна и сертификация (например, OCAJP для Java), а именно подготовка к ней помогает изучить или вспомнить основные базовые темы по технологии, закрыть пробелы по смежным темам, которые не изучал до этого.
Но это только один из вариантов — возможно, кому-то лучше подойдет:
Здесь уже дело вкуса 🙂
Важно знать основы фреймворков, которые используются на текущем проекте, чаще всего это Spring и Hibernate. Без этого трудно будет выполнять поставленные задачи (а иногда и совсем невозможно).
Хорошо, что материалов на эту тему очень много: разнообразных книг, статей, видео. Поэтому не должно быть проблемы найти список рекомендованных материалов для изучения этой темы.
Здесь важно сразу пробовать применять полученные знания на практике (на текущем проекте или потренироваться на собственном pet-проекте).
На первых этапах не стоит тратить время на сверхсложные темы и алгоритмы, ведь то, что не применяется на практике, как правило, быстро забывается.
Коммуникация с членами своей команды, а также с другими командами проекта важна не только для выполнения тасок, но и для получения новых знаний. Новички часто боятся задавать уточняющие вопросы, чтобы не показаться другим некомпетентными. Такая стратегия приводит к большим проблемам и неудобствам как для новичка, так и для команды. Идеально, если с новичком будет работать ментор .
В начале карьеры знание английского языка существенно облегчает поиск обучающей информации. Без английского в IT тяжело, это будет помехой. Если ваш уровень недостаточен для коммуникации с клиентом или для быстрого чтения литературы или документации, советую быстро бежать и учить, как я и сделал в свое время.
Углубляйте экспертизу в знаниях разработчика. Со временем, по мере того как закладывается фундамент, будет приходить понимание, какие направления или темы требуют углубленного изучения.
Минимум изучайте глубже:
Старайтесь самостоятельно разворачивать результаты своей работы. Это можно делать на тестовом сервере или даже продакшене, таким образом вы будете получать базовые знания и навыки по DevOps.
Невозможно стать настоящим Software Developer, занимаясь только кодингом таски, которую вам дает тимлид, а до этого архитектор или техлид расписывает спецификацию.
В 2022 году полноценный Software Developer — это специалист, участвующий в дизайне, программировании, сборке, деплое и поддержке software, над которым он (или команда) работает.
А для этого нужно иметь широкий спектр скиллов.
Приведу несколько примеров:
Поддерживайте в себе жажду постоянного развития, желание делиться экспертизой и знаниями с коллегами. Это очень помогает вашему эффективному росту как эксперта. На вашем карьерном пути может быть много граблей, но теперь вы можете обойти хотя бы несколько из них.
Keep going!
В благословенные офисные времена, когда не было большой войны и коронавируса, люди гораздо больше общались…
Вот две истории из собственного опыта, с тех пор, когда только начинал делать свою карьеру…
«Ты же программист». За свою жизнь я много раз слышал эту фразу. От всех. Кто…
Отличные новости! Если вы пропустили, GitHub Copilot — это уже не отдельный продукт, а набор…
Несколько месяцев назад мы с командой Promodo (агентство инвестировало в продукт более $100 000) запустили…
Пару дней назад прочитал сообщение о том, что хорошие курсы могут стать альтернативой классическому образованию.…