19.10.2023
Стать хорошим программистом можно даже без вузовского образования, хотя сделать это будет существенно сложнее, ведь вуз дает надежную базу из необходимых дисциплин, знаний устройства ПК, а также помогает подтянуть математику и английский язык, которые нужны в программировании. Как стать middle разработчиком, который не плодит сайты-одностраничники с ломаным кодом? Сейчас узнаем.
Зачем нужно стремиться к статусу middle разработчика
Стремление к статусу мидла обусловлено профессиональными амбициями и желанием зарабатывать больше. Это абсолютно нормально, так как никому из работодателей не будет интересен вечный джун, за которым надо приглядывать и контролировать работу.
Чем больше опыта, тем выше уровень доверия и свободы у специалиста. Ему уже смело могут поручать контроль работы джунов и стажеров, их обучение, а также выполнение уникальных задач от сеньора.
Сколько требуется времени, чтобы стать middle-разработчиком? Мидлом может считаться программист, который проработал в сфере не менее двух лет и собрал достойный бэкграунд из готовых работ, проектов и освоенных навыков.
Можно ли не стать мидлом после истечения двух лет? Да, если профессиональный рост сохранится на уровне освоения синтаксиса и базовых знаний о программировании, с которыми приходят новички, то дорога к более серьезных проектам будет закрыта.
В этой сфере активная и естественная текучка. Джуны учатся и становятся мидлами, мидлы со временем набираются опыта и становятся сеньорами, а сеньоры, приобретая навыки не только из айти, но и организационной сферы, становятся тимлидами.
Понимание требований
Что требуется от middle разработчика:
Также необходимо понимать, что мидл не может знать только один язык программирования. Обязательный минимум мидла включает Python, Java и C++. Да, это в идеале. Кажется, что много, но на самом деле учить их будет не сложно, если хорошо разбираешься уже в одном языке. Алгоритмы обучения похожи, поэтому нейронные связи, которые уже сформировались в мозге, существенно упростят задачу. В вопросе изучения отлично помогает практика написания кода, создания интерфейса или разбор функционала определенного сервиса.
Почему стоит научиться пользоваться дополнительными технологиями, базами данных и фреймворками? Потому что это оптимизирует работу и позволяет выполнять больший объем задач. Уже не придется прописывать все вручную, достаточно использовать рабочие скрипты и команды, которые уже есть во фреймворках.
Усовершенствование навыков программирования
Как только мидл база будет освоена, пора переходить к усовершенствованию рабочих навыков:
Работа с базами данных
Для чего работать с базами данных, если можно просто хранить информацию на компьютере в одном месте? Базы данных являются оптимизированной системой хранения и распределения информации, которые применяются тогда, когда стандартный способ хранения становится просто бессмысленным, так как объемы информации слишком большие. Базы данных упрощают навигацию и поиск.
Запросы SQL пишутся на специализированном языке, который как раз предназначен для использования баз данных. На этом языке можно легко формировать запросы и таблицы, редактировать записи и модифицировать иерархические системы.
А ORM и NoSQL являются семейством баз данных, которые предназначены для работы на определенном языке хранения структурированной и разобщенной информации.
Инструменты разработки
Чем пользуется мидл-разработчик:
Участие в проектах и командной работе
Мидл не может работать один, так как он не способен обеспечить поддержку проекта в одиночку. У него для этого просто не хватит опыта, а еще времени и сил. Да, есть специалисты, которые предпочитаю единолично вести проект, но это сеньоры с большим опытом, физическими и эмоциональными ресурсами для работы, таких не очень немного.
Участие в крупных проектах положительно сказывается на опыте не только с точки зрения освоения навыков, но и получения опыта работы в большой команде. Специалист в процессе взаимодействия с коллегами будет изучать их принципы и техники работы, что очень пригодится в будущем.
Мидл должен уметь делегировать задачи и при этом присматривать за джуном. Не обязательно его опекать, но при этом необходимо периодически назначать совместную работу, чтобы провести отладку кода и дать обратную связь.То же самое происходит с мидлом и сеньором.
Управление временем и задачами
Один из главных скилов, которые необходимо заработать еще до того, как стать мидлом, научиться грамотно распределять свое время, расставлять задачи по приоритетам. Для этого в первую очередь обращать внимание на то, как и в какое время суток комфортнее работать. Многие айтишники предпочитают разбивать работу на два этапа: утро и вечер. В первой половине дня выполняются самые сложные и срочные задачи, днем есть свободное время, а вечером – самые простые задачи, которые решаются буквально за час-полтора. Это позволяет не выгорать и сохранять рабочий настрой.
Если в команде есть джуны, то придется научиться делегировать им работу. Для тех, кто страдает от повышенного перфекционизма и гиперответственности, такой подход – настоящая пытка, но ничего не поделаешь, с этим надо смириться, потому что тащить всю работу на себе невозможно.
Развитие личных и мягких навыков
Личностные и мягкие навыки, которые помогут в работе:
Подготовка к собеседованию
Как подготовиться к техническому интервью? Никак. К нему невозможно подготовиться, потому что неизвестно, как будет проводить интервьюирование, кто его будет проводить и в каком настроении он будет. Все, что зависит от разработчика – его знания. Если они в порядке, то волноваться не стоит.
Что должно быть в резюме:
Путь к middle разработчику – долгосрочный процесс
Чтобы стать middle разработчиком, нужно быть готовым к тому, что на это уйдет минимум 3-4 года. Это абсолютно нормальный срок. В него входит обучение на первых этапах, освоение специальности на должности джуна, а затем повышение до мидла.
Помните о том, что повышение в этом вопросе – это не эфемерное понятие, которое ничем нельзя измерить. Повышение подразумевает освоение четкого набора навыков и инструментария для работы, а также увеличение уровня ответственности.
Как стать middle разработчиком? Начать изучать языки программирования, постоянно совершенствовать свои навыки и быть готовым к большой ответственности.
Ирина Романова
Эксперт в теме «Высшее образование»
В «EduNetwork» отвечает за: обзоры вузов и колледжей, актуальную информацию о требованиях к поступлению, советы о том, как лучше подготовиться к вступительным испытаниям.
Пройди тест, получи свою идеальную подборку и полезные материалы для поступающих от Edunetwork