Фриланс программирование python
Супер-недо Junior Python или история о переквалификации
Итак, доброго вам времени суток, усаживайтесь по удобнее, мы начинаем.
В посте будет описана попытка переквалификации из одной сферы в другую, разобрано что сделано, что находится в работе и какие сложности лично я испытываю в таких условиях.
Сначала будет минутка истории. Представьте самого обычного среднестатистического человека. У него нет высшего образования (бросил/выгнали/нет денег/не сложилось), работает на работе, приходит домой, кормит кошку.
Пьёт пиво по вечерам, ну и потихонечку деградирует как может.
Однако всё таки нечто упавшее сверху (то ли яблоко, то ли осознание недостатка пищи для мозгов) сказало мне, что так больше продолжаться не может. Одним чудным декабрьским днём, было принято решение о том, что пора что-то делать. Опуская подробности — я переехал из Сибири в чудный город Ленинград (в котором жил прежде много лет) и начал таки думать как дальше жить. Переезд произошёл в июне 2018 года.
Программирование меня никогда особо не притягивало. Из школьного/университетского курса, в голове отложилось только то, что там есть куча непонятного бесполезного синтаксиса, который бесит чуть более чем полностью. Однако зная мою любовь к математике, кто-то из друзей предложил попробовать себя в программировании, но на языке Python, мол не будет там у тебя этих проблем. «Почему бы не попробовать?» — подумал я и собственно началось.
Сначала я пошёл в интернеты и узнал, что такой язык программирования есть (уже маленький успех). Нашёл гайды, мануалы и начал читать. И сразу стоп.
ОШИБКА НОМЕР 1. На попытки читать не систематизированную информацию пытаясь переквалифицироваться я убил месяц, а то и больше. Если вы собираетесь менять сферу — НЕ ПОВТОРЯЙТЕ ЭТОЙ ОШИБКИ. Информация плохо усваивалась и закреплялась, долго до меня доходило, что надо не так, но всё таки дошло. Были найдены курсы на образовательном портале по данному языку программирования. Думаю ссылки оставлять было бы не корректно, кому нужно найдут сами — их бесчисленное множество.
Я начал проходить курс, решать задачи поставленные в нём и иногда проводил супер много времени за этим занятием.
Это была моя ОШИБКА НОМЕР 2. Не нужно сидеть по 18 часов пытаясь что-то сделать. Во первых вы рискуете утратить интерес к вопросу который изучаете, во вторых, после первых 10 часов вы скорее всего будете соображать хуже и плодотворность вашей работы будет катастрофически уменьшаться. В третьих — вы не получите удовлетворения от победы над задачей просидев над ней слишком большое время подряд. (Как пример мне попадалось несколько подобных задач в курсах или в заданиях на собеседования. Были те которые я решал «пока не решится», а были те которые я делал день за днём, с перерывами и отдыхом. Результат от вторых приносил мне искреннюю радость, от первых лишь один глубокий выдох)
Так как я люблю математику, то попутно, для разгрузки я так же начал проходить курсы по теории вероятности (дабы обновить память, изучал её для себя), мат статистике и линейной алгебре. Старался как то использовать их в том, что пишу. Будем честными — получалось не очень успешно.
Пройдя первый из курсов мне пришлось взять перерыв. Средства заканчивались, работа которая была найдена отнимала неимоверно много времени, но использовать полученный навыки там было никак нельзя.
Это была моя ОШИБКА НОМЕР 3. Готовясь к смене рабочего профиля, позаботьтесь о том, чтобы у вас была работа, на которой вам хватает денег для того чтобы жить и которая предоставляет достаточное количество свободного времени для изучения нового. Работать 6/1 по 14-16 часов в день явно не то, что вам нужно для самообразования.
Было заработано достаточно средств и я продолжил проходить курсы, приступил к более углублённому курсу в язык, более сложные задачи. Материал начал восприниматься тяжелее. Мозг который уже отвык думать воспринимал всё в штыки. Но «русские не сдаются», так что если не получается, слушаем/читаем/делаем ещё раз. Попутно узнаём, что часто проще найти информацию на английском и перевести, чем шерстить в поисках инфы на русском. Заводим гит и учимся с ним работать.
Сейчас я подхожу к концу изучения второго курса и так как средства скопленные на последней временной работе начинают петь самые грустные, снова пришлось искать работу. Тут было принято решение, что нужно искать оплачиваемые стажировки. И тут началась эпопея с поисками первой стажировки. (Которая продолжается и по сей час). Выбор языка мне приглянулся, но теперь я обратил внимание и на требования рынка.
Это была моя ОШИБКА НОМЕР 4. При поиске вакансий на junior Python вы найдёте примерно следующее. Нужны senior Python / middle Python / конец. Джуниоры не нужны. Есть пара мест, которые не требуют стажа работы, пишут тестовое задание которое им нужно прислать в резюме, но к требованиям обычно прилагается — хорошее знание C# / C++ / Node.js / MySQL / умение работать в linux на уровне администратора (Вы умеете работать в ХХХ? — Да? — То есть если сломается почините?)
И тут я думал, что всё. Ну как бы, где человеку входящему в сферу взять столько и сразу. На собеседования меня никто не приглашал. Потом начал шерстить знакомых, может у кого-то что-то есть связанное с вакансиями. Следующей ошибки я не совершил, но был близок.
ОШИБКА НОМЕР 5. Не пренебрегайте знакомствами при поиске работы. Даже если вам неудобно/стыдно, лучше воспользуйтесь возможностью. Так я попал на своё первое интервью.
В следующий раз перед интервью я обязательно выпью валерьяночки, потому-что трясло меня примерно как школьницу при виде Джареда Лето, и тёк я примерно так же (но не там).
На собеседовании я узнал в каких местах у меня есть информационные дыры, чего недодали мне курсы, что нужно залатать. Естественно меня не взяли, но опыт был полезным, за что компании я благодарен.
Наступило сегодня. Завтра собеседование на должность связанную с IT очень косвенно, потому что ждать неделями или месяцами у меня пока нет средств.
Что делать дальше? Пока планируется придумать какой нибудь полезный в быту проект и реализовать его, выложить на гит, закончить текущий курс и начать новый. Ознакомиться с математикой и её использовании в machine learning, пройти курсы по алгоритмизации и искать собеседования в удобное для меня время.
Я решил написать этот пост изначально для себя, чтобы было куда тыкнуть себя носом, но раз у нас есть интернет, то почему бы не опубликовать это дело. Ведь если хотя бы один человек, не попадёт на мои грабли, благодаря этому посту — он написан не зря. Когда я найду первую профильную работу, я напишу следующий пост о своих граблях. Спасибо за внимание.
Профессия Python разработчик
Python – один из языков программирования, который советуют осваивать новичкам. Выучить его относительно просто, даже если вы никогда не работали программистом. Команды на Питоне интуитивно понятны, особенно людям, знающим английский язык.
При этом разработчики на Python востребованы, поскольку популярность языка растет. Есть мнение, что в области веб-разработки он даже теснит язык PHP.
Помимо описания профессии, ее плюсов и минусов, в статье вы найдете бесплатные уроки для изучения Питона и полезные материалы для новичков.
Содержание статьи:
Кто такой Python программист и чем он занимается?
Питон считается универсальным языком, который имеет широкое применение. Однако чаще всего он используется в следующих сферах:
- Машинное обучение. Например, различные рекомендательные алгоритмы, поиск могут быть написаны на Питоне. Активно данный язык используется в Яндексе.
- Написание скриптов, которые встраиваются в программы, написанные на других языках. Например, в играх на Питоне пишут алгоритмы взаимодействия персонажей, обработку событий и запуск сцен. Код на Питоне есть в таких популярных играх, как World of Tanks, Battlefield 2.
Анализ и визуализация данных. Многие аналитики сегодня должны знать Python, чтобы проводить вычисления, выявлять закономерности и делать анализ данных.
Помимо перечисленных областей, Python разработчики востребованы:
- В веб-разработке. Часто бэкенд-часть сайтов (которая взаимодействует с сервером) написана на Питоне. На этом языке активно пишут парсеры, то есть программы, которые собирают различные данные с сайтов.
- В мобильной разработке. Например, серверная часть приложения Инстаграм написана на этом языке.
- В разработке десктоп программ. Например, на Питоне создана программа GIMP, а также софт для разработки 3D-графики Blender.
Активно данный язык программирования используется в различных устройствах, например, банкоматах, ЧПУ-станках, телекоммуникационном оборудовании.
Python-разработчик может заниматься созданием программ, сайтов, приложений в указанных областях, а также доработкой уже созданных программных продуктов, их развитием и поддержкой.
Плюсы и минусы профессии
- Язык программирования Питон подходит для новичков, его относительно легко и просто выучить даже человеку, не работавшему в ИТ.
- Много литературы и документации на русском языке, большое сообщество русскоязычных специалистов.
- Быстрое обучение, поскольку команды языка и сам код интуитивно понятны.
- Популярность языка продолжает расти, что обеспечивает Python программистам хорошую востребованность среди работодателей.
- Python разработчики работают в крупных компаниях, например, такие вакансии есть в Яндекс, Майл.ру, Facebook, Yahoo, Instagram.
- Часто работодатели ищут сотрудников, которые помимо Python, знают другие языки программирования, например, Java. Это связано с тем, что Питон обычно используется для создания части программного продукта, а для другой части необходимо знать дополнительные языки.
- Вакансий программистов на Python больше в Москве и Санкт-Петербурге. Если вы живете в регионе, скорее всего, вам потребуется искать удаленную работу или заказы на фрилансе.
Новичкам сложнее найти работу, чем опытным специалистам. Как решить эту проблему, расскажем в статье ниже.
Сколько зарабатывают Python-программисты?
Средняя зарплата начинающего программиста (Junior) – от 60 тыс. рублей в месяц. Разработчик с опытом работы 2-3 года (Middle) получает от 120 тыс. рублей в месяц. Зарплата специалиста уровня Senior достигает 200 тыс. рублей в месяц и выше.
На фрилансе заработки тоже хорошие, особенно если работать на иностранных биржах. Ставки разработчиков на Питоне на англоязычных сайтах могут доходить до 50-80 долларов за час работы. За 6-ти часовой день специалист может заработать порядка 30 тыс. рублей. Российские заказчики платят меньше, но получить 1000-1500 руб. в час тоже можно.
Как стать Python разработчиком, что нужно знать и уметь?
Поскольку язык программирования востребован в разных областях, то необходимый стек технологий зависит от сферы, где вы планируете работать, и даже конкретного заказчика. Если говорить о новичках, то в первую очередь необходимо знать:
- Сам язык программирования.
- Алгоритмы.
- Фреймворк Django, если планируете трудиться в веб-разработке.
- Освоить работу с базами данных.
Знать, как работать с API сторонних сервисов.
Где учиться программировать на Python? Бесплатные уроки
Есть несколько вариантов, как можно научиться данной профессии:
- Освоить все самостоятельно по материалам на бесплатных сайтах, где обучают программированию. Если вы уже работаете программистом, это оптимальный путь, поскольку базу вы уже знаете и вам просто нужно разобраться в синтаксисе нового языка.
- Если вы не работали в ИТ, то можно пойти на курсы Python для новичков. Например, в Нетологии есть 6-ти месячный курс, на котором вы освоите язык программирования и другие технологии, необходимые для трудоустройства. А также получите опыт разработки программ, который сможете указать в резюме. Курс создан для людей, желающих освоить профессию с нуля.
- Для обучения языку Python написано много книг и самоучителей, которые помогут новичку. Например, можно прочитать книгу «Изучаем Python. Программирование игр, визуализация данных, веб-приложения» Эрика Мэтиза.
- Посмотрите бесплатные уроки с YouTube:
- Уроки Python для начинающих (21 видео)
- Анализ данных на Python в примерах и задачах
- Программирование на Python (9 лекций)
Как найти работу начинающему специалисту?
Освоив азы языка, можно устроиться стажером в небольшую компанию и попробовать себя в области веб-разработки или машинного обучения. Как правило, стажерам очень мало платят, зато обучают и подтягивают до уровня Junior-программиста. Проработав стажером 4-6 мес., вы уже сможете претендовать на обычную зарплату для ИТ-специалиста.
Если у вас уже есть опыт работы, то добавьте свое резюме на сайты для программистов. Вас будут звать на собеседования и предлагать выполнять различные задачи. Смотрите, с чем вы не справляетесь и подтягивайте знания, затем снова идите на собеседования. Рано или поздно вас возьмут на работу. Некоторые начинающие программисты ищут первую работу по 3-4 месяца и даже больше, но затем получают необходимый опыт и процесс поиска нового работодателя идет быстрее.
Когда вы станете уверенным разработчиком, то сможете брать заказы на фрилансе и зарабатывать как частный специалист. Это даст хорошую прибавку к зарплате в офисе. Искать заказы на фрилансе можно на биржах.
Где найти Python-разработчика на проект?
- Если вам нужен специалист на удаленную работу или разовый заказ, добавьте проект на сервис www.kadrof.ru/work Это бесплатный сайт, где публикуются вакансии для фрилансеров.
- Найти частного специалиста можно в каталоге веб-разработчиков. Там есть фильтры, позволяющие выбрать программистов, знающих определенные технологии.
Посмотрите статью, где найти хорошего программиста. Там вы найдете много полезных сайтов, куда можно добавить вакансию для поиска Python-программиста.
Почему первым языком программирования должен быть Python?
Профессия программиста становиться все более популярной. Это не только шанс получить высокооплачиваемую работу, зарабатывать достойные деньги на фрилансе, но и интересное, увлекательное занятие.
Как правило, человек, который решил освоить программирование «с нуля» становиться перед выбором «Какой язык программирования учить?».
Если, Вы четко знаете в какой области хотите применять в будущем свои знания (Web, создание игр, программирование под Android и т.п.), то можно воспользоваться инфографикой, с которой, уверен, многие уже знакомы.
Как видите, самый часто упоминаемый язык на этой инфографике — Python. И это вполне оправдано, поскольку Python является, действительно, простым языком, а программировать на нем — сплошное удовольствие. Свою первую программу Вы напишите в течении первых часов изучения этого языка.
Перечислять все достоинства этого языка я не буду, поскольку, это уже делалось многими авторами неоднократно. Назову лишь несколько, на мой взгляд, наиболее ценных особенностей Python для начинающего программиста.
— Простота. Это достоинство Python наиболее важно для начинающих программистов.
— Скорость разработки. Вы с легкостью сможете решать повседневные задачи не затрачивая большого количества времени. Для начинающего программиста важно видеть результаты своего обучения в виде готовой к использованию программы. Это мотивирует на дальнейшее изучение. Например, классический «Hello world» в Python выглядит следующим образом:
Для сравнения, посмотрим, как выглядит тот же «Hello world» на суперпопулярном языке Java:
class HelloWorld <
public static void main(String[] args) <
System.out.println(«Hello World!»);
>
>
— Широкие возможности использования языка Python. Благодаря огромному количеству библиотек, модулей и фреймворков, с помощью Python можно решать практически любые задачи.
Программы для ежедневного использования, в которых применяется Python: графический редактор GIMP, программа для работы с трехмерной графикой Blender, BitTorrent. Популярная игра World of Tanks написана с применением Python. Такие компании как Яндекс, Google, Instagram, Dropbox и др. используют Python.
По данным софтверной компании tiobe.com , в рейтинге популярности языков программирования за октябрь 2015 года Python занимает пятое место.
Востребованность языка и уровень зарплат можно оценить, например, с помощью крупнейшего сайта вакансий и резюме HeadHunter http://hh.ua/. Введите в поиске на сайте запросы вида «Python developer», «python junior», «python django», и убедитесь в том, что Python востребован и высокооплачиваем.
В следующих постах, рассмотрим обучающую литературу по Python, а также полезные ресурсы, для закрепления навыков программирования.