Дорожная карта Python-разработчика 2023
Изучайте Python с нуля с нашей дорожной картой для начинающих питонистов. Пошаговый гайд для тех, кто любит структурированную информацию.
42К открытий54К показов
Если вы восхищаетесь Python так же, как и я, и задумываетесь о карьере Python-разработчика, вам понадобится наша дорожная карта по Python. В августе 2023 года этот ЯП возглавил рейтинг популярнейших языков согласно индексу TIOBE. Помимо Машинного / Глубокого обучения в этой вселенной существует еще много прекрасных высокооплачиваемых направлений.
В этой статье вы познакомитесь с актуальными в 2023 навыками для Python Developer и производных этой профессии. Будучи сторонником практического подхода, я считаю, что лучшего способа осилить целую дорожную карту, чем постепенно пробовать каждый из инструментов, нет. Плюс с ходом времени вы поймете, каким именно разработчиком хотите стать, и некоторые продукты изучать вообще не придется. Так что эта дорожная карта Python стоит воспринимать как некий универсальный листинг для новобранца, который играется со многим и так находит для себя самое интересное.
Основы Python
Старательно сокращаемый раздел знаний во всяческих онлайн-университетах, что ловят волну и хотят набрать как можно больше студентов на раскрученные факультеты. Что ж, если вы еще не определились, каким именно разработчиком хотите стать, упор рекомендую сделать именно на эту часть. Это пригодится и на собеседовании Full Stack Python Developer, и DevOps и Data Scientist.
С годами, когда вы обретете свободу в обращении с этим языком, то будете с ощущением легкой ностальгии возвращаться к вечно актуальным основам, щелкать их как орешки. Спустя семь лет разработки я все еще открываю для себя новое с каждым новым релизом языка и практикой.
Среды разработки
В мире питонических IDE все довольно просто: лидерство делят VSCode и PyCharm. За ними следует вереница универсальных сред разработки вроде Sublime. Здесь скучной документации почти не будет: развлекайтесь с красочными темами, тонко настраивайте среду под себя.
Деплой
Условно в эту категорию можно поместить инструменты, необходимые для развертывания и поддержания ваших программ:
- Git для грамотного хранения версий кода (так называемое версионирование)
- Docker для быстрой развертки копий программы на разных устройствах
- Kubernetes для непрерывного деплоя из репозитория для нескольких устройств
- Linux как типичная дешевая операционка для развертывания вашей программы
Фреймворки
Их, безусловно, больше двух, но для старта достаточно пощупать Django и Flask. И попутно задеть ngrok – утилиту для развертывания локальных серверов, хоть ее и отнесла в предыдущую категорию.
Сбор и хранение данных
Поскольку информации придается огромное значение, то и инструментария для ее сбора, обработки и хранения создали много. Углубляться в специализированные хранилища Big Data не станем на сей раз, это есть в роадмапе Data Science. Но общепринятые принципы хранения понимать стоит точно. А это SQL (Structured Query Language – “структурированный язык запросов”). Уставшие от этого застоявшегося в развитии стандарта разработчики создали NoSQL, однако огромная доля сервисов сегодня все равно придерживается первого варианта.
API
С этим разделом знаний знакомиться было непросто. Концепция программного интерфейса стала для меня прозрачной, только когда на работе без нее стало не обойтись. Если вы когда-нибудь собирали ботов в nocode-конструкторах, то наверняка задумывались, как извлекать логи разговоров. С этим и помогает API.
К примеру, в моей компании одного из ботов держат на конструкторе Aimylogic, из которого логи отдает Aimylogic Reporter API.
Боты
Чат-ботов считают новой вехой в развитии интерфейсов: вместо того, чтобы бродить по веб-страницам и заполнять формы, мы можем поболтать в мессенджере с виртуальным ассистентом. Это еще и упрощает обращение с системами: диалог воспринимается проще, чем GUI с неизвестным уровнем сложности. Так что эта категория навыка плотно обосновалась в гайдах и для других языков, вроде JavaScript.
Чтобы создать своего Telegram-бота на Python, вы можете использовать библиотеки вроде aiogram. Познакомившись с одной, вам будет просто освоить и следующую: все они опираются на API мессенджеров вроде Telegram.
Тестирование
Эту рубрику вообще легко опустить, если вы нацелились в мир Data Science. Однако в будущем это понадобится и MLOps – разработчику, непрерывно совершенствующему ПО на базе Machine Learning, так что пройтись по основам тестов стоит. Для новичков отлично подойдет библиотека selenium – наглядный инструмент для автоматизации веб-серфинга. Попробуйте собрать свой UI-тест на selenium, как в этой статье, и для универсального старта этого будет предостаточно.
Data Science
В целом переход на должность дата-сайентиста часто рассматривается как следующая стадия развития Python-разработчика. Эта крупная ветка заслуживает отдельной дорожной карты по Data Science.
Заключение
Какой бы путь вы ни избрали, главное – искать любимое. Тогда можно пережить и невысокую зарплату джуниора, и сваливание на разработчика непомерного числа задач, и плохое качество ТЗ. В первые пару лет программисты часто скачут с проекта на проект, активно берутся за стартапы и некоммерческие проекты. Но называть их job hoppers (“прыгающими с работы на работу”) не стоит, ведь именно на этом этапе они решают, какую специальность выбрать, а для этого нужно перелопатить сотни страниц документации, горы тредов на StackOverflow и даже разобраться со своим внутренним запросом к себе как профессионалу. Детей в 17-18 лет перед университетом вынуждают выбрать профессию на всю жизнь, а с выбором “Каким разработчиком хочу стать?” задача точно такая же: только перепробовав, определитесь.
42К открытий54К показов