программист python история успеха
Как стать Python-разработчиком: история Алексея Курылева
В отличие от многих моих коллег я не был рожден программистом. Я был рожден музыкантом. Я не учился программировать в ВУЗе и до определенного времени даже и не собирался связывать свою жизнь с IT.
Зато меня всегда привлекала Москва, с ее широкими тротуарами, длинными набережными и огромными парками. Но оказавшись там, ты чувствуешь потребность в деньгах более чем в любом другом городе нашей удивительной родины. В то время мой старший брат снимал квартиру вместе с двумя программистами, работающими в каком-то банке. Так, в одной из кухонных бесед, я первый раз погрузился в мир Python. С того момента прошло еще немало времени перед тем как я устроился на первую работу в качестве Python-developer.
Первые шаги в программировании
Так вот, оказавшись в Москве, мне нужно было искать работу, так как долго жить в гостях я не мог. На тот момент моих навыков хватило только чтобы устроиться работать в техподдержку одной крупной и безнравственной компании. Я принимал заявки по телефону и ходил туда-сюда по длинным коридорам здания, чтобы подключать мышки к системным блокам, которые по очереди вылетали из гнезд у всех сотрудников офиса.
Именно там, понимая абсурдность происходящего, я и написал свою первую программу. В свободное от рутины время я изучал возможности языка и писал скрипты для системного администрирования. Старшие админы быстро заметили это и стали мне давать задания написать ту или иную программу, и я с удивлением для себя обнаружил, что даже с моим минимальным опытом программирую я лучше их и в этом могу быть им полезен.
Первая работа
На удивление, я никогда не работал junior-ом. Сразу в middle пошел. Но попытки устроиться младшим разработчиком у меня были. Я хорошо помню то собеседование.
А что дальше
В какой-то момент, устав от офисной жизни и работы админом, я скопил немного денег и на полгода уехал путешествовать в Индию. Ох, если бы я мог описать что это были за полгода, то не хватило бы и книги, не то что этой статьи. Вернувшись, я уже знал, что буду снова пробовать устроиться работать программистом, и на этот раз удача улыбнулась мне, да и я был куда лучше для этого готов. За полгода путешествий я очень-очень хорошо подтянул разговорный английский, что сейчас мне ежедневно помогает в общении с коллегами. Попасть в языковую среду оказалось куда эффективнее любых учебников (кстати тоже самое можно сказать и о программировании). Но прыгать туда лучше уже понимая основы, иначе те условия, в которых можно стать продвинутым, вы будете использовать для изучения азов.
Сейчас
А сейчас я работаю удаленно в одной международной компании и в этом есть свои плюсы! Только не подумайте, что я сейчас лежу на пляже с ноутбуком и наслаждаюсь жизнью по полной. Я все также много работаю и много устаю, но в офис ходить не нужно. Живу в Питере, иногда путешествую. Успел пожить в Португалии, в Италии, в Грузии, но не скажу, что я там как-то особо отдыхал. Организация путешествия накладывает много дополнительных сложностей, и в сочетании с работой это может быть в два раза тяжелее, чем работа из дома или офиса. Но увидеть можно очень много нового, красивого и интересного. И это явный плюс!
Менторство
А мое менторство началось очень забавным образом и без моего участия. Как-то раз я был в гостях у друга и случайно забыл у него книжку по Python и Django. А в следующий раз встретились мы только через год, и тогда он меня удивил. Говорит, а я теперь работаю программистом! Помнишь ты у меня книжку забыл, так вот я ее прочитал, сделал по ней свой сайт и недавно получил первую работу.
Позже мое менторство продолжилось тем, что я стал обучать одного своего друга. Несмотря на то, что он почти каждый день проводит на другой работе, наше дело идет очень быстро и хорошо. Первая работа программистом не за горами!
Как стать успешным Python разработчиком? Алексей Курылёв поделится опытом как с начинающими, так и с опытными программистами Нанять
Вопросы
Какой совет дашь новичкам, который редко встречается или считается необычным, спорным?
Вписывайтесь в любую движуху! Не упускайте ни одной возможности практиковаться! Будьте открыты всегда и к любым предложениям!
Как ты сохраняешь свои навыки актуальными? Как постоянно растёшь и становишься лучше как разработчик?
Ну, работа не позволяет становиться неактуальным. Каждый день приходится делать что-то новое. Ну, и читаю, конечно. Изучаю другие языки. Общаюсь с другими разработчиками. Разрабатываю в команде с друзьями разные веб-сервисы, без зарплаты, просто ради интереса. И отдыхаю побольше при возможности, это тоже необходимо, так саморазвитие идет легче и быстрее.
Топ 3 книжек для новичка
Фото рабочего стола
Об эффективности обучения у Алексея и остальных менторов mkdev мы рассказывали в цифрах подписчикам нашей рассылки. Получить отчёт об успехах наших учеников ты можешь, подписавшись через эту форму:
Моя история в IT: от системотехника до Python-разработчика
Авторизуйтесь
Моя история в IT: от системотехника до Python-разработчика
Мидл Python-разработчик, EPAM
Выбор пути: электростанции или разработка
Изначально я решил идти по стопам своего дедушки. Он был инженером на электростанциях — объездил весь мир, потому что таких знаний и навыков, как у него, ни у кого не было. Например, три года он работал в Ливии, строил самый крупный военный аэродром при Каддафи и пять лет работал в Индии, там строил электростанцию полностью, с нуля до запуска.
Я устроился в БГУИР на специальность «Радиоэлектронные системы». Классического программирования у нас почти не было, изучались смежные области, и в основном железо. Через два курса я понял, что это не то, чем хотелось бы заниматься всю жизнь. Было по-своему интересно, но технологии всё-таки казались местами устаревшими.
Я ценю университет в первую очередь за то, что он показал, кем я быть не хочу. Такой же ценный опыт я получил после месяца работы в продажах на одной халтурке. Не знаете, кем хотите быть — сначала узнайте, кем вы быть не хотите!
Я начал искать боле близкие и интересные сферы. Попробовал самостоятельно изучать Python и через пару месяцев понял, что интерес не пропал. Поэтому на втором курсе я немного сменил направление и занялся разработкой. Стал меньше времени уделять основной учёбе и больше — самостоятельному изучению программирования.
С летней халтурки заработал кое-какие деньги, которые вложил в комплексный курс по веб-разработке на Python. Он шёл около трёх–четырёх месяцев и отсеял примерно 25 человек из 30. С отличием его закончили я и ещё один человек. С ним мы сдружились, и через пару месяцев он пригласил меня пройти собеседование в компанию, куда устроился он сам.
Первая работа
Собеседование было довольно формальное. Компании на тот момент было всего пять месяцев, и была большая потребность в новых разработчиках. Мне нужен был любой опыт, поэтому я был готов работать на первых порах даже бесплатно. Месяц я пробыл на стажировке, а затем устроился официально как Python-разработчик.
Самая большая удача — не в том, что я устроился на работу, а в том, каких людей там встретил. Человек, который меня позвал в компанию, не относился к работе как к работе — и это было чертовски заразительно! Я начал воспринимать это как хобби и погружался всё глубже и глубже с каждым месяцем.
Мы занимались автоматизацией бизнеса, используя бельгийский фреймворк Odoo. Из-за того, что компания была маленькой, приходилось заниматься, в принципе, абсолютно всем: общаться с клиентами напрямую, собирать их бизнес-требования, преобразовывать их требования в нечто имеющее право на жизнь. Сейчас такими задачами занимаются бизнес-аналитики.
Старт 4 ноября, 9 месяцев, Онлайн, Беcплатно
Также приходилось работать и с Docker, и с удалёнными серверами. Нужно было разворачивать приложения на серверах, контролировать их работу. То есть были и девопсовские задачки. Какое-то время даже поработал как тимлид, получил небольшой опыт в управлении, ревью кода и мог собеседовать людей на позиции (но не очень хотел).
Но в какой-то момент я подошёл к зоне комфорта: новые сложные задачки не появлялись, и я начал задумываться о том, что пора что-то менять.
Сначала я пробовал повлиять на руководство на работе — у меня были хорошие отношения с директором. Я поднимал вопрос о том, что мне наскучили старые задачи и нужна возможность дальнейшего развития. Были обещания, но растягивались они надолго, и мы всё ещё оставались в рамках одних и тех же технологий и одних и тех же задач. Поэтому я стал искать пути развития вне компании. В итоге это меня и привело в Практикум.
Что мне дал Практикум?
Я искал курсы для тех, у кого уже есть опыт в разработке, — и ничего не нашёл. Практикум посоветовал бывший преподаватель, который для меня всегда обладал большим авторитетом.
На входе я уже был довольно опытным питонистом, но была нехватка опыта работы с фреймворками, и некоторые пробелы в знаниях работы баз данных. На выходе мы поработали с различными базами — реляционными и нереляционными, — использовали все актуальные фреймворки для написания самостоятельных сервисов. Я начал комфортно чувствовать себя с асинхронной разработкой, успел несколько раз побыть лидом в модулях, где подразумевалась командная работа. Таким образом я подтянул не только хардскилы, но и софтскилы — стало больше уверенности в своих силах, а это очень важно.
Хоть учеба и занимала достаточно много времени, со временем я привык и даже параллельно устроился на вторую работу на фрилансе. В общем, совмещал две работы, учёбу в Практикуме и как-то успевал уделять внимание девушке.
В целом ощущения от обучения очень приятные. Особенно запомнилось, как мы в команде с моим товарищем защищали диплом на довольно сложную тему — биллинг для онлайн-кинотеатра. Волновались, что лиды из крупных компаний засыпят нас вопросами, на которые мы не сможем ответить. Но в итоге им понравилась наша работа. На самом деле альтернатив Практикуму очень мало — я бы даже сказал, что их вообще нет.
Собеседования ради опыта и 12 офферов
Буст к уверенности в своих компетенциях, который я получил во время учёбы в Практикуме, помог преодолеть страхи по поводу смены работы. Изменилась и ситуация: раньше я не понимал, куда пойти, потому что не знал, возьмут ли. В итоге на руках появились 12 офферов — и редкая возможность выбрать, чем мне интереснее заниматься.
У меня был аккаунт на LinkedIn с относительно небольшой сетью контактов. Я просто отправил сообщения всем рекрутерам, что были у меня в контактах, и пошли звонки.
Изначально я хотел пройти всего пять собеседований, чтобы понять, что из себя представляют реальные собеседования. Затем я вошёл во вкус и прошёл ещё более десятка. Работодатели шли сами, и я в какой-то степени к этому привык.
Каждое последующее собеседование было проще предыдущего. Я постепенно привык к стрессу, который приходится преодолевать. Хотя мне до сих пор сложно делать какую-то задачу за ограниченное время, когда за каждым шагом наблюдают несколько человек. Под таким давлением некомфортно что-либо делать — не только подбирать алгоритмы для решения задач.
Самое важное, что я понял во время собеседований — надо уметь себя продавать. Без лжи и преувеличения рассказывать, что умеешь. Нужно понять, что ищет работодатель, и стараться быть максимально конкретным, когда описываешь свой опыт.
Работа в EPAM
Среди знакомых разработчиков бытует мнение, что продуктовая компании лучше. А я выбирал работу исходя из своих интересов, и понимая, что на продукте стек технологий скорее всего будет одним и тем же — и через год уже станет скучно. Мне хотелось пойти туда, где есть вариативность. Поэтому я пошёл в EPAM.
Сейчас я работаю мидл-Python-разработчиком. В основном все мои задачи — с уклоном в core, а не веб-разработку. Я работаю недолго, поэтому не могу особо поделиться впечатлениями. Но нравится то, что я попал в сильную команду: все ребята намного опытнее меня. И мне интересно то, с чем нам предстоит работать — направление разработки и проекта. Если не вдаваться в подробности, это связано с электромобилями.
И совет напоследок
Не нужно бояться сложностей и не нужно бояться задавать вопросы — только так и можно расти. Несколько раз возникала ситуация, когда я не знал, что делать, и писал вопрос, чтобы мне помогли разобраться, а после того, как я правильно его сформулировал, сам понимал, что нужно сделать. Не зря говорят, что правильно заданный вопрос уже содержит в себе половину ответа.
Хинт для программистов: если зарегистрируетесь на соревнования Huawei Cup, то бесплатно получите доступ к онлайн-школе для участников. Можно прокачаться по разным навыкам и выиграть призы в самом соревновании.
Перейти к регистрации
Дайвинг в Python: история одного опыта
Авторизуйтесь
Дайвинг в Python: история одного опыта
инженер-программист 2 категории компании ICL Services
Недавно я приступила к изучению одного из самых распространённых, а, согласно некоторым источникам, и самого популярного на 2021-й год языка программирования — Python. В данной статье мне бы хотелось рассказать о своем пути в его изучении. Ввиду того, что «я не волшебник, я только учусь» (дисклеймер – я могу ошибаться), данная статья – лишь субъективное видение ситуации на данный момент.
Почему Python?
Меня всегда безумно вдохновляла мысль об искусственном интеллекте – научить машину выполнять функции, которые считаются прерогативой человека — это же вау! Однако, человеческий мозг устроен так, что в один момент просто восхищаться стало неинтересно, и я захотела попробовать себя в этом поприще. Что делать и куда идти я, конечно же, не имела понятия, поэтому поступила как любой человек в 21-м веке – зашла в браузер, открыла Google и ввела запрос «Artificial Intelligence». И, как говорится, «понеслась» — куча статей, ссылок, форумов, видео и иного контента было мной просмотрено, как итог – Data Science, Machine Learning и, как следствие, Python.
Почему Python так популярен?
Вообще, Python используется не только в области Data Science – большое количество ресурсов описывают его использование в других сферах – как минимум, в веб-разработке, game developing, автоматизации. Почему же он популярен? Давайте разбираться:
Однако, ничто неидеально – у Python также есть недостатки: в частности, его скорость и потребление памяти.
Python называют медленным не зря – иногда на выполнение операции может понадобиться в 25 раз больше времени, чем, например, в C++ (ссылку на сравнение оставлю ниже) – это обусловлено в большей мере динамической типизацией. Говоря простым языком, динамическая типизация – это когда во время написания кода разработчику не нужно указывать тип данных, интерпретатор определит тип переменной сам во время выполнения программы (динамически). Программисту удобно, но небыстро – такой подход требует большего резерва памяти для каждой переменной. Больше памяти – больше времени на вычисления. Также из-за динамической типизации Python может выполнять только одну задачу за раз, а это значит, что ни о какой многопоточности речи не идет, и это также является минусом в сравнении с другими языками.
Весомые ли это недостатки? Решать каждому самостоятельно – зависит от скопа задач, которые в итоге нужно решить.
Что я уже сделала?
Окей, с тем, что я буду изучать Python – определилась, а что дальше? Как и прежде – я пошла в Google. Пути развития два – пойти в школу или учить самостоятельно.
Старт 4 ноября, 9 месяцев, Онлайн, Беcплатно
Ввиду того, что ИТ-специальности набирают обороты, а вместе с тем растут и их зарплаты, все больше людей интересуются этой областью. Это, в свою очередь, создает рынок платных программ обучения, которыми наполнен интернет: если погуглить «изучение питона с нуля», то первыми ссылками будут рекламы разных курсов, которые обещают сделать из человека крутого разраба за полгода-год, помочь с трудоустройством и еще много чего.
Честно сказать, я тоже рассматривала вариант покупки курса, но так на него и не решилась – авторитетных знакомых, которые изучали программирование с помощью таких ресурсов, у меня на тот момент не было, отзывы в интернете слишком противоречивые, а сумма обучения — внушительная. В моем скептическом восприятии мира так не бывает: заплатил денюжку, прошел курсы за полгода и сразу стал middle-разработчиком… ну такое. Однако, если вас это не смущает – вероятно, такие курсы для вас. Если увидите реальный результат – напишите статью об этом для таких же скептиков, как я.
Вариант, который выбрала я, – самостоятельное изучение
Поскольку практики у меня не было, я решила начать с одной из самых популярных книг для изучения языка – A bite of Python (Укус Питона). Я остановила свой выбор на ней, прочитав кучу положительных отзывов. Плюсом было то, что у нее есть перевод на русский: я знаю английский, но воспринимать абсолютно новую информацию предпочитаю на родном языке.
Что могу сказать? Книга оказалось действительно понятным справочником для «первоклассников» в изучении питона – никакой воды, отличные примеры и объяснения. Это даже не учебник, это методичка. Если вы, как и я, не знаете, с чего начать, то рекомендую. Даже, если по какой-то причине книга вам «не зайдет», потраченного времени будет не жалко, поскольку в ней всего 150 страниц.
Что дальше?
Программирование – это практика. Можно прочесть миллиард книг, но стать хорошим разработчиком можно, только потратив кучу часов на сам процесс кодинга. Поэтому, как обычно, погуглив и почитав отзывы, я решила пройти бесплатный курс на платформе Stepik по основам разработки на Python – это «базовая база»: типы данных, циклы, конструкции, при этом куча практики на отработку навыков.
Несмотря на то, что в компании ICL Services моя текущая работа не связана непосредственно с Python, есть возможность развиваться в любых интересующих направлениях в рамках Research Groups — я работаю в подразделении End User Services, и у нас это очень приветствуется. Сейчас нам нужно разработать автоматизацию для тестирования образов ОС Windows 10. Предполагается, что она будет собирать данные по требованиям из Low Level Design – это такой документ, который содержит информацию об образе — какие конфигурации, какие приложения установлены, например — и генерировать автотесты. В дальнейшем ее планируется использовать и для образов MAC OS – кроссплатформенный Python отлично подходит.
Что будет дальше? Пока не знаю. Меня очень демотивируют грандиозные планы обучения – когда понимаешь, сколько еще шагов тебе предстоит сделать, чтобы прийти к цели, очень легко «сдуться» и не делать вообще ничего. Поэтому я стараюсь жить и развиваться по принципу, который, кстати, является одним из пунктов Zen of Python — «лучшее – враг хорошего»: лучше делать немного, но хорошо и регулярно, чем набрать себе кучу курсов, ссылок и задач, и ничего из этого никогда не освоить.
Где программировать на Python?
Чтобы писать простые программы на питоне, необязательно использовать IDE (интегрированные среды разработки) – установил python с официального сайта, открыл IDLE — и все, готово. Но для того, чтобы в дальнейшем писать уже более сложные проекты, все же рекомендуют использовать IDE или даже обычные редакторы кода. Я, как новичок, решила выбрать IDE – они содержат в себе сразу все инструменты, необходимые для удобной разработки:
Я остановила свой выбор на PyCharm — одной из популярных IDE, предназначенных именно для Python. Существует как бесплатный open-source – таким как раз я и пользуюсь, так и платные (Professional) варианты. Плюсом является и то, что он доступен на Windows, Mac OS X и Linux.
Заключение
Когда поступил запрос написать статью о Python я как человек, который еще только делает свои первые шаги, затушевалась – о чем я могу рассказать, я же ничего не знаю. Но все с чего-то начинают, поэтому я буду бесконечно рада, если моя история кому-то поможет, направит, даст мотивацию стать лучше и не бояться. Есть такая цитата: «В основе любого успеха — 99 процентов труда и 1 процент таланта. Труд невозможен без дисциплины».
Поэтому, успеха вам!
Хинт для программистов: если зарегистрируетесь на соревнования Huawei Cup, то бесплатно получите доступ к онлайн-школе для участников. Можно прокачаться по разным навыкам и выиграть призы в самом соревновании.
Перейти к регистрации
Моя история в IT: из юриста в Python-разработчики в 45 лет
Авторизуйтесь
Моя история в IT: из юриста в Python-разработчики в 45 лет
Junior Python Developer в CDNvideo
С чего всё началось
В школе я учился в математическом классе и изучал программирование. Это было давно: мы работали на Basic, а компьютеры были старые — на них даже Windows ещё не было. Когда пришла пора выбирать высшее образование, я предпочел юриспруденцию — в 1993 году профессия программиста в Твери не казалась очень перспективной. Времена были непростые, и зарплата была для меня приоритетом. Я смотрел, какие профессии наиболее востребованные и чем мне было бы интересно заниматься. На тот момент «юрист» звучало неплохо.
Параллельно с учебой в университете я искал варианты подработки — так, в 1996 году я в первый раз стал программистом в Тверском государственном архиве. Им нужно было вести базу данных по награждённым в период Великой Отечественной войны. Я по факту занимался обработкой информации, но в трудовой книжке написано гордое «программист». То есть можно считать, что мой путь в IT начался 25 лет назад. Там тоже ещё не было Windows — работали в MS-DOS на монохромных дисплеях с зелеными буквами, как в «Матрице».
Я выпустился, переехал в Москву и начал работать юристом. Сменил много компаний, в том числе Яндекс, где трудился восемь лет. Тогда там работало всего 300 человек, а в юридическом отделе — трое. Когда же уходил из Яндекса, я уже был начальником одного из отделов юридического департамента, а в самой компании работало несколько тысяч человек.
Потом я попал в Яндекс.Деньги, затем открыл собственную юридическую практику, успел посотрудничать с издательством «Просвещение». Но, где бы я ни работал, я всегда был так или иначе связан с IT. Всё время сталкивался с разработчиками, пытаясь понять суть их проблем, не абстрагируясь от технической части, а, наоборот, как можно глубже погружаясь в их мир. Мне было важно понять, как всё устроено, да и вообще всегда было интересно возиться с компьютерами.
Когда решил всё изменить
Я проработал юристом чуть больше 20 лет. В последние годы начал понимать, что перестал получать удовольствие от работы — мне надоело. Всё чаще хотелось передать новый проект коллегам, несмотря на риск остаться без дохода. Осознал это не сразу: какое-то время ощущал внутреннее недовольство, продолжал работать по инерции. Тем более всегда можно было взять отпуск, немного отдохнуть, а потом снова продолжить.
И в очередном отпуске я встретился со знакомым, который рассказал, что проходит бесплатные курсы по Python. Мы немного поговорили, и мне тоже стало интересно. Я довольно быстро прошёл те же самые курсы и понял: мне нравится. Решать задачки, изучать учебные материалы, искать дополнительную информацию — всё это приносит удовольствие.
В работе программиста меня привлекает то, что у тебя всегда есть видимый понятный результат — программа либо работает так, как ты от неё ожидаешь, либо нет. Если нет, то можно изолировать проблему, разбить её на составляющие, проверить каждый этап и разобраться, где ошибка.
В работе юриста такой связи зачастую нет. У тебя нет возможности запустить тесты и увидеть правильный результат или сообщение об ошибке. Ты можешь реализовать большой проект, сдать его, получить зарплату, а то и премию, но сам не будешь уверен, что сделал всё правильно. И можешь никогда не узнать, если кто-то не подаст в суд, и ты либо отстоишь свой проект, либо нет. А может, это будет уже другой юрист, потому что ты больше не работаешь в этой компании и вообще стал программистом.
Так я стал смотреть другие онлайн-курсы — как раз полтора года назад появилось много хороших. Я интересовался всем: и маленькими короткими курсами, и большими, как в Яндекс.Практикум. В конце концов я понял, что хочу заниматься этим серьёзно, и решил кардинально менять жизнь.
Тогда мне было 44 года, и казалось, чем дольше я тяну, тем меньше шансов, что что-то получится. Поэтому я подошел основательно: отказался от юридических клиентов и посвятил высвободившееся время учёбе. Конечно, мне было страшно, но страх не был парализующим. Я просто понимал, что может не получиться. Держал в уме, что я не лучший вариант для нанимателя, ведь он хочет вкладываться в развитие специалиста: от 25-летнего можно ожидать большего, чем от 45-летнего. Я понимал, что возраст не играет на руку и осложнит поиск работы. Но я был готов.
Как выбрал бэкенд
Я ещё не понимал, к чему лежит душа, и начал учиться на нескольких курсах одновременно. В Практикуме выбрал изучение бэкенда: Python и Django. Параллельно изучал фронтенд в HTML-академии. На полное погружение в учёбу у меня ушло больше года, и я твердо решил не искать работу, пока не доучусь.
Возможно, я немного погорячился, изучая фронтенд и бэкенд одновременно. В начале вводные курсы казались легкими, но в процессе основного я несколько раз себя ругал — с трудом справлялся. В Практикуме даже пришлось брать академический отпуск, потому что на параллельном курсе было жёстче со временем, и я решил сначала разобраться с ним.
Но потом я всё же выбрал бэкенд. Мне понравился Python — понятный, логичный и красивый язык, который чем-то похож на человеческий, если можно так сказать. Как юрист, я питаю слабость к правильным, корректным, структурированным и лаконичным формулировкам.
Я отношусь к языку как к инструменту — с его помощью можно сказать то, что хочешь, ни больше ни меньше. Python близок к этой концепции и в целом к юридическому языку. Профессия юриста не так сильно отличается от разработчика: важна логика, алгоритмы, набор последовательных действий. При этом всё связано, и в зависимости от ответа «да» или «нет» предлагаются различные варианты.
После того как я понял, что хочу работать с Python, было несколько путей. Бэкенд — одно из мейнстримовых направлений, аналитика данных мне не очень нравилась, я не понимал, чем они занимаются. А для машинного интеллекта у меня не было достаточной математической базы.
Я выбрал Практикум потому, что сам работал в Яндексе и доверяю бренду и людям, которые делают этот продукт. К тому же их программа показалась мне хорошо сформированной, понятной, с логичными этапами.
Как проходило обучение
От курса я ждал знаний и интересных задач, и эти ожидания оправдались. В то же время было много моментов, когда что-то не получалось — я намертво втыкался в ошибку, которую не мог поправить.
Например, наставник говорит: «Всё здорово, осталось только поправить несколько небольших ошибок». И я вроде рад, а потом смотрю и вообще не понимаю, как это сделать. И сижу ночью, ковыряю проект вплоть до утра. Даже не потому, что надо, а просто потому, что появляется азарт.
Были и более фрустрирующие моменты. Я спрашивал себя, зачем ввязался, ведь у меня ничего не получается, это вообще не моё. Кроме того, почему-то таких ошибок, как у меня, не было ни у кого из одногруппников. Я злился на себя, но потом давал время успокоиться и начинал решать заново.
Очень помогло общение с одногруппниками. Я привык решать все проблемы сам и до последнего пытался ответить на свои вопросы самостоятельно. Мне потребовалось время, чтобы переломить себя и начать задавать вопросы, общаться. Я так привык, что потом уже активно включался в переписку и не только спрашивал, но и старался помогать другим. Это такая дополнительная мотивация — не один возишься с заданием, а вместе с другими. Им тоже сложно, но они идут дальше, развиваются, перебарывают себя и становятся лучше. Не терять мотивацию также помогала поддержка близких и друзей, которые говорили, что у меня всё получится, и радовались успехам.
Когда я вернулся из академа, меня включили в новую когорту и сразу же дали задание сделать групповой проект. Это был очень крутой опыт — общение с новыми людьми, обмен знаниями, да и само движение к общей цели, коллективная ответственность. При этом ребята были из других городов, а то и часовых поясов. Мы, кстати, до сих пор общаемся и делимся успехами.
Самым интересным проектом стал диплом. Он базировался на курсе, но в то же время нам подкинули достаточно много составляющих, которые не вытекают напрямую из пройденной теории и предыдущих проектов. Пришлось поломать голову, самому искать дополнительные инструменты. В какой-то момент мне даже показалось, что мы совсем не тому учились. Но, разложив задачи по полочкам, я понял, что всё связано, хоть и требует дополнительных материалов.
Так выглядел первый заход на дипломный проект в Практикуме
Как искал работу
В конце мая 2021 года я защитил дипломный проект и начал искать работу. У меня не было радужных иллюзий: понимал, что человек, прошедший курсы, не самый желанный кандидат. Поэтому я начал этот путь, как все, — смотрел вакансии на hh.ru, сделал резюме. Ребята из Практикума помогли его допилить, исправить несколько моментов, переставить акценты. Второй важный этап — заставил себя писать сопроводительные письма, не шаблонные, а акцентированные — для конкретной вакансии.
В отличие от многих других соискателей у меня долгое время не было вообще никакой реакции работодателей. Либо ничего не отвечали, либо присылали шаблонный отказ. Я это связываю с возрастом — есть ощущение, что многие отметали не глядя.
Так выглядел мой журнал поисков работы
Но трудоустройство всё-таки произошло, и довольно неожиданно. Это была первая компания, которая провела со мной собеседование — первое и единственное собеседование после 30–40 откликов на вакансии. Состоялась всего одна онлайн-встреча, но сразу с тремя людьми, включая руководителя разработки и HR.
Собеседование прошло хорошо: спокойная дружественная атмосфера, они рассказали о себе, я — о себе. Задавали вопросы, давали задачки на логику, алгоритмы и на знание Python. Мне кажется, что одним из положительных факторов, повлиявших на решение работодателя, было то, что после собеседования я не забыл про эти вопросы и спустя день или несколько отправил другие ответы, позволяющие оптимальнее решить некоторые из поставленных задач. Возможно, это сыграло свою роль — я показал свою заинтересованность.
Мой совет всем, кто начинает этап собеседований: не надо стесняться, если вы чего-то не знаете. Когда меня хотели поспрашивать про SQL, я сразу ответил, что это бессмысленно — я им занимался шесть месяцев назад и практически не помню синтаксис, поскольку на курсах мы работали с базами данных в основном через Django, использующий свой язык запросов. Я готов был подтянуть знания и пообщаться снова, но в тот момент я не мог говорить на эту тему. Человек не может знать всего, и не надо этого стесняться.
Но при этом то, что входит в твои компетенции, ты должен знать хорошо и показать, что действительно разбираешься. Не лишним будет проявить настойчивость и заинтересованность и понимать хотя бы примерно, чем занимается работодатель, какие технологии использует.
В чём состоит работа Python-разработчика
Я — Junior Python Developer в компании CDNvideo. Она занимается технологиями CDN — раздачей контента при высокой нагрузке. В основном это контент для веб-сайтов с большой аудиторией — картинки, аудио- или видеофайлы, которые потребляют много трафика, онлайн-трансляции. Эти технологии помогают распределять контент по серверам в разных точках мира и отдают его пользователю с наиболее близкого и менее загруженного сервера. Благодаря этому у людей ничего не тормозит, сайты загружаются быстрее, а владелец сайта снижает расходы на поддержание сайта, повышает его доступность и защищенность, а значит, лояльность пользователей.
Стек технологий немного отличается от того, чему я учился, но компания тоже использует Python, SQL и имеет дело с сетями и протоколами передачи информации, которым нас обучали. Но первое ощущение — многое сильно отличается от того, что было на учёбе. Первое время я лез в интернет каждые десять минут, чтобы посмотреть, что это такое или как работает команда в Linux. Хорошо, что коллеги относятся с пониманием, поддерживают и делятся знаниями.
В мои задачи пока не входит самостоятельная реализация какого-то большого проекта — я работаю всего чуть больше месяца. Мне дают небольшие задачи, до которых руки не доходят у серьезных программистов. Всё это — в рамках одного проекта, так что как раз можно изучить сам проект, переходя от задачи к задаче. Часть моей работы уже внедрена — приятно понимать, что делаешь что-то полезное, пусть и небольшое.
Пока я на испытательном сроке, поэтому каких-то далеко идущих планов не строю. Конечно, я ещё многого не знаю, отстаю от коллег, но это нормально для начальной стадии. Я знаю это по предыдущему опыту — у юристов то же самое. Даже после МГУ или МГЮА несколько месяцев уходит на адаптацию теоретических знаний к реальной жизни. Важно не расслабляться, списывая это на свою неопытность.
Так что я планирую расти, развиваться, узнавать новое. Моя цель — стать лучшим Python-разработчиком, чем сейчас.
Книги, которые я сейчас читаю
Советы тем, кто в начале пути
Важно всё время быть в процессе обучения: гуглить, искать литературу, пробовать найденные идеи на практике. Когда мне сказали, что надо работать на Linux, я сразу полез его изучать. Нашел в интернете сайты, купил книжки, установил Ubuntu через VirtualBox на домашний компьютер.
Помните, что окончание курсов — это только начало обучения. Если выбрал работу в IT, придётся учиться всю жизнь. Стоять на месте не получится.
Список полезных сайтов и книг для Python-разработчик
Для общего развития:
Хинт для программистов: если зарегистрируетесь на соревнования Huawei Cup, то бесплатно получите доступ к онлайн-школе для участников. Можно прокачаться по разным навыкам и выиграть призы в самом соревновании.
Перейти к регистрации