Перейти к содержимому

Что должен знать джуниор с

  • автор:

17 вопросов джуну: что должен знать Junior-разработчик

Что должен знать Junior-разработчик и не завышены ли требования? Разобрали популярные вопросы с собеседований, разделив их на hard и soft skills.

Как считаете, завышены ли сегодня требования к Junior-разработчикам?
В пределах нормы
Они даже занижены

Что должен знать Junior-разработчик, чтобы получить должность или удержаться на уже «завоёванной» позиции?

Джун — это уже пусть и младший, но специалист. Подразумевается, что он самостоятельно умеет писать код, может справиться с простыми задачами сам, а со средними по сложности задачами — под присмотром ментора.

Кто-то говорит, что требования завышены, и в 2020 году младший программист должен знать то, что знал Middle в нулевых. Кто-то парирует аргументами о росте конкуренции, сложности задач и, соответственно, требований.

Что касается технических требований к джунам, то в последние годы они действительно выросли. Профессия программиста стала доступнее из-за курсов, и рынок переполнился начинающими разработчиками. Поэтому компании начали выставлять определённые требования, чтобы найти из общей массы тех, кто лучше других.Например, теперь на позицию начинающего front-end разработчика недостаточно просто знать JavaScript, HTML5/CSS3: нужны базовые знания одного из популярных фреймворков (React, Vue, Angular). Кажется, что со временем требования будут расти ещё сильнее.

Мы разобрались, что должен знать Junior-программист в 2020 году, и собрали общие вопросы с собеседований, по которым работодатели определяют, дотягивает кандидат до нужной планки или нет.

Hard skills

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

Где проходили обучение, участвовали ли в реальных проектах?

В Galileosky мы всегда обращаем внимание на следующие моменты:опыт некоммерческих проектов, в основном небольших проектов, реализованных в рамках обучения;Pet-проекты, база работ на GitHub (само наличие проектов + качество кода);участие в хакатонах и конкурсах (особенно победы);посещение профильных мероприятий: митапов, конференций, лекций;сертификаты об окончании курсов или изучения технологий и пр.

Назовите принципы ООП. Старо как мир, но всё так же актуально. Держите шпаргалку по принципам ООП: там всё разложено по полочкам. Если вы хорошо разбираетесь в ООП, можете рассказать о своём опыте их применения на практике. Идеально, если вы также расскажете, почему те или иные принципы не стоит применять в некоторых ситуациях.

Какие алгоритмы сортировки вы знаете? Напишите код с использованием быстрой сортировки. Ох уж эти алгоритмы сортировки — понять бы, где они пригодятся в реальной жизни. А зачем вообще Junior-разработчику это знать? Тут всё просто: понимание принципов и гибкость мышления. Опять же, с помощью небольшого примера вы покажете, что владеете синтаксисом языка и умеете объяснять, что происходит в вашем коде.

Какие технологии вы знаете?

Для работы на реальном проекте мало знать сам язык программирования. Младшему разработчику необходим большой багаж знаний. Если мы рассматриваем разработчика на Java, кроме самого языка, необходимо иметь хотя бы начальные знания о Spring, базах данных, SQL, системах контроля версий. Это не означает глубокое изучение всех аспектов, но представление о работе с этими технологиями быть должно, даже если нет реальной практики. Зачастую разница между Middle- и Junior-разработчиком — это реальный опыт.[quote author_name=»Олег Лекшин» author_job=»начальник отдела разработки прикладного ПО «ИВК»»]Если говорить о знании конкретных технологий, от начинающего разработчика требуется опыт разработки на каком-то классическом языке программирования со строгой типизацией — подойдёт Java, C++, C#. При этом не так важно, на каком языке программирования придётся писать в будущем: синтаксис языка выучить легко, а вот понимание, что «можно» делать, а чего «нельзя» — нет.

Расскажите, с какими IDE вы работали. Достаточно назвать одну, но хорошо в ней разбираться: какие редакции есть, как подключить библиотеку к проекту, чем выбранная среда разработки лучше других, какие плагины вы использовали, etc. Это то, что должен знать Junior-разработчик.

Есть ли опыт работы с базами данных? Сколько нормальных форм вы знаете и чем они отличаются? Знать, как обращаться к БД, нужно, а вот что касается нормальных форм — это, скорее, плюс, чем необходимость. Будет хорошо, если вы назовёте СУБД, с которыми работали, обозначите их ключевые особенности.

Также к навыкам стоит добавить SQL. Да, на SQL сейчас никто не пишет, но без SQL невозможно понимание логики работы СУБД.

У вас был свой проект? В чём заключалась задача и как вы её решали? Чтобы стать Junior-разработчиком, нужно знать теорию и применять её на практике. Разумеется, вы как джун уже должны были что-то писать, будь то на курсах или для себя. Перед собеседованием стоит разобрать один из самых сложных проектов, вспомнить, какие проблемы возникали в процессе работы над ним, и как вы их решали.

Какие методологии создания продукта вы знаете? Назовите несколько принципов Agile. Да, вам стоит почитать об Agile. Даже если вы твёрдо уверены, что никогда не столкнётесь с командной разработкой, поверьте — столкнётесь. Это не то, что обязательно знать Junior-разработчику, но будет плюсом, если вы разбираетесь.

Есть ли опыт работы с Git? Какой веб-сервис для хостинга проектов вы используете? Неважно, GitHub это, GitLab или BitBucket. Интервьюера интересует главное — разбираетесь ли вы в системе контроля версий.

Также вас могут попросить решить несколько несложных задач.

Минимальный испытательный набор состоит из трёх тестов.Во-первых, оценивается логическое мышление соискателя. Для этого человеку дают несколько достаточно простых задач, которые позволяют проверить, может ли кандидат выполнить обобщение или сделать выводы из поступившей информации.Во-вторых, смотрят, как кандидат усваивает информацию, как работает его внимание и память. Обычно перед разработчиком ставится задача из 5–6 вводных пунктов, после чего идёт обсуждение её решения. Кандидат должен резюмировать задачу, описать своё решение, а затем сделать выводы.В-третьих, по косвенным признакам, оценивается коммуникабельность кандидата — развитие его речевых навыков и способность работать в команде. Часто от соискателей на Junior-позицию требуется проактивность (её оценят, предложив несколько «поведенческих» задач) и скорость мышления.

Soft skills

Вы командный игрок? Коммуникативные навыки — одни из важнейших, и даже если вы разработчик-одиночка, акцентируйте внимание на том, что вы с удовольствием приобщитесь к командной работе.

Даже опытные разработчики могут ошибиться с оценкой сроков, но они знают, как с этим быть — сразу сообщают менеджеру, обращаются за помощью к коллегам. Джуниор с неразвитыми soft skills промолчит и будет пытаться решить вопрос самостоятельно, в результате ничего толком не сделает и только потратит время.

В удалённой работе гораздо большую роль начинают играть soft skills. Гибкие навыки — это не только умение общаться с коллегами, но и банальное уважение к коллегам, к примеру, в чатах — когда ты отмечаешь коллегу, дублируешь сообщение, которое могло потеряться, и закрепляешь важные ссылки на самом верху.

IT-сфера изменчива, постоянно появляются новые технологии. Готовы ли вы всё время учиться?

Все понимают, что у младшего разработчика нет большого опыта и, скорее всего, нет глубоких знаний фреймворков. Поэтому на собеседовании больше внимания уделяется его soft skills: насколько разработчик мотивирован, готов ли он обучаться.

Каков ваш уровень английского языка?

Для нас, в EPAM, важным фактором является также уровень английского языка — не ниже Intermediate, поскольку после обучения можно попасть на проект с распределённой командой, с разработчиками из других стран.

Кроме того, аутсорсинговые компании зачастую работают с иностранными заказчиками, организовывают с ними встречи и созвоны. И вообще, читать и писать документацию стоит на английском, да и на Stack Overflow лежит всё, что нужно знать Junior-разработчику. Поэтому перед собеседованием обязательно подтяните английский язык.

Умеете ли вы справляться со стрессом?

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

Если возникла проблема, как вы будете её решать? Это больше вопрос на самостоятельность, нежели на способы решения.

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

Можете ли вы оценить время выполнения задачи? Да, это то, что должен уметь Junior-разработчик уже с кое-каким опытом, но на стадии обучения вы должны были получить хотя бы базовый навык оценки сроков.

У нас сотрудники работают удалённо. Поэтому важно грамотно распределять время для решения задач, уметь сосредотачиваться, оценивать сроки и соблюдать их.

Что должен знать Junior-разработчик? Отвечают эксперты

Олег Власенко
заместитель генерального директора SimbirSoft

Говоря о необходимых навыках, сразу важно прочертить границу между джуном и стажёром, поскольку эти роли достаточно часто путают.

Стажёр — человек, который только учится, часто он не имеет опыта разработки. Со стажёрами мы в компании чаще всего имеем дело на наших стажировках, которые мы в разных форматах организовываем с 2012 года. Как правило, значительная часть их аудитории — это студенты без опыта работы. Конечно, если стажёр хорошо себя показывает, мы можем пригласить его на собеседование, а по итогам собеседования даже взять его в компанию, если есть надежда, что он за пару месяцев выйдет на уровень джуна. Но далеко не все стажёры так быстро дорастают до этого.

Тем временем джун — это уже пусть и младший, но специалист. Подразумевается, что он самостоятельно умеет писать код, может справиться с простыми задачами сам, а со средними по сложности задачами — под присмотром ментора. Соответственно, такой специалист обязан обладать уверенными знаниями как минимум одного языка и фреймворка. Да, его знания, скорее всего, не будут глубокими, но он должен знать основы. Значительная часть сил джуна уходит на освоение нового. Ведь чтобы стать мидлом и выйти на новый уровень оплаты своего труда, джуну придётся освоить несколько фреймворков пусть и поверхностно, глубоко изучить как минимум один фреймворк, возможно, подготовиться и сдать экзамен по сертификации, получить опыт в разных проектах. Соответственно, важнейшими soft skills для джуна (да и для любого ИТ-специалиста вообще) будут навыки самообучения, навыки и опыт решения любых проблем, самодисциплина и мотивация к обучению.

Если рассматривать hard skills, то, наверное, нужно упомянуть такие профессиональные навыки, как умение искать информацию в поисковых системах, знание средств коллективной разработки (Git и другие), знание IDE, языка и фреймворка.

Завышены ли требования к джунам? Уверен, нет. Всё проясняется, если разделить понятия стажёр и джун и рассматривать джунов, как младших специалистов, а не просто тех, кто начал учиться.

София Техажева
руководитель программ «Python-разработчик» и «Алгоритмы для разработчиков» в Яндекс.Практикуме

Junior-разработчику, как в принципе и любому специалисту в сфере ИТ, важны такие качества, как ответственность, стремление к профессиональному росту, умение управлять рабочим временем и работать в команде. Кроме того, от начинающих разработчиков дополнительно ждут умения быстро осваивать новый материал и вникать в суть задач.

Требования к hard skills будут зависеть от направления. Например, мы уже подробно рассказывали, что работодатели ждут от Junior-Python-разработчика. Для таких специалистов это чаще всего знание языка программирования Python, алгоритмов и структур данных, опыт работы с базами данных и фреймворками.

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

В технических навыках обычно требуется наличие какого-то (хотя бы учебного) опыта программирования, знакомство с основными инструментами, умение решать типовые задачи. Для получения даже этих навыков придётся постараться. Разработка имеет относительно высокий порог входа по сравнению с другими ИТ-профессиями, но планка по найму в последние годы, скорее, снижалась, чем наоборот.

Александр Махновский
руководитель отдела разработки Аванпост

По нашему опыту в последние годы требования к Junior-разработчикам у нетоповых компаний снизились. Связано это с кадровым голодом, вызванным, с одной стороны, ростом рынка, с другой, демографическим провалом девяностых–начала 2000-х.

В целом для джуна, планирующего работать в прикладной разработке, требования можно определить следующим образом:

  • Знать синтаксис языка, на котором предстоит работать.
  • Знать основу стандартной библиотеки языка и представлять её структуру в целом.
  • Понимать принципы работы технологической платформы и среды исполнения (например jvm).
  • Понимать принципы работы реляционных СУБД, иметь навыки работы с ними.
  • Знать основы веб-разработки.
  • Понимать, как в целом устроен мир: как работает сетевое взаимодействие, какая инфраструктура существует в интернет- и корпоративных сетях, понимать отличия парадигм программирования, скриптовых языков от компилируемых и т. д.
  • Уметь решать простые прикладные задачи, т. е. применять знания, перечисленные выше, с пользой.
  • Умение слушать, воспринимать постановку задач и пояснения, не упускать детали, но и не зацикливаться на них.
  • Способность и желание обучаться в процессе работы.
  • Умение задавать вопросы и в целом формулировать мысли.
  • Любознательность и стремление к развитию.
  • Ответственность.

Как правило, у всех ребят, приходящих к нам на собеседование, всё в порядке с основными хард-скиллами, учитывая, что они предварительно проверяются простейшим тестовым заданием.

Большинство же отклонений по результатам собеседования происходит по причине отсутствия практических навыков или критичных софт-скиллов, таких, как умение слушать.

Это не самые высокие требования: могу с уверенностью сказать, что 10-15 лет назад требования были значительно серьезней. Отрасль была менее лояльной к новичкам, готовность брать на работу, платить не самую низкую зарплату и учить была у единиц компаний. Сейчас же все, даже самые небольшие софтверные и не только компании, готовы вкладываться в обучение вчерашних студентов, несмотря на все сопутствующие риски. Всё, что нужно джуну сегодня, — общая адекватность и минимальные знания технологий.

Выводы

Мнения насчёт того, завышены требования к джунам или нет, очень разнятся. Но практически все эксперты сходятся в том, что Junior-разработчик должен знать о преимуществах и сферах применения выбранного языка или технологии, уметь работать с Git, знать основные алгоритмы, библиотеки и фреймворки в своей сфере, быть в курсе возможностей хотя бы одной IDE, знать английский не ниже уровня Intermediate и уметь работать в команде.

Как стать востребованным Junior программистом? Приходи учиться к нам!

История существования Direct Line насчитывает уже более двадцати лет, шестнадцать из которых мы посвятили разработке сайтов для компаний по всему миру. Мы хотим поделиться своим опытом, поэтому мы решили открыть DL Academy — место, где будут преподавать лучшие специалисты нашей компании. DL Academy предлагает офлайн курсы для программистов, обучаясь на которых вы узнаете все о сфере IT из первых рук, поработаете бок о бок с практикующими разработчиками и станете востребованным junior программистом. Выберете интересующую вас программу в DL Academy и освойте профессию, о которой давно мечтали.

логотип dl academy

Кто такие junior программисты и что они делают?

Если вы подписаны на группы Вконтакте, телеграм-каналы с вакансиями или хотя бы раз заходили на Headhunter в поисках работы, то наверняка видели объявления, в которых компании ищут junior developer или проще говоря младших программистов. Junior программист — это первая ступень в карьере IT специалиста. Следующий уровень развития специалиста — это middle developer, а за ним следует senior или старший программист. В этой статье мы подробно остановимся на том, кто такие джуны, сколько они зарабатывают и что должен уметь начинающий программист.

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

Джуны приходят в компании и работают там под присмотром и руководством более старших и опытных коллег и набивают руку на практических заданиях.

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

джуниор разработчик

Ключевые навыки, необходимые junior программисту

На самом деле, навыков и знаний, которыми необходимо обладать начинающему специалисту не так уж и много:

  • Язык или языки программирования. Чем больше вы умеете — тем лучше. Часто одного Java или PHP недостаточно для того, чтобы получить место в хорошей компании, однако надо с чего-то начинать и Pyton подойдет для новичков лучше всего. Это универсальный язык, который сейчас пользуется большим спросом, к тому же люди даже незнакомые с кодом смогут его освоить. DL Academy предлагает курсы для Frontend и Backend разработчиков, на которых в течении полугода вы будете изучать теорию и параллельно создавать проекты с использованием HTML, CSS, Python и других языков. После завершения программы у вас будет не только уверенная база знаний, но и практический опыт.
  • Придется разобраться в таких понятиях, как объектно-ориентированное программирование, функциональное программирование, шаблоны проектирования, принципы S.O.L.I.D. Это одни из наиболее главных концепций и основа, которая лежит в образовании программиста.
  • Английский язык. Не совсем очевидный, но абсолютный мастхэв для любого человека, который мечтает о карьере в IT. Во-первых, это основа языков программирования, а, во-вторых, сейчас многие проекты ведутся интернациональными командами, поэтому вполне вероятно, что вам придется общаться со своими коллегами именно на английском.
  • Последнее в списке, но не по значимости: умение и желание учиться, упорство и терпение. Не все будет получаться сразу, программирования это постоянный поиск и исправление своих ошибок. Многие люди, которые пытаются самостоятельно обучиться программированию сталкиваются с тем, что код, вроде бы написанный верно, не работает. У некоторых не хватает терпения и опыта для того, чтобы найти и осознать ошибку, и она забрасывают программирование, уверенные в том, что это не для них. Поэтому для начинающих лучше всего подходят офлайн курсы — там опытные специалисты быстро найдут проблему и доступно объяснят, что пошло не так. Это очень важно иметь поддержку практикующего профессионала, совместная работа поможет junior программисту быстрее освоить основные для работы навыки. На курсе по программированию от DL Academy с вами будут работать наши лучшие разработчики, проверять ваше домашнее задание и давать развернутые комментарии по вашим проектам.

Где найти работу начинающему программисту?

В первую очередь можно разместить свое резюме и откликаться на вакансии на таких площадках, как, например, HeadHunter или LinkedIn (если у вас все хорошо с английским). Также можно просматривать тематические телеграм-каналы и паблики Вконтакте. Будьте готовы предоставить свое резюме, а также укажите проекты, над которыми вы работали. Иногда junior программистов просят пройти тестовые задания, чтобы оценить их навыки, поэтому не удивляйтесь и не расстраивайтесь, работодатель просто хочет убедиться в том, что вы ему подходите.

Студентам DL Academy мы предлагаем уникальную возможность — начать свою карьеру в нашей международной компании Direct Line.

Этим могут воспользоваться только наши лучшие студенты, но если вы не вошли в их число, то не стоит расстраиваться, ведь обучение в DL Academy это не только знания, но и помощь с составлением резюме, подготовка к собеседованиям, а также специальная база подходящих вам вакансий. После обучения мы не оставляем джуна на произвол судьбы, а ведем его до самого момента трудоустройства.

Самое главное для человека, который мечтает о карьере в IT — это иметь мотивацию и желание постоянно изучать новое, ведь рынок информационных технологий непрерывно развивается и меняется. Если вы любознательный и увлеченный человек, то программирование станет для вас не только работой, но и увлечением на всю жизнь.

Что должен уметь junior в IT — главные требования к новичкам

На протяжении уже двух лет требования к джунам становятся всё жестче. IT, как отрасль, активно развивается — у специалистов растёт заработная плата, но вместе с этим увеличивается и конкуренция внутри сферы. Поэтому даже на старте многие сталкиваются с тем, что нужен либо опыт работы, либо углубленные знания. В статье мы расскажем о требованиях к junior в IT — что именно должен знать и уметь специалист.

Junior-программист или джун — это стартовая позиция для работника с минимальным опытом. Чтобы найти подходящую работу, нужно иметь не только hard, но и soft skills. Работодатель смотрит ещё и на портфолио, узнаёт про уровень образования. Forbes пишет, что в IT уменьшение числа вакансий с одновременным ростом кандидатов сильнее всего проявилось именно в сегменте начинающих специалистов. Джуны — дорогие кадры, которых надо учить и мотивировать. И вот, что требуют от такого сотрудника работодатели.

Начать карьеру в IT-сфере можно на онлайн-курсах: «Python-разработчик» от Bang Bang Education или «Разработчик на Python с гарантией трудоустройства» от Skypro.

Образование

Сложнее всего трудоустроиться тем, кто закончил онлайн-курсы за 2-3 месяца. Хоть при первоначальном просмотре резюме HR-специалист и не акцентирует внимание на образовании кандидата, но при сравнении его с другими потенциальными сотрудниками уровень образования уже играет значительную роль. Работодатели чаще отдают предпочтение джунам, имеющим высшее техническое образование. Это не значит, что если вы прошли онлайн-курс, можно даже не пробовать искать работу на эту позицию. Трудоустроиться можно и после окончания курса — возможно, не на junior, а на позицию стажёра.

Чаще всего в вакансиях не указывают желаемый уровень образования. Но в предложениях для Java и Python программистов начального уровня подготовки всё чаще мелькает фраза — «студент последних курсов или же выпускник технического вуза».

Кстати, некоторые онлайн-курсы предлагают трудоустройство. Например, «Профессия: Python-разработчик с гарантией трудоустройства» от ProductStar или «Python-разработчик с гарантией трудоустройства» от Eduson Academy.

Опыт работы

Логично предположить, что у junior-специалиста нет большого опыта работы. Современные реалии таковы, что на эту позицию берут соискателей, которые работали 1-2 года по выбранному направлению. Если вы ещё не успели нигде поработать, не стоит расстраиваться — некоторые компании рассматривают и джунов без опыта. Соотношение на рынке примерно 60 на 30% — то есть 60 процентов работодателей принимают на работу с опытом работы 1-2 года, а 30 процентов берут программистов на начальную позицию без опыта.

Кроме позиции junior есть ещё другой вариант — стажёр. Их чаще, чем джунов, устраивают без опыта. Но в крупных компаниях, например, Яндексе, даже на позицию стажёра иногда требуется опыт работы от 1 года до 3 лет.

Возраст

По исследованиям компании Zippia, считается, что средний возраст Junior Software разработчика в США составляет 39 лет. В нашей стране всё по-другому — специалисты сервиса «Мой круг» провели исследование рынка IT и пришли к выводу, что в России средний возраст соискателей на стартовую позицию — 20-22 года. Значит ли это, что на работу не берут тех, кто решил сменить сферу деятельности, например, в 35 лет? Нет. В большей части вакансий не указаны требования к возрасту, поэтому претендовать на вакантное место могут как студенты последних курсов в возрасте от 20 до 23 лет, так и те, кому за 30.

Hard skills

Профессиональные навыки, необходимые для работы в конкретной сфере, называют hard skills. Tutortop рассмотрит их в разрезе каждого из направлений.

Frontend-разработка

К Frontend относится видимая для пользователя сторона, например, интерфейс сайта. А фронтенд-разработчик создаёт пользовательский интерфейс для сайтов или приложений. Это работа с JavaScript, HTML и CSS. Чтобы претендовать на позицию джуна, нужно знать:

  • основы JavaScript;
  • основы HTML и CSS — прокачать эти навыки можно на курсе «Frontend-разработчик: расширенный курс» от Нетологии;
  • как работать с Git — системой для отслеживания изменений в файлах;
  • как использовать фреймворки и библиотеки, например, React;
  • основы работы с графическими редакторами;
  • зачем нужен протокол HTTP;
  • английский язык для чтения литературы и документов.

Backend-разработка

Если frontend — про работу с внешними данными, то backend-разработка нужна для создания и управления внутренними системами сайтов, выстраивания обмена данными. Считается, что это направление сложнее и объёмнее. Вот, что требуют от junior-специалиста:

  • владение одним из языков программирования (Java, PHP, Python, Go, C++);
  • знание HTML и CSS, умение верстать;
  • понимание, как устроены и работают сайты;
  • наличие базовых навыков программирования, работы с данными;
  • возможность работать с базами данных, чаще всего SQL — например, MySQL или Oracle;
  • понимание, как использовать систему контроля версий;
  • умение работать с GitHub и GitLab;
  • знание английского языка для чтения документации и общения с коллегами.

А узнать больше о Java можно на онлайн-обучении:

  • «Java-разработчик» от Логомашины
  • «Java-разработчик с нуля» от Нетологии
  • «Профессия: Java-разработчик с гарантией трудоустройства» от ProductStar

По сравнению с фронтенд-разработкой в вакансиях для бэкендов чаще встречаются более строгие требования к знанию английского языка. И ещё для позиции джуна не всегда достаточно знания только одного языка программирования — некоторые компании требуют владение ещё минимум одним из серверных языков.

Data Analyst

Аналитикой данных или Data Analyst занимается специалист, который собирает и анализирует большие массивы информации, а потом обрабатывает их и делает вывод. Работа Data Analyst в любой из компаний ценится высоко — ведь на основе этих выводов и формируются дальнейшие планы. Junior Data Analyst должен понимать:

  • как пользоваться Google Таблицами, Excel, Word;
  • основные моменты в работе с Python;
  • как писать запросы к базам данных SQL;
  • на основе чего создаются отчёты в BI системах;
  • как использовать методы статистического анализа в работе.

Data Scientist

Для обработки данных Data Scientist использует математические алгоритмы, программное обеспечение и те инструменты, которыми пользуются программисты для разработки. Если сравнивать работу с тем, что делает Data Analyst, то Data Scientist в этом плане чуть ближе к основам программирования и работы именно с технической стороной. От начинающего дата-сайентиста работодатель ждёт:

  • знаний алгоритмов и структуры данных;
  • умения писать код на Python и работать с фреймворками;
  • знаний математики и статистики;
  • владения инструментами для анализа данных — Hive, Kafka;
  • знаний технологий машинного обучения;
  • умения отображать полученные результаты и работать с программами для визуализации данных, например, Power BI.

Если вы хотите развиваться в направлении Data Scientist, начать всегда можно с прохождения курсов. Tutortop проанализировал множество курсов по этой тематике, сделал специальную подборку и сравнил онлайн-курсы по множеству показателей. Вот некоторые из этих курсов:

  • Data Scientist;
  • Аналитик данных;
  • Стань аналитиком данных.

DevOps-инженер

Перед DevOps-инженером стоит немало задач. Но прежде всего, он следит за всеми этапами создания продукта, например, игры или сайта, и делает так, чтобы эти этапы были скоординированы. Специалисту нужно разбираться в процессе разработки, инфраструктуре и жизненном цикле. Требования к джунам такие:

  • иметь опыт работы с одним из языков программирования;
  • знать цикл разработки и внедрения ПО;
  • уметь составлять запросы к базам данных;
  • понимать, как работают IP-сети;
  • уметь писать простые скрипты;
  • понимать, как развёртывать и администрировать кластеры;
  • знать английский язык на среднем уровне.

Кстати, в нашем блоге есть статья про профессию DevOps-инженера — в ней мы подробно рассказываем об обязанностях, плюсах и минусах, о том, как начать развиваться в этой сфере.

Soft skills

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

  • внимательность;
  • стрессоустойчивость;
  • умение работать в команде;
  • структурное мышление;
  • ответственность за результат;
  • коммуникабельность;
  • способность выполнять рутинную работу;
  • умение работать в режиме многозадачности;
  • профессионализм.

Хочу стать программистом!

Для тех, кто видит себя в роли программиста, на нашем сайте есть подходящие онлайн-курсы. Мы собрали подборку обучения от топовых школ и сравнили их по множеству показателей.

Карина Лебедева

Копирайтер. А ещё преподаватель английского языка, прямо сейчас переходящий в методиста образовательных программ в IT. Любит интернет-культуру, хороший кофе и смешные анекдоты.

Что нужно Junior’у, чтобы успешно устроиться

Не так давно я отвечал на Хабровопрос по поводу того, что нужно знать, чтобы устроиться после ВУЗа программистом, после чего мне был задан вопрос в личку, а также Вконтакте, а что же собственно нужно в подробностях.
В данной статье я постараюсь рассказать, что должен знать молодой специалист, который ищет работу. Я немного разбираюсь в данном вопросе, т.к. год назад, после 3 курса, задался проблемой трудоустройства и успешно нашел свое место, которое смог совмещать с учебой. И я все еще помню о чем разговаривал на собеседованиях (которых было мало, но они были успешными).
Сразу стоит отметить, что данная статья не подходит тем, чья цель работать исключительно в так называемых Major Players (Google, Yandex, Microsoft и т.п.).
Кому интересно — добро пожаловать под кат (под катом вакансии для Москвы и Казани из комментариев, а также предложение о стажировки для Питера).

Итак, Junior — это программист, который должен уметь и все и ничего одновременно.
Подробнее о каждом из утверждений.

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

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

Вроде ничего нового я не сказал, да и конкретики никакой нет, но ее и не может быть. Нет определенных общих требований для Junior’ов, есть конкретные требования на вакансию, можно поискать на hh.ru, там написано.

Теперь о вещах, которые помогут Вам найти свое место
Если Вы студент — значит похвастаться опытом работы не получится, а Ваши студенческие успехи вряд ли интересуют работодателя, если это конечно не супер-пупер достижения на олимпиадах, конкурсах и пр. Но Вам никто не мешает заниматься собственными проектами, о которых можно поговорить (я на собеседованиях на Junior’a почти все время рассказывал о своем проекте), это дает работодателю шанс понять, что хотя опыта коммерческой разработки нет — есть опыт работы над задачей, опыт формулировки задач, возможно опыт работы в команде, это ценится больше, чем курсовик по предмету «Программирование на C++» на 5 семестре.
Еще одним очень важным вопросом является — Алгоритмы и структуры данных. Так уж сложилось, что при устройстве на вакансию Junior’a многие компании готовы простить Вам незнание этих вещей, ведь ваша задача как Junior’а скорее всего, к сожалению, будет жарить код.

Вывод: пишите что-нибудь для себя, пишите полезные утилиты, пишите с друзьями, участвуйте в сторонних проектах. Такой опыт позволит Вам лучше узнать свой язык программирования, научиться писать лучше и понятней.

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

Успехов Вам в поисках.

P.S. И не повторяйте ошибок, когда пришел человек устраиваться летом на Junior C++ и не смог написать простого цикла, объясняя это «Лето ведь, забыл все».
P.P.S. Тут и тут неплохие, на мой взгляд, подборки литературы. Можно выбрать что-нибудь себе по душе.

UPD: Вот список предложенных в комментах вакансий
Москва: Если умеете linux/svn/php5/mysql/jquery/zend и не имеете большого опыта работы, то пишите kai, чтобы получить шанс устроится на работу в приличную компанию с именем.
Москва: Требования: PHP5 (умение не ООП, увы, приветствуется), MySQL (сложные пересечения, вложенные запросы), JS|jQuery.
Опыт не требуется, требуется умение разбираться в коде и чужих логиках, и наличие своей. Вакансий несколько.
Писать trijin
Казань: Достаточно основ PHP, Js и MySQL, остальному научим. Писать пользователю rednaxi или на мыло job@beboss.ru
Казань: Ищем человека: php, mysql, js, разумеется, знать сами основы: css и html.
Писать можно в личку пользователю ainuили в жабер (в личке есть)
Приглашения в опенсорс:
alexeygrigorev приглашает в jtalks.org — пишут на джаве движок для форумов, блогов и т.п. В основном участвуют Junior’ы.
Приглашения на стажировку:
Питер: Для тех, кому интересна стажировка в веб девелопменте (php, postgres, memcached, html5, мобильные приложения, и т.д.), приглашаем присоединиться к команде Дзен-мани (zenmoney.ru)
Стажировка подразумевает обучение на примере реальных задач по проекту. Условия очень простые: пока мы обучаем, и для вас и для нас это бесплатно. Как только вы начинаете делать какие-то вещи самостоятельно — мы начинаем платить стипендию. Если через 3-4 месяца вы набираете нужный уровень, возможно устройство в штат компании с зарплатой. Стипендия 10 тысяч в месяц, зарплата после стажировки будет зависеть от набранного уровня и за год может вырасти до 40-50 тысяч.
По занятости: мы готовы обеспечить задачами на 12 часов в сутки, тут, скорее, вопрос к вам. Нас больше интересует не время проведенное в офисе, а результат. Сможете учиться дома — отлично. Естественно, надо будет приезжать в офис, чтобы обсуждать задачи и проводить разбор решений.
Актуально только для Питера и пригорода. Пишите на anton.fedosin@gmail.com
От пользователя laflaf

  • работа
  • поиска работы
  • Junior
  • junior developer
  • молодой программист

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *