Спрос и предложение
Python — хороший. Он подходит как для маленьких проектов, так и крупной продуктовой разработки.
На нем пишут в Google, Facebook, Netflix, Quora, Reddit и других компаниях; на нём переписывают существующие приложения и сайты — этот язык востребован и распространён.
Почему бы и вам не писать на Python в Google, Facebook или в Яндексе?
Практикум
Отлично. И что же вы хотите писать? Ведь «разработчик на Python» — это как «работа в IT»: не говорит ни о чём.
Сергей
Как так «что писать»? Ну... что-нибудь!
Python — это не специальность, а навык, который применяется в разных профессиях. На рынке вакансий спрос на питонистов распределяется примерно так:
- 50 % вакансий — веб-разработчики, пишущие как простые сайты, так и сложные высоконагруженные системы.
- 16 % — работа с данными: аналитики, инженеры и Data Scientist'ы.
- 14 % — специалисты по тестированию и QA инженеры, они автоматизируют тестирование с помощью Python и Java.
- 13% - DevOps (администраторы, которые знают, чего хотят разработчики) и системные администраторы. DevOps по популярности мало уступает Data Science, рынку нужны специалисты на стыке разработки и администрирования.
- 5% - инженеры и знатоки встроенного ПО. Больше hardware и железок, робототехники и устройств для умного дома.
- 2 % - HelpDesk, Code Review, реверс-инжиниринг и другие редкие звери.
Обнаружили незнакомое слово или профессию? Google it!
Сергей
Один язык и столько применений!
Практикум
Это точно. И все эти пути вам открыты.
Python — лишь один из инструментов, который поможет выстроить карьеру. Присоединяем другие инструменты и навыки — и получаем специальность.
Например, знание определённых фреймворков и библиотек или интерес к ним может определить ваше направление поиска. Если вам интересны Flask и Django — ищите вакансии в веб-разработке, если вам нравится работать с Pandas, Numpy, Matplotlib — вам подойдёт работа в аналитике и в Data Sciense.
Иногда Python имеет прикладное значение: помогает автоматизировать (pytest — для тестов) или осуществлять непрерывную интеграцию и развертывание ПО (СI/CD практики у DevOps-инженеров).
Из вашего персонального набора инструментов, практик и навыков складывается ваш выбор: Python — это основание, к которому добавляются те технологии, которые вас интересуют. Примерь результат к рынку — и вы найдёте подходящие профессии и сможете определить, какие дополнительные навыки вам потребуются для получения работы.
Сергей
Веб-разработчики самые востребованные, 50% вакансий — для них!!!
Стоит искать работу в этом направлении.
Практикум
Необязательно. Вы освоили Django, но это не означает, что выбор сразу предопределён. Есть и другие варианты.
Практикум
Изучите спрос на Python-специалистов: вариантов сильно больше, чем только веб и backend-разработка.
После курса Python-разработки люди устраиваются не только backend-разработчиками, но и инженерами данных (Data Engineer), а бывшие системные администраторы становятся DevOps-специалистами. Для таких людей наш учебный курс — это очередная ступенька в карьере.
Сергей
То есть даже на старте карьеры можно выбирать?!
Практикум
Конечно: можно и нужно! Это не значит, что работа найдётся сама собой. Возможно, придётся приобретать дополнительные навыки или развивать имеющиеся.
Слон первый: рынок труда
Данные о рынке труда — самая ценная информация для трудоустройства. Знание рынка помогает видеть широкую картину и открывает новые перспективы. На рынке появляется множество новых профессий на стыке разных направлений, о некоторых профессиях, которые подходят вам больше всего, вы могли не знать или ещё не успели задуматься (например, про DevOps или Data Engineer).
Если вы знаете рынок — то понимаете, какими путями можно построить собственную карьеру и какие навыки и компетенции нужно добирать для получения работы. Также становится понятно, как презентовать себя и получить более выгодное предложение о работе.
Сергей
О некоторых профессиях я впервые слышу!
Практикум
Вбейте в поисковик название профессии и узнайте, чем занимаются эти диковинные специалисты.
«Много вакансий» не означает «легко найти хорошую работу»
Больше всего вакансий — в веб-разработке: всем нужны сайты — кофейне, что рядом с вашим домом; вон тому парню, который продаёт экипировку для походов; бабушки продают на своих сайтах коллекции вышивки или вязанные шарфы.
Но это не означает, что работу будет найти легко. Веб стал сложнее, уже недостаточно написать <h1>Hello world!</h1>, чтобы вас взяли на работу. Большая конкуренция повысила требования к кандидатам.
Сергей
Моих навыков не хватит для веб-разработки? Девять месяцев — коту под хвост?!
Практикум
Навыков хватит. Но это не гарантирует, что вам понравится та работа, которую вам предложат.
Стоит задуматься о своих сильных сторонах и прокачивать их на максимум. Если вам нравится работа с данными — почему бы не заняться именно ими? Проходите дополнительные курсы, выполняйте задания, читайте — развивайте навыки.
Другой вариант: если соискатель занимался тестированием, а потом прошёл курс по Python, то при выборе «тестирование vs разработка» весы могут склониться в пользу тестирования: лучше быть высококвалифицированным тестировщиком, чем обычным разработчиком. Опыт и навыки тестировщика будут преимуществом перед другими кандидатами-питонистами. Возможно, такому соискателю стоит ещё немного расширить свои знания в области тестирования: для этого тоже есть курсы, сообщества и учебные проекты.
Сергей
Ок, горизонт становится шире.
Практикум
Да! Горизонт шире, если ориентироваться на свои навыки и интересы, полученные не только во время учёбы, но и приобретённые раньше, в течение всей жизни.
Навыки идеального соискателя
Все навыки и компетенции, которыми обладаете, можно называть одним термином — hard skills.
Практикум
Дословно — да. Но если точнее — это «профессиональные навыки», которые поддаются оценке со стороны. Хардам можно обучиться — именно этим вы и заняты на курсе по backend.
Мы подсчитали и оценили востребованность hard skills. Получился универсальный пакет требований.
В активе у идеального разработчика:
- знание языка программирования и фреймворков
- понимание работы веб-приложений. Работа с веб-сервером
- SQL и работа с базами данных
- Linux (в большинстве вакансий)
- Git
- понимание работы компьютерных сетей и основных сетевых протоколов.
Дословно — да. Но если точнее — это «профессиональные навыки», которые поддаются оценке со стороны. Хардам можно обучиться — именно этим вы и заняты на курсе по backend.
Сергей
Это довольно стандартный набор. Его достаточно?
Практикум
Если бы работодатель сравнивал соискателей только по хардам, выбрать специалиста было бы трудно — вокруг много одинаковых кандидатов. И кого брать?
Сергей
Меня, конечно! Но как они это поймут?
Практикум
Работодатели оценивают соискателя не только по профессиональным навыкам, но и по его soft skills.
Сергей
На курсе что-то было про софты, да, я помню! Соня, Коля со своим дзен...
Практикум
Точно. Но теперь вместо Коли — рынок.
Hard skills очень важны для кандидата при поиске работы. Но нельзя описать разработчика лишь только набором инструментов и технологий, которыми он владеет. Важно учитывать совместимость команды и потенциального кандидата. И здесь помогут другие качества — soft skills.
Soft skills, мягкие навыки
Софт-скиллы помогают работодателям описать идеального, по их мнению, кандидата. Компании готовы взять сотрудника при недостатках в hard skills, если соискатель подходит по ценностям и мягким навыкам. А нарастить профессиональные компетенции можно и в процессе работы.
В вакансиях работодатели часто рассказывают о ценностях и о культуре компании, описывают команду и ожидания от нового сотрудника.
Сергей
Я никогда не обращаю внимания на это описание в вакансиях.
Кажется, это просто шаблон, которым пользуются для придания солидности вакансии.
Практикум
Нет, требования по софт-скиллам — это не декор, они не менее важны, чем описание hard skills. Если вас спросят «почему вы выбрали именно нашу компанию?», а вы даже не прочли описание компании и пытаетесь угадать правильный ответ — рекрутер добавит вам в карму большой минус.
Сергей
Ну хорошо. А как же эти все описания «адекватный, стрессоустойчивый...»?
Практикум
Это распространённые софтовые требования, они часто встречаются в вакансиях и тоже важны.
Каких же софтов хотят от кандидата работодатели и что они подразумевают под этими требованиями?
Адекватность кандидата — это относительное понятие, уровень адекватности отсчитывается от адекватности руководителя. Адекватность — это соответствие вашего представления о работе представлениям руководителя; ощущение, что вы можете работать с ним на одной волне и ладить с коллегами, не устраивая проблем на пустом месте.
Самообучаемость — толкование этого термина в вакансии напрямую зависит от ресурсов компании. Возможно, работодатель ожидает от кандидата, что тот разберётся во всем самостоятельно и без наставника. А может быть — компания за свой счёт готова отправить сотрудника на дополнительное обучение, но попотеть всё равно придётся.
Осознанность также важна для кандидата. Осознанный выбор профессии помогает не только найти подходящую работу, но и компании не промахнуться с выбором сотрудника. Один из страхов работодателей при найме джунов — потратить много времени на отбор, чтобы в итоге сотрудник ушёл через несколько недель по причине "не моё это всё".
Ответственность подразумевает, что кандидат готов брать на себя рабочие задачи и доводить их до конца, а коллеги смогут положиться на новичка и не будут опасаться работать с ним в команде.
Сергей
То есть это всё не для красоты?
Практикум
Да. Работодателю важно, чтобы новый сотрудник вписался в коллектив: это повлияет на результат работы команды, а возможно — и всей компании.
Собираем уникальный набор. Что там подходящего на рынке?
Вы уникальны: ваш собственный набор из hard- и soft skills описывает и позиционирует вас на рынке трудоустройства. Не всякая работа подойдёт именно вам, и вы подходите не для любой работы. Выбирайте вакансии по своим запросам, а не по числу предложений или уровню конкуренции.
Зачем писать веб-приложения, если хочется программировать железо или раскидывать микросервисы по контейнерам и прикручивать мониторинг? Занимайтесь тем, что вам действительно нравится — и вы станете самым востребованным бутербродом на рынке.
Задание
Кандидат знает Python, разбирается в видах баз данных и хорошо работает с SQL, осваивает Linux как продвинутый пользователь. Ему интересен анализ массивов данных для выдвижения и проверки гипотез. Он смотрит вакансии на hh.ru и думает: «Куда податься?».