Кто такие программисты? Нет, ну правда! Направления в программировании

Какие кодеры наиболее востребованы в нашей стране?

Если сказать простому человеку, что ты работаешь программистом, то в ответ можно услышать одну из следующих реплик:

  • «Мне надо переустановить Windows. Я всю жизнь ждал того, кто сделает это для меня. А потом пойдем чинить тостер.»;
  • «О! Ты можешь помочь мне с лабораторной работой на VBA!»;
  • «За сколько сможешь сделать сайт для магазина моей мамы?»;
  • «Да ну! Скучная и дурацкая профессия. Я вот как-то пробовал разобраться с 1C…».

Если в ответ сказать, что ты ни разу не делал сайты и лабы на VBA, а Windows видишь только в страшных снах, то собеседник может искренне удивиться и на его лице отразится искреннее сомнение в твоей профессиональной пригодности. Некоторые разработчики слабеют под таким взглядом и идут доказывать, что они что-то могут. Из-за таких лохов в голове обывателя слово «программист» является синонимом понятия «бесплатная компьютерная помощь».

Ведь многие люди не знают, чем на самом деле занимаются программисты и судят об этом по навыкам своих родственников/знакомых. Но разные представители специальности делают абсолютно разные вещи и нельзя говорить за всех.

Эта статья расскажет об основных специализациях программистов , которые наиболее востребованы на российском рынке. Для каждого типа будут указаны организации, где его можно встретить чаще всего и технологии, с которыми ему надо уметь работать.

В статье будут упомянуты только главные знания, без которых не обойтись в адекватном коллективе, где программиста не заставляют закручивать гайки, рисовать дизайн и выкладывать статьи на сайт.

1. Front-end веб-разработчик

Если мы заходим на сайт и там есть кнопочки, которые меняют местоположение и цвет при наведении на них мышкой, то это дело рук front-end разработчика. Он пишет весь код на JavaScript, который выполняется без перезагрузки страницы на стороне клиента.

Где работает?

Что делает?

Разрабатывает динамику пользовательского интерфейса. Если в компании нет верстальщика, то еще и переводит PSD-шаблоны в HTML-код.

Технологии

  • HTML и UI фреймворки (Bootstrap, Foundation, Pure);
  • CSS и препроцессоры (SASS/LESS);
  • JavaScript + фреймворки/библиотеки на этом языке (Jquery, ReactJS, AngularJS, BackboneJS);
  • Утилиты для сборки проектов (Grunt, Gulp, Bower).

2. Back-end разработчик

Человек на плечи которого ложиться основное бремя по разработке веб-проекта. Он как бы строит фундамент, на который front-end разработчик прицепляет «декоративные элементы».

Где работает?

В серьезных фирмах, занятых созданием сайтов и веб-приложений. Разделение фронтенда и бекенда один из признаков наличия в компании определенного уровня культуры разработки.

Что делает?

Разрабатывает “ядро” сайта или веб-приложения: код исполняемый на сервере и архитектуру базы данных.

Технологии

Один из нижеперечисленных языков и фреймворки/библиотеки для него:

  • Ruby;
  • Python;
  • Java;
  • JavaScript.
  • Базы данных MySQl/PostgreSQL/NoSQL.

3. Full-stack веб-разработчик

Человек, который может сделать сайт любой сложности «от и до».

Где работает?

Чаще всего в стартапах и небольших студиях веб-дизайна. В крупных компаниях содержится в команде наряду с front-end и back-end разработчиками, чтобы контролировать и координировать их работу.

Что делает?

Сайты и веб-приложения. Выполняет работу front-end и back-end разработчика одновременно.

См. списки двух предыдущих типов.

4. Разработчик игр

Очень широкое понятие, которое включает как минимум три крупных категории: разработчик десктопных игр, разработчик мобильных игр и разработчик MMORG.

Где работает?

В игровых студиях.

Что делает?

Разрабатывает игры.

Какие технологии ему желательно знать?

  • С#/C++/Java;
  • Open GL или DirectX;
  • Один из игровых движков (Unity, Unreal Engine, Torque и другие).

5. Разработчик приложений под Android

Где работает?

Что делает?

Разрабатывает приложения под операционную систему Android.

Какие технологии ему желательно знать?

  • Java;
  • Android SDK;
  • OpenGL;
  • Android Studio.

6. Разработчик приложений под iOS

Где работает?

В студиях мобильных приложений, стартапах или крупных компаниях, которые решили сделать для себя мобильное приложение собственными силами.

Что делает?

Разрабатывает приложения под операционную систему iOS.

Технологии

  • Objective-C;
  • XCode;
  • OpenGL;
  • Cocoa Touch;
  • CoreData;
  • CoreGraphics.

7. Программист 1C

Многие разработчики не считают язык, встроенный в 1C, языком программирования, а людей, которые пишут на нем, программистами. У них есть на это свои основания. Тем не менее, людей которые называют себя программистами 1C и вакансий для них очень много.

Где работает?

В любой фирме активно ведущей экономическую деятельность. Часто не включен в основной штат сотрудников, а приходит пару раз в месяц или реже.

Что делает?

Пишет программы для автоматизации документооборота в компании.

Технологии

  • «1С:Управление торговлей»;
  • «1С:Бухгалтерия»;
  • «1С:Зарплата и кадры»;
  • T-SQL.

8. Инженер-программист

Если одним из 7 предыдущих типов можно стать отучившись на курсах или путем самообразования, то инженеров-программистов выпускают только технические ВУЗы. Часто на этих должностях работают люди старше сорока лет, получившие образование в советское время.

Где работает?

На производстве или в научном учреждении.

Что делает?

Разрабатывает программы для управления самыми разными устройствами: от печи на хлебозаводе до робота-пылесоса.

Технологии

Один из нижеперечисленных языков:

  • Java;
  • Delphi (жил, жив и будет жить!);
  • Assembler.

Огромный багаж технических знаний, соответствующий отрасли в которой человек работает.

Если посмотреть объявления о найме программистов на российских сайтах, то 90% из них будут подходить под эти семь типов. На Западе рынок вакансии несколько разнообразнее. Кто интересуется, может зайти на Odesk и посмотреть, какая работа там предлагается.

С грустью замечаю, что 14-летние пакистанцы требуют там за html-верстку от 500 рублей в час.

А судить о том, какие языки сейчас наиболее популярны в мире можно по данным Tiobe Index . Этот рейтинг строится по числу запросов в поисковых системах с упоминанием разных языков программирования.

P.S. Напоследок, жизненный анекдот в тему.

Если бы водителей нанимали на работу так же как программистов:
Вакансия: водитель.
Требования: профессиональные навыки в управлении легковыми и грузовыми автомобилями, троллейбусами, трамваями, поездами метрополитена и фуникулёра, экскаваторами и бульдозерами, спецмашинами на гусеничном ходу, боевыми машинами пехоты и современными легкими/средними танками, находящимися на вооружении стран СНГ и НАТО. Навыки раллийного и экстремального вождения обязательны. Опыт управления болидами “Формулы 1″ - приветствуется. Знания и опыт ремонта поршневых и роторных двигателей, автоматических и ручных трансмиссий, систем зажигания, бортовых компьютеров, антиблокировочных систем, навигационных систем и автомобильных аудиосистем ведущих производителей. Опыт проведения кузовных и окрасочных работ - приветствуется. Претенденты должны иметь сертификаты Mercedes, BMW, General Motors, а также справки об участии в крупных международных соревнованиях не более, чем двухлетней давности.
Зарплата: определяется по результатам собеседования.5.00 из 5, оценили: 5 )

сайт Какие кодеры наиболее востребованы в нашей стране? Если сказать простому человеку, что ты работаешь программистом, то в ответ можно услышать одну из следующих реплик: «Мне надо переустановить Windows. Я всю жизнь ждал того, кто сделает это для меня. А потом пойдем чинить тостер.»; «О! Ты можешь помочь мне с лабораторной работой на VBA!»; «За сколько...

Основной задачей программиста является разработка алгоритмов и компьютерных программ. Конечно, вариантов и видов программ есть великое множество и чтобы лучше объяснить, чем занимаются программисты, приведем три их основные специализации:

  • Прикладные программисты — создают программное обеспечение для решения различных задач (редакторы, игры, бухгалтерские программы, CRM-системы и т.д.).
  • Веб -программисты (чаще всего, это программисты PHP) — Интернет — создают сайты, программы для управления системами сайтов или интернет-магазинов и т.п.
  • Системные программисты — разрабатывают операционные системы и оболочки для баз данных, а также решают другие подобные задачи.

Профессия программиста довольно многогранна. Названия специалистов часто зависят от того, на каком языке или на каких технологиях они разрабатывают программы. Например, существуют программисты Java, Delphi, Python, 1С , Android, JavaScript и т.д.

Места работы

В настоящее время программисты востребованы практически везде. Должность инженера-программиста может существовать:

  • На «обычном» предприятии.
  • В IT-компании, занимающейся программированием профессионально.

Также программисты могут работать на фрилансе, выполняя временные заказы для компаний, которые не готовы брать сотрудников на постоянную работу.

История профессии

Первая программа для аналитической машины написана еще в 1843 году дочкой Джорджа Байрона графиней Адой Августой Лавлейс, а первый программируемый компьютер заработал в 1941 году. Его запустил (а заодно придумал первый язык программирования) немецкий инженер Конрад Цузе.

Престижной и хорошо оплачиваемой профессия программиста стала в 1970-е годы, а с появлением и развитием Интернета добавилось огромное количество специализаций в программировании.

Обязанности программиста

В зависимости от специализации и решаемых задач, должностные обязанности программиста могут существенно различаться. Выделим основные:

  • Проектирование и разработка ПО.
  • Внедрение ПО и организация корректного взаимодействия с другими программами.
  • Поддержка ПО и помощь специалистам техподдержки в устранении ошибок.

Иногда функции программиста включают в себя тестирование программного обеспечения, но чаще этим занимаются тестировщики .

Требования к программисту

Предъявляемые работодателями требования к программисту, также могут варьироваться, но основные примерно таковы:

  • Знание необходимых в работе технологий и языков программирования (например, SQL, PHP, HTML и т.д.).
  • Опыт создания программ.
  • Умение составлять и читать ТЗ.
  • Умение разбираться в чужом коде.
  • Знание вспомогательных программ (например, системы контроля версий).

В круг того, что должен знать программист, часто входит владение английским языком на уровне чтения технической документации и понимание сферы деятельности компании.

Образец резюме программиста

Как стать программистом

Программист — это одна из немногих профессий интеллектуальной направленности, где наличие диплома о высшем образовании не является решающим фактором при приеме на работу. Обычно люди не задаются тем, как стать программистом, они просто пробуют создать что-то свое и при устройстве на работу уже имеют портфолио, которое могут показать работодателю.

Тем не менее, окончить университет по профессии инженера-программиста будет совсем нелишним — почти все крупные компании требуют высшее образование.

Зарплата программиста

Доходы программистов, как правило, достаточно высоки. На текущий момент средняя зарплата программиста находится в районе 47 000 рублей в месяц. Хотя в Москве ставки могут достигать 150 000 рублей в месяц и выше.

Заработная плата программиста сильно зависит от опыта специалиста и умения решать сложные задачи. Сильные специалисты зарабатывают в разы больше новичков.

На данный момент существует множество направлений в программировании. Каждый сможет найти занятие по душе, но для этого нужно знать, чем именно ты будешь заниматься в своей сфере.

Разработка web-приложений

Это направление ориентировано на разработку веб-приложений (проще говоря, сайтов, но в настоящее время сайты обладают таким богатым функционалом, что их можно назвать полноценными приложениями).

Web-программирование можно разделить на backend (написание серверных скриптов - PHP, Python, Ruby) и frontend (разработка юзерского интерфейса - Javascript, HTML, CSS).

Разработка desktop-приложений

Разработка программного обеспечения для различных операционных систем. Все разнообразие софта, что мы используем в повседневности. Хотите написать свой обработчик фотографий, аудио-плеер или текстовый редактор, тогда вам сюда.

Разработка серверных приложений

Это различные игровые сервера (ваша любимая Дотка, CS: GO), IM-сервисы (серверная часть Skype, ICQ, MSN), банковские базы данных.

Разработка мобильных приложений

Множество Java-приложений. VK, Viber, Яндекс.Карты, переводчики, электронные читалки.

Программирование встраиваемых систем

Интересная отрасль программирования для различной домашней техники: пылесосы, холодильники, стиральные машины, плееры, навигаторы, электронные весы. Здесь задействованы научные разработки с использованием специализированных языков, типа MATLAB.

Системное программирование

Написание различных драйверов для оборудования, программирования «ядра» операционных систем. Кстати, создание компиляторов и интерпретаторов для языков программирования относятся сюда же.

Разработка игр

Гигантская отрасль. Сюда включается разработка игр и для ПК, и для консолей, и для мобильный устройств.

Олимпиадное программирование и решение задач

Программирование на различных «непрактичных» и не распространенных языках (Pascal, Delphi) для решения каких-то оригинальных задач, требующих нестандартного подхода, смекалки и IQ выше 160.

Программирование для бухгалтерских и финансовых продуктов

«1С: Предприятие». Вся бухгалтерия в России завязана на этом продукте. Но недостаточно знать лишь сам язык, важно понимать основы бухгалтерского учета. Плюс в том, что работы очень много, и без хлеба вы не останетесь.

Программирование баз данных

Серьезное направление. Хотите разрабатывать базы данных, способных хранить миллиарды строк информации о всех пользователях VKontakte или Facebook и при этом не тормозить - вам сюда.

Science

Наука и этим все сказано. Нейронные сети, моделирование структуры ДНК, запуск спутников, моделирование Большого Взрыва.

Кстати, недавно на сайте NASA была опубликована новость о поиске программиста на «древнем» языке Fortran, которому уже более 60 лет. Требовался программист для разработки программ по управлению автоматическими зондами Вояджер-1 и Вояджер-2, программное обеспечение для которых было написано на Ассемблере, Фортране и языке COBOL еще в 1970-х годах. Никогда не знаешь, какие знания могут пригодиться.

Читать: 8 мин.

Правда ли, что программирование - ну самая востребованная специальность в мире? Кто такие системные и прикладные программисты? Сколько лет нужно учиться на программиста? В какой вуз и колледж поступить, чтобы стать программистом?

Говорят, что в мире есть десять видов людей. Те, кто понимает двоичный код… и те, кто не понимает .
Юмор программистов

Программирование зародилось в XIX веке, и до середины XX века, когда случился бурный рост информационных технологий, создание программ для машины было сродни искусству. Программирование было уделом избранных. Сегодня же профессия программиста распространена и очень востребована. В 2017 году в мире насчитывалось 18.2 млн разработчиков программного обеспечения, из них 1.3 млн - в России.
Давайте посмотрим, какое будущее у профессии программиста. И что ему угрожает.

Описание профессии


Где работать

Компании-разработчики (сервисы Booking.com, Mail.ru, Yandex, Unisender)
IT-отделы и отделы digital-маркетинга организаций (Сбербанк России, Газпром, Тинькофф банк)
Системные интеграторы (Крок, Softline, Техносерв, Ланит, Ай-Теко)

Карьерные возможности

Из-за бурного роста сферы IT и дефицита разработчиков ПО, работать программистом можно начать еще в институте. Со 2-3 курса можно устроиться junior-разработчиком и начинать движение по карьерной лестнице. И при этом получать достойную для студента зарплату в 30-50 тысяч рублей.

Сами программисты оценивают длительность каждой ступени следующим образом:
Первые полгода-полтора года реального опыта вы junior
При активном обучении следующие 1-3 года работы вы middle
А программист с опытом работы 4-6 лет – это senior

Но, конечно, стоит помнить, что границы условны, и более активный и любознательный разработчик сможет освоить все навыки senior-developer за 3 года.

Кроме глубокой специализации в программировании, программисту доступно движение в смежные области внутри IT-компании – дизайн, маркетинг, аналитику, менеджмент. Программист может стать архитектором программного обеспечения, девопс-инженером, менеджером IT-проектов, если ему это интересно и у него есть нужные компетенции. Например, чтобы работать менеджером, ему потребуется коммуникабельность, инициативность, умение формировать команду и контролировать бизнес-процессы.

Оплата труда (диапазон зарплат)

Зарплата программиста напрямую зависит от специализации и квалификации. Наименее оплачиваемые должности – это junior-разработчики, которые только учатся. А наиболее оплачиваемые на рынке труда – архитекторы ПО и системные инженеры, на которых лежит ответственность за продукт или проект в целом. Поэтому диапазон зарплат программистов может быть очень широким:

    30 000 – 260 000 рублей
Перспективы профессии (востребованность)

Сейчас отрасль IT в целом и программирование в частности находятся на пике востребованности. Компании конкурируют за квалифицированных специалистов. В перспективе ближайших 5 лет программистов ждет благополучная жизнь и высокие зарплаты, потому что молодых кадров станет немного меньше. Придет период демографической ямы из-за низкой рождаемости в начале 90-х гг.
Но рынок IT ждет несколько опасностей. Во-первых , обучение программированию сейчас начинается уже практически с детского сада. Самые известные обучающие языки - это Scratch от MIT и Blockly от Google. Вероятно, навык программирования будет настолько же распространен, как знание английского языка, то есть будет входить в "джентльменский набор" при приеме на работу. А если им владеет почти каждый, то и ценность работы снижается.
Во-вторых , IT-образование сейчас дает почти каждый колледж и вуз. После дефицита рынок может "насытиться" профессиональными программистами, и их зарплаты упадут.
В-третьих , есть страны, в частности Индия, где IT-образование развивается еще быстрее. И в определенный момент услуги программирования насытят мировой рынок, как сейчас произошло с товарами, произведенными в Китае. С индийскими программистами трудно будет конкурировать в цене.

Если вы хотите получать свежие статьи о профессиях , подпишитесь на нашу рассылку .




Top