Как стать программистом с нуля, и подходит ли мне профессия программиста?
Профессию «программист» каждый выбирает по своей конкретной причине. Один решил просто менять специальность, второй вынужден осваивать еще одну профессию, третий не смыслит себя без кодов, а кто-то идет в профессию просто из любопытства.
Так или иначе – все начинают с нуля. И прежде чем с этого самого нуля начать – задайтесь вопросом, действительно ли вам нужна эта профессия?
Содержание статьи:
- Суть работы программиста, специализации, плюсы и минусы
- Качества, умения и навыки для работы программистом
- Где и как обучаться на программиста с нуля?
- Полезные онлайн-ресурсы и книги для обучения
- Как быстро найти работу программиста и зарабатывать?
- Перспективы карьеры и зарплата программистов
Суть работы программиста – основные специализации, плюсы и минусы работы
Суть работы программиста зависит от специализации и компании.
Впрочем, иногда программист – и «швец, и жнец, и на дуде игрец». Но это, как правило, в маленьких фирмах, начальники которых экономят на специалистах.
Основные категории, на которые условно можно поделить всех программистов в соответствии с их деятельностью:
- Прикладные специалисты. Задачи: разработка программного обеспечения для игр, редакторов, бух/программ, мессенджеров и др.; разработка ПО для систем аудио/видеонаблюдения, сигнализации и проч.; адаптация программ под чьи-либо конкретные нужды.
- Системные специалисты. Задачи: разработка операционных систем, создание интерфейсов к базам данных, управление вычислительной системой, работа с сетями, контроль над работой созданных систем, и др. Эти специалисты зарабатывают больше всех других в своей области, благодаря редкости и специфичности профессии.
- Web-специалисты. Задачи: работа с Интернетом, создание сайтов и веб-страниц, разработка веб-интерфейсов.
Как стать веб-аналитиком с нуля?
К плюсам профессии можно отнести следующие преимущества:
- Очень даже достойная зарплата.
- Высокий спрос на хороших специалистов.
- Возможность получения престижной работы без образования.
- Возможность зарабатывать удаленно, сидя дома на диване.
- Возможность работать удаленно на зарубежные компании.
- Творческая профессия (правда, нередко творчество зависит от пожеланий заказчика).
- Комфортные условия, которые обеспечивают крупные компании своим специалистам (бесплатные напитки/булочки, специальные места для отдыха и спорта, и проч.).
- Возможность получения «опциона». То есть, пакета акций компании. Правда, только после отработки определенного срока в компании.
- Расширение кругозора. По мере развития себя в профессии приходится знакомиться с самыми разными сферами жизни и вникать в самые разные системы – от делопроизводства и бухгалтерии до проч.
Минусы:
- Работа «сутки напролет» — обычное дело для данной профессии.
- Данная работа для многих людей будет скучной и однообразной.
- Интересы специалиста и заказчика не всегда совпадают, и то, что очевидно для программиста, как правило, совершенно не объяснить клиенту. Это приводит к конфликтам и стрессам.
- Не редкость – авральные режимы работы.
- Необходимость постоянно развиваться, изучать новое, успевать эволюционировать вслед за IT-сферой. Всего за несколько лет программы устаревают, и приходится писать новые.
Видео: Как стать программистом?
Необходимые личные и деловые качества, профессиональные умения и навыки для работы программистом – что необходимо знать и уметь?
Главные качества хорошего программиста
Хороший программист должен…
- Любить свою работу. И не просто любить – болеть ею.
- Любить учиться и учить с нуля.
- Быть очень трудолюбивым, усердным и терпеливым.
- Быть готовым к постоянной рутинной работе.
- Уметь работать в команде.
Какие знания нужны будущему программисту?
Начинать следует с изучения…
- Английского языка.
- Устройства компьютера и физики всех процессов.
- Языков программирования.
- SQL.
- Методик разработки ПО.
- Методик тестирования ПО.
- Систем версионного контроля.
Язык программирования – с какого начать?
Начинать все специалисты рекомендуют с высокоуровневого Питона (Python), по которому можно найти немало книг на русском языке.
Также нужно будет изучить…
- Java. Более популярный, чем Питон, и неплохой выбор для начинающего. Но более сложный, чем Питон.
- PHP. Заточен под «веб», но будет полезен любому новичку.
- C и C#. Весьма сложные языки, можно оставить их на потом.
- Ruby. Хороший вариант для второго языка.
- Django. Он научит программировать правильно. По сложности схож с Питоном.
Многое зависит от выбранного направления.
Например…
- Веб-программисту будут полезны знания HTML, CSS и JavaScript.
- Для десктоп-программиста — API и фреймворки.
- Для разработчика мобильных приложений — Android, iOS или Windows Phone.
Где обучаться на программиста с нуля – учебные заведения России, курсы, дистанционное обучение, онлайн-обучение?
Если у вас нет знакомых, которые могут обучить вас с нуля профессии программиста, то у вас есть несколько вариантов обучения:
- Самообразование. Самый сложный путь к программированию, который лежит через изучение сайтов, приложений, книг и проч.
- Университет. Если вы только закончили школу и мечтаете получить престижную профессию программиста, поступайте на соответствующий факультет. Основные знания вы все равно будете получать путем самообразования, но «корочка» поможет вам быстрее приблизиться к заветной цели. ВУЗы выбирайте технические, изучив заранее программы обучения.
- Персональный учитель. Если вы сможете найти наставника среди программистов, самообучение будет более быстрым и эффективным. Ищите наставников на онлайн-форумах, на айти-тусовках, тематических конференциях и проч.
- Курсы. Обучить вас тому или иному языку программирования смогут на простых курсах, которые можно найти даже в маленьких городах. Например, «Образовательный IT-портал GeekBrains», «Специалист» при МГТУ Баумана, «Компьютерная Академия ШАГ», МАСПК.
Получить высшее образование по специальности программист можно в…
- МИФИ.
- Российском экономическом университете Плеханова.
- Московском государственном строительном университете.
- МГТУ Баумана.
- Государственном университете управления.
И др.
Видео: 7 ошибок начинающих программистов
Полезные онлайн-ресурсы и книги для обучения работе программиста
- habrahabr.ru (статьи на IT-тематику, информация по самым разным темам). Этот ресурс известен каждому программисту.
- rsdn.org (книги, актуальные вопросы, полезный форум, восполнение пробелов в знаниях, материалы на русском языке).
- sql.ru (отличный удобный форум, полезная литература и даже предложения по работе).
- theregister.co.uk (новости из IT-сферы).
- opennet.ru (новости, полезные статьи, форум и проч.). Ресурс для профессионалов.
- driver.ru (библиотека драйверов). Полезный сайт для новичков.
Ресурсы для обучения:
- ocw.mit.edu/courses (свыше 2000 курсов на разные темы).
- coursera.org (более 200 курсов, бесплатно).
- thecodeplayer.com (пошаговые руководства для новичков).
- eloquentjavascript.net (ресурс для введения в Java Script).
- rubykoans.com (для всех, кто изучает Ruby).
- learncodethehardway.org (изучение Python, Ruby, C и др.).
- udemy.com (платные и бесплатные курсы).
- teamtreehouse.com (свыше 600 уроков).
- webref.ru/layout/learn-html-css (для освоения HTML и CSS).
- getbootstrap.com (изучение возможностей Bootstrap).
- learn.javascript.ru (изучение frontend и Javascript).
- backbonejs.org (для фронтенд-разработчиков).
- itman.in/uroki-django (для изучения Django).
Бесплатные сайты для обучения в помощь новичкам:
- ru.hexlet.io (8 бесплатных курсов по C и PHP, JavaScript и Bash).
- htmlacademy.ru (18 бесплатных курсов для верстальщиков).
- codecademy.com (популярные курсы по языкам, инструментам и проч.).
- codeschool.com (более 60 курсов (13 – бесплатных) по HTML/CSS и JavaScript, Ruby и Python, iOS и Git, и пр.).
- checkio.org (для изучения Python и JavaScript).
- codingame.com (обучение через видео-игры, 23 языка программирования).
- codecombat.com (изучение JavaScript, Python и пр.). Обучающая игра, доступная и для тех, кто пока еще не владеет английским языком.
- codehunt.com (обучение поиску ошибок в коде).
- codefights.com (обучающая платформа, через турниры на которой можно «загреметь» на собеседование в приличную IT-компанию).
- bloc.io/ruby-warrior# (изучение Ruby, а также искусств/интеллекта).
- theaigames.com (развитие навыков программирования – увлекательный игровой онлайн-тренажер для программиста).
- codewars.com (сборник обучающих интерактивных задач для тех, кто обладает минимумом знаний).
Обычно на самостоятельное изучение основ программирования уходит от полугода до 12 месяцев.
Как быстро найти работу программиста и начать зарабатывать – советы бывалых
Естественно, устроиться в нормальную компанию без опыта работы вы просто не сможете.
Поэтому…
- Читайте книги, изучайте сайты и самообразовывайтесь, но уже сейчас начинайте писать свои самые 1-е строчки кода.
- Сами создавайте и усложняйте себе задачи по пройденному материалу.
- Ищите свои первые проекты, пусть даже и за «смешные деньги», записывайте себе в «резюме».
- Ищите работу на русскоязычных биржах фриланса (ru) и на англоязычных биржах (upwork.com) тоже – там больше шансов ее получить.
- Начинайте с маленьких проектов, которые вам по плечу.
- Не упускайте и вариант open source (в таких проектах всегда не хватает людей).
- Помогайте «за копеечку» (или даже бесплатно, для опыта) знакомым программистам. Пусть они дают вам несложные задания.
Готовим резюме
- Обязательно пишем: свой опыт работы, список языков и технологий, которыми вы владеете, образование и контакты.
- Не впихиваем в резюме весь перечень своих качеств и талантов. Даже, если вы виртуозно играете на баяне, писать об этом в резюме не стоит.
- Оформляйте резюме с учетом креатива, но уместного.
- Не стоит заполнять пункты вроде «ваши цели и амбиции» или «кем я вижу себя через 5 лет». Достаточно написать, чем вы занимались ранее и чем хотели бы теперь.
- Не пишите о языках и технологиях, которые вам известны только по названиям. В резюме следует писать лишь те, в которых вы плаваете, как рыба в воде. Для всего остального есть волшебная фраза – «был небольшой опыт».
- Если вы профессионально владеете Delphi, не забудьте упомянуть, что знаете также C#, jave или иной язык, потому как просто «программист дельфи» никому по сути не нужен (дельфи – это азы, с которыми знаком каждый выпускник).
- Не упоминайте работу, которая была не по специальности. Это никому не интересно. Также никому не интересно, есть ли у вас водительские права или автомобиль. Вы же не курьером собираетесь устраиваться.
Перспективы карьеры программиста и зарплата программистов
Средняя зарплата программиста в крупных городах страны – от 50000 до 200000 рублей.
По России в целом – от 35 тысяч до 120000.
Профессия входит в список самых востребованных — и самых солидно оплачиваемых. Даже скромный специалист способен заработать на бутерброд с икрой, а уже профессионал в деньгах нуждаться точно не будет.
От стажера до руководителя IT-отдела – путь не такой уж долгий, а зарплата на самом верху может достигать и 4000 долларов ежемесячно. Ну а потом можно двинуться и в руководители крупного проекта (прим. – по разработке ПО), а тут уже зарплата превышает 5000 долларов.
Сайт Colady.ru благодарит вас за внимание к статье — надеемся, что она была для вас полезна. Просим поделиться отзывами и советами с нашими читательницами!
Комментарии
Я бы еще в числе полезных ресурсов добавил livecoding. tv
Это как твич для геймеров. Там можно воочию, так сказать, увидеть будни обычного программиста.))
Оч хорошие видеокурсы — itvdn ком. Еще неплохие и полезные сайты: smashingmagazine ком и net.tutsplus ком
Хабр – классика нашего русскоязычного сегмента.) Похожих ресурсов много, но все не так интересны.
Еще отмечу RSDN ру, quizful нет (много тестов), sql ру, govnokod ру и анти-говнокод, doyouknowthat ру