Путь программиста: от джуниора до сеньора

0
3968
views

Путь от джуниора до сеньора

Очень многих талантливых программистов работодатели замечают еще в годы студенчества или через некоторое время после получения диплома. В случае если эта вера в потенциал оказывается ненапрасной, и у человека есть мотивация к профессиональному развитию, компания через некоторое время получит отличного специалиста, знакомого со всеми нюансами задач, проектов и подходов.

Обычно Junior-разработчики становятся мидлами в течение двух лет. По прошествии еще двух или трех лет, они уже работают сеньорами. У наиболее талантливых получается пройти весь этот путь еще быстрее. В этой статье мы хотим обсудить основные нюансы устройства на работу джуниоров. Поговорим о том, чем отличается работа в аутсорсе и в продуктовой компании, а также обсудим, как начинающему программисту закрепиться в большом коллективе разработчиков.

Образование

Если вы хотите стать девелопером, важно получить высшее образование в ВУЗе, где есть хорошие кафедры информационных технологий. Образование обеспечит вас базовыми знаниями, а дальше уже все зависит от вас самих. Вам нужно будет постоянно развиваться, посещать лекции и курсы в интернете. Для начинающих программистов подходят Codecademy и Codeschool. Если у вас есть какая-то база, выбирайте Coursera, Edx или Udacity. Вам также может помочь поисковик по курсам Class Central.

Без высшего образования вы также можете надеяться на трудоустройство в крупной известной IT компании. Но на достижение этой цели уйдет больше времени. Чаще всего путь джуниоров-самоучек начинается на фрилансе и в небольших IT-проектах. HR-специалисты начинают проявлять интерес к их резюме после того, как там появится заметный опыт работы и портфолио с интересными проектами. Впрочем, не стоит отчаиваться. На самом деле, представители IT сферы активно ведут поиск талантливых джуниоров на фриланс-биржах. И здесь образование перестает быть решающим фактором.

В процессе обучения не стоит распыляться и пытаться выучить сразу 2 или 3 языка программирования. Выберите один и изучите его от корки до корки. После этого изучить другие языки не составит особого труда. Новичкам мы рекомендуем в качестве одного из первых языков Python. Он легок в освоении, и написание кода на нем не занимает слишком много времени.

Не стоит с самого начала подавать резюме на вакансии джуниора в крупные организации. Да и небольшие студии на вас вряд ли обратят внимание, пока вы не сможете показать хотя бы небольшое портфолио.  Поработайте в opensource-проектах или займитесь фрилансом, чтобы опробовать полученные знания на практике.

Качества, которыми должен обладать любой человек, который хочет стать хорошим девелопером:

  • умение мыслить логически,
  • высокая мотивация,
  • обязательная любовь к программированию,
  • настойчивость и терпение.

Это поможет и при обучении, и при поиске работы. Нередко программисты выбирают для себя компанию мечты, отправляют туда резюме и ходят на собеседования по нескольку раз. С каждой попыткой они разбираются в теме все больше и больше, исправляют ошибки, и нередко на очередной попытке становятся сотрудниками выбранной компании.

Как устроиться на работу

Аутсорс и продуктовые компании

В аутсорсинговых и продуктовых компаниях по-разному относятся к программистам. В компании, которая занимается аутсорсингом, программисты являются ресурсом, который приносит прибыль. Здесь вас ждут постоянно меняющиеся проекты и разнообразные задачи. Это позволяет получить обширный опыт. И прекрасно подходит тем, для кого программирование – это новые и новые вызовы.

Минус аутсорсинга: далеко не все работодатели в этой сфере склонны бережно растить кадры. Вполне возможно, что вы так и останетесь на уровне «реализации иконок и менюшек», при этом количество однотипной работы будет огромным. Итог – профессиональное выгорание. А потому при выборе аутсорса обязательно наведите справки об организации, в которую собрались трудоустраиваться.

Для продуктовой компании девелоперы – это основа коллектива, одна из его неотъемлемых частей его будущего. В такие компании обычно приходят надолго, чтобы поработать над действительно полезным продуктом. Здесь работодатели заинтересованы, чтобы каждый специалист знал продукт как можно лучше. Это помогает быстрому решению задач, снижению числа ошибок. Здесь использование программистов с низкой квалификацией «на износ» встречается крайне редко, так как этот подход вредит бизнесу.

Чего ждать от первого рабочего места

Конечно, от интерна или джуниора никто не ждет, что он с самого начала будет создавать код для главной страницы и при этом будет писать каждый день несколько тысяч строк кода. Также никто не будет «стоять над душой» новоиспеченного коллеги и требовать от него отчеты о работе, усложняя ему жизнь постоянными дедлайнами.

Не стоит сразу пытаться все досконально понять. Нужно «схватывать» новую информацию короткими порциями. В этом случае уже через несколько месяцев вы поймете суть проекта, какие технологии используются в его разработке, и как работает команда. Важно понимать, что чем дольше вы адаптируетесь к новым условиям, тем лучше вы разберетесь во всех нюансах.

С самого начала наставники будут поручать Junior-разработчику выполнение простых, но при этом нужных для проекта задач (заменить кнопку или поработать над способами взаимодействия элементов страницы). Со временем, когда человек начнет лучше вникать в суть проекта, ему будут доверять более сложные задания.

Многие пугаются, когда думают о том, что в процессе станут заметны недостатки их работы. Здесь проявляется «синдром самозванца»: программист, который только что пришел в команду, слишком переоценивает опыт и знания своих коллег, потому что пока плохо понимает суть работы.

Если человек хочет научиться хорошо писать код, ему нужно уметь брать ситуацию в свои руки. Джуниор слишком часто не хочет говорить, что у него не получается найти решение для задачи. Вам нужно найти способ, который поможет избавиться от проблемы. Можно посмотреть исходники или проверить, как более опытные люди решали аналогичную задачу до вас. Это можно сделать на StackOverflow или на GitHub. Однако не нужно заниматься решением одной и той же задачи слишком долго. Обращение к наставнику – это не так страшно, как вы могли бы подумать.

Постоянная учеба

Советы начинающим программистам

Если вы хотите найти работу и построить достойную карьеру, прислушайтесь к следующим рекомендациям:

  • Сначала попробуйте создать самостоятельно любой проект (вебсайт, интернет-магазин, приложения и прочее). Это поможет заполнить ваше резюме и научит вас применять полученные знания на практике. И только потом приступайте к поиску вакансий по специальности.
  • Учиться придется всегда. Помните, что вы пока не лучший в сфере информационных технологий. Однако это отнюдь не означает, что не нужно стремиться к вершине. Кроме того, постоянно появляются новые технологии, языки и продукты. Программист – это человек, который занимается самообразованием всю жизнь.
  • Не теряйте любопытство к профессии: осваивать новые технологии, изучать новые методы разработки и стараться применить их на практике. Постоянно ходите на стажировки и посещайте различные курсы, особенно если после них появится возможность трудоустройства.
  • Старайтесь активно общаться с коллегами, которые могут рассказать вам много полезной информации. Через них же можно выйти и на рекрутеров.
  • Когда вы выбираете компанию, в которой хотите работать, старайтесь быть более настойчивым: отправляйте резюме, звоните и пишите потенциальному работодателю.
  • Больше работайте. Вам нужно понять, что индустрия не стоит на месте, и вам нужно постоянно становиться лучше, если хотите попасть в хорошую компанию.
  • Если вы нашли работу мечты, не переставайте развиваться. Вам все также нужно интересоваться всем новым и изучать различные нюансы работы. Помните, что устройство на работу – это не вершина вашего пути наверх, а всего лишь маленький шаг для достижения успеха.

А что же дальше?

Многие программисты останавливаются в своем профессиональном развитии на этапе мидлов. Это не хорошо и не плохо. В любой сфере нужны люди, которые будут скрупулезно заниматься деталями проекта, выполняя важную и нужную работу.

Но если вы – талантливы и амбициозны, и заниматься «только кодингом» всю жизнь вам не хочется, придется приложить еще больше стараний в рамках самообразования. Ведь уровень сеньора – это не просто опыт и знание какого-то количества языков программирования. Это умение находить нестандартные решения, глубокие знания математики (поверьте, в высшей математике кроется столько готовых решений в сфере алгоритмизации сложных задач!), самодисциплина и умение работать в коллективе.

И здесь стоит вернуться к вопросу об образовании. Без диплома технического ВУЗа уровень сениора получить крайне сложно. Просто потому что у вас нет необходимой теоретической базы. А ведь разработчикам «высокого полета» нередко приходится решать инженерные, химические, другие технически сложные задачи. Впрочем, заочное или второе высшее образование никто не отменял. И многие работодатели только приветствуют подобные амбиции сотрудников.



ОСТАВЬТЕ ОТВЕТ

Please enter your comment!
Please enter your name here