Куда пойти, когда только выучил Python: советы начинающему специалисту
Python любят начинающие, потому что его относительно легко изучить. Существует множество учебников, ресурсов и курсов. Плюс большой выбор библиотек и фреймворков. Потом все эти знания становятся востребованными во многих сферах. Но перед джунами встаёт вопрос: где искать вакансии, если знать только Python и ничего больше. Мы попытались разобраться, достаточно ли базы для трудоустройства, и что придётся навёрстывать.
Согласно рейтингу TIOBE, Python — востребованный язык программирования: в 2022 году он обогнал по популярности даже C. Ведущие мировые компании: Google, Dropbox, Netflix, Reddit, Amazon, Uber, NASA, Spotify — используют его для своих разработок.
На практике Python применяется в разных сферах:
- разработке игр и мобильных приложений,
- веб-разработке, в первую очередь для серверной части сайта при помощи фреймворков Django и Flask,
- разработке визуальных интерфейсов — для этого подходят дополнительные графические библиотеки Dabo и PythonCard,
- автоматизации бизнес-процессов с помощью небольших скриптов для стандартных процедур,
- сложных математических расчётов с помощью расширения NumPy,
- работе с базами данных, в том числе для анализа и визуализации данных,
- автоматизированном тестировании в сочетании с Selenium WebDriver,
- технологиях искусственного интеллекта и машинного обучения с дополнительными библиотеками TensorFlow и scikit-learn.
Открытый код, бесплатный доступ, возможность одинаково эффективно работать на Linux, Windows и macOS — важные аргументы в пользу Python. Он прост для изучения, но в нём есть ряд особенностей, которых в большинстве других распространённых языков нет: отступы вместо фигурных скобок, удобный, но нетипичный синтаксис генераторов списков, динамическая типизация (отличающаяся от таковой в JS). Если начинать с Python, а потом осваивать другие языки, лучше быть к этому всему морально готовым.
Я использовал Python для исследования безопасности сайтов и обработки файлов. Сейчас основная сфера его применения — написание скриптов для охоты на новые вирусы, эмуляция сетевого поведения вирусов и извлечение из них информации. Параллельно мне оказываются нужны HTTP, JSON, XML: эти технологии я использую постоянно.
Человек, только что научившийся писать код на Python, может попробовать себя в роли бэкенд-разработчика, Django-разработчика (но для этого надо знать Django), углубиться в анализ данных и data science. Один мой бывший коллега ушёл в геймдев, где использовал Python для простых математических расчётов: мы шутили, что он два и два складывает на питоне за приличную зарплату.
Начинающему специалисту я бы посоветовал изучить основы работы с сетью в Python (модуль Requests) и JSON (модуль json). А ещё type hints — при грамотном применении позволяет ловить хитрые ошибки.
Владимир Мартьянов, вирус-аналитик, Белград
Для изучения языка программирования можно выбрать курсы или высшее образование по специальности «Прикладная информатика». В вузах существуют бесплатные бюджетные места, а стоимость года коммерческого обучения может превышать 300 000 рублей.
Что нужно знать: мнение преподавателей
Для успешного применения Python на практике необходимо осваивать смежные технологии. Их выбор зависит от того, в какую сферу деятельности хочет погрузиться программист. Если он хочет освоить анализ данных, потребуются R, NumPy и сопутствующие пакеты. Если веб-программирование — HTML и CSS, Django и хотя бы на базовом уровне JavaScript: это облегчит коммуникацию с фронтендерами. В разработке прикладных приложений требуются графические библиотеки, чтобы делать интерфейсы. Например, TKinter или Qt, и разные библиотеки самого Python.
Python — язык широкого применения. У него много дополнительных библиотек, поэтому его можно применять при разработке прикладных программ, решать задачи обработки естественного языка, выполнять анализ данных. Особенно хорош Python при работе с текстовыми данными, в том числе большими. Ещё одно достоинство Python — низкий порог вхождения. Но язык программирования нельзя выучить, можно научиться писать на нём. На первых порах стоит разобраться с основными конструкциями языка и составлением алгоритмов. После этого всё зависит от конкретных задач.
Екатерина Латухина, старший преподаватель кафедры информатики, Архангельск
Чтобы полноценно работать в ИТ, надо ещё кучу всего знать дополнительно к Python: как минимум, владеть фреймворками, старейший и самый известный — Django. Начинающему специалисту логичнее всего развиваться в сторону анализа данных, хотя некоторые и идут в бэкенд. Поначалу придётся работать за еду на стажёрской позиции, потом в процессе работы достичь уровня джуниора. Младшему аналитику, помимо Python, необходимо знать основы архитектуры баз данных и SQL, математической статистики и теории вероятностей, нелишним будет владение R.
Светлана Нерадова, частный преподаватель математики и информатики, Москва
Что нужно делать: мнение разработчиков
За изучение Python берутся люди с опытом работы в сферах, далёких от программирования, и желанием переквалифицироваться в айтишники. Шансы на трудоустройство высокие: знание Python требуются в 5,4% вакансий в ИТ-сфере. Но карьерный рост и хороший доход — вопрос времени. Зарплата специалистов с опытом работы от трёх лет в два раза превышает оклад инженеров без опыта. Учиться придётся много и постоянно, причём не столько по книгам и мануалам, сколько уже на конкретных проектах.
Я ландшафтный архитектор, работаю ведущим инженером-проектировщиком в компании, которая занимается парками и общественными пространствами.
Учиться кодить я начал три года назад для личного проекта — онлайн-сервиса по подбору растений для ландшафтного дизайна. Ландшафтники до сих пор пользуются бумажными каталогами, а я захотел сделать удобный инструмент. Чтобы сайт на WordPress с кучей плагинов работал и не разваливался, я стал разбираться в HTML, CSS, JS. В итоге понял, что на готовых решениях без знания бэкенда далеко не уйти, и начал учить Python.
Прошёл несколько онлайн-курсов и стал тренироваться на мелких задачках: написал парсер, который собирает информацию с сайтов питомников растений, чтобы потом я мог добавить её в свой каталог. В порядке эксперимента написал бота, который торговал на криптобирже и отправлял мне отчёты в телеграм. Бот проработал неделю, принёс мне 15 рублей 38 копеек. Я пришёл к выводу, что эксперимент теоретически удался, а рисковать нормальными деньгами я пока не буду.
Но понял, что программирование интересует меня больше, чем проектирование, и решил сменить профессию. Думаю устроиться на джуниорскую позицию бэкенд-разработчика и набираться опыта уже на рабочем месте. В деньгах, конечно, на первых порах потеряю, но я к этому готов.
Сергей Иноземцев, архитектор, Хургада
Начинающий специалист может попробовать себя на стажёрской или джуниорской позиции как QA, аналитик данных или разработчик. Зарплата начинающего питониста — от 70 тысяч рублей. Для стажёрских вакансий цифра может быть и 30–40 тысяч рублей, однако по мере роста опыта и умений она будет расти и составит 250–300 тысяч для опытного специалиста. Зарплаты в ИТ не меняются в худшую сторону даже в условиях кризиса, а 22% сотрудников компаний увеличили доход.
Python никогда не был моим основным языком программирования, но я с ним работал. В компании, занимающейся исследованиями рынка, я использовал его для парсинга соцсетей: надо было получать посты и извлекать из них ключевые слова. В нескольких букмекерских конторах Python применял для сбора статистики. Когда я столкнулся с Python, у меня за плечами был вуз и опыт. Так что я просто читал мануалы, если чего-то не понимал.
Начинающему специалисту рекомендую изучить принципы и навыки именно программирования как такового. Технологии потом добавятся. Я в профессии 12 лет, и за это время та же веб-разработка полностью обновилась дважды.
Георгий Комаров, разработчик C#, Москва
После базового курса Python реально устроиться стажером или джуниором, выполнять учебные проекты для стартового портфолио. Но чтобы стать полноценным специалистом, необходимо сочетать язык программирования с чем-то ещё и постоянно совершенствовать свои знания, но в ИТ это давно норма. Чтобы Python превратился в профессию, важно определиться с конкретной сферой применения и развиваться в ней.
Поделитесь историями вашего знакомства с Python в комментариях.
Python: фриланс для начинающих, первые шаги на бирже удаленной работы
Чтобы начать фриланс на Python нужно обладать знаниями, которые можно уже продавать. Но где та грань, когда уже можно заходить во фриланс на Python? Этот вопрос мучает всех начинающих фрилансеров.
Многие ставят себе такую «планку для старта» : когда буду уверен/уверена, что знаю Python на 100%, ну хотя бы на 99%, то сразу пойду во фриланс и начну зарабатывать большие деньги. Такого не будет никогда. В смысле , вы никогда не будете знать Python на 100%. Чем больше вы будете изучать возможности этого языка, тем больше вы будете понимать, что вам еще очень многое нужно выучить. А еще печальнее для вас станет осознание того , что есть люди , которые больше вас знают Python, и поэтому перед ними больше открыто возможностей для заработка . Вы будете изучать то, что знают эти специалисты, считая , что это «потолок», но изучив , вы найдете других специалистов для ориентира, которые знают больше. В общем, эта «гонка» будет продолжаться бесконечно. Хотя бы потому , что сам Python постоянно развивается и обрастает новыми возможностями и инструментами. Пока вы будете изучать одни его возможности, в это время будут появляться другие.
Ну , и когда же начинать , спросите вы. Вы не поверите, но во фриланс на Python нужно заходить в тот момент, когда вы начали его изучать и уже написали свой первый небольшой скрипт из 5 строчек кода (5 строчек кода — это условность!).Так устроен мир программирования, что на специалиста любого уровня можно найти работу во фрилансе.
На практике это происходит примерно так. Вы только начали изучать Python . Идете на биржу фриланса и видите условный заказ «Написать бота для Телеграм за 1000 р».
– О, первая 1000 р!,- думаете вы, оставляете заявку и получаете этот заказ.
В этот момент вас просто интересует получение опыта, плюс, возможность заработать небольшие деньги. Сделали вы таких 10-20 ботов, подучились, набрались опыта и понимаете, что такие боты стоят 3000 р, а не 1000. И за 1000 вы их не согласны делать, потому что вы стали опытней и берете уже проекты по 5000 р по веб-разработке или работе с базами данных. Потом проходит время , и вы увлеклись программированием на Python для нейросетей, а там и проекты крупнее , и зарплата в них больше , и вас вообще не интересует создание ботов за 3000 р , а тем более – за 1000. Вам подавай проекты за 50 000 р , и они будут! И вы будете в них работать. Но в это время кто-то другой только начал изучать Python , зашел на фриланс-биржу , видит условный заказ «Написать бота для Телеграм за 1000 рублей» и с радостью берет подобный заказ. Примерно так и происходит круговорот специалистов в программировании. В любой точке вашего изучения Python будут те, кто знает больше вас и берет проекты сложнее и дороже, но так же будут те, кто знает меньше вас и берет проекты проще и дешевле.
Заключение
Нужно вынести простую мысль: фриланс на Python открыт на любом уровне ваших навыков. Начинайте поиск работы с теми знаниями, что имеете, потом наращивайте свои знания , переходите на более сложные и высокооплачиваемые проекты.
Мы будем очень благодарны
если под понравившемся материалом Вы нажмёте одну из кнопок социальных сетей и поделитесь с друзьями.