В наш век стремительного прогресса профессия программиста стала одним из самых востребованных видов деятельности. Программист – это специалист, который, основываясь на особых математических моделях, разрабатывает различной сложности алгоритмы и компьютерные программы. Другими словами, он создает программное обеспечение.
Традиционно работа программиста считается мужской. Но кто бы мог подумать, что именно женщина станет первопроходцем в этой сфере. В 1833 дочь самого Байрона Ада Лавлейс создала несколько элементарных программ для первой модели машины, умеющей "мыслить", создателем которой был всем известный Ч. Бэббидж.
Только в 40-х годах 20 века на свет появились первые электронно-вычислительные машины. Для них писались очень подробные программы, так как никакой другой язык эта техника не понимала. Специальные алгоритмические языки программирования начали создавать позднее, именно тогда и появилась профессия программиста. В наши дни все программисты подразделяются на несколько категорий.
1. Прикладные программисты. Именно они разрабатывают программы, которые необходимы для того, чтобы любая компания, фирма или предприятия отлаженно работали. К этой сфере деятельности относится написание программ для аудио- и видеонаблюдения, систем пожарной безопасности: сигнализаций и автоматического пожаротушения. В обязанности программистов этой категории часто также входит разработка игр, программ для бухгалтерии, редакторов и т.д.
В эту группу относятся и так называемые программисты 1С. Они могут устроиться на работу как в самой обыкновенной фирме, так и в франчайзи. В организациях такого рода занимаются установкой программы, которую производит фирма 1С, исправлением ошибок и доработок. Они же и обучают пользователей этого ПО. Сотрудниками франчайзи являются студенты и начинающие программисты. А получив достаточный опыт и хороший багаж знаний, они переходят в другие фирмы.
Программисты 1С в свою очередь делятся на специальности:
2. Системные программисты. Профессионалы в этой сфере специализируются на работе с системным программным обеспечением. Сюда можно отнести и разработку операционных систем, а также создание сетей и их управление. Среди программистов людей, специализирующихся в этой области, не так уж много. Именно поэтому зарплата у таких специалистов высокая. В нашей стране для людей этой профессии принято использовать термин инженер-программист.
Рабочий день программиста этой категории не слишком насыщен событиями. Его работа очень сложна и кропотлива, требует особого склада мышления. Он трудится над разработкой программного обеспечения и сервисов, которые управляют системой периферийных и коммуникационных устройств и процессора. Работа программиста такого уровня также подразумевает обеспечение отлаженного функционирования созданных им систем.
3. Web-программисты. Они также работают в сетях, как и системные программисты. Отличие состоит только в том, что специалисты третьей категории углубляются в глобальную сеть Интернет. Они создают программы для сайтов, web-интерфейсы и динамические web-страницы.
Чтобы стать профессиональным программистом, недостаточно просто получить специальное образование. Здесь главное состоит в особом способе логического мышления. Работа программиста творческая. Но от специалиста требует и усидчивости, так как она подчас довольно монотонная и рутинная.
При наличии хороших организаторских способностей у программиста он может быть руководителем проекта, что позволит ему доверить всю скучную работу своим подчиненным.
В любом случае, независимо от выполняемой работы, программист должен быть внимательным, терпеливым и аккуратным. А чтобы его карьера со временем пошла в гору, специалисту надо быть настойчивым, целеустремленным. Необходимо также быть ответственным и в сложных ситуациях самому принимать нужные решения.
Хорошая память, высокий уровень развития интеллекта, концентрации, технических и математических способностей – это далеко не все качества, которыми надо обладать, чтобы преуспеть в профессии программиста.
Программист – это, скорее, призвание. Поэтому далеко не все настоящие профессионалы в этой области имеют высшее образование, так как являются самоучками. Важно не то, какое учебное заведение закончить, чтобы получить диплом. Главное в профессии программиста - уметь думать в нужном направлении, чтобы находить решения для любых поставленных задач и быть инноватором. И конечно, любому, кто работает этой области надо разбираться в языках программирования.
Профессия программиста подразумевает самообразование и способность к самообучению. Каждый день появляются новые технологии, и чтобы не остаться на обочине всего через год-другой, надо каждый день узнавать как можно больше. Приходится не только изучать новые технологии, но и адаптироваться к частым резким переменам. Чтобы освоение этой профессии проходило легко, необходимо знание английского языка.
Свои профессиональные знания программисты могут применить в компаниях, предприятиях и организациях различного характера, в вычислительных центрах, в банковских системах, в научно-исследовательских институтах, а также в школах, техникумах, колледжах и ВУЗах. Без специалистов в программировании не обойдется ни одна web-студия и IT-компания.
Пожалуй, все больше компаний в последнее время желают автоматизировать свой бизнес. А для этого нужны квалифицированные программисты. Просто наладить свой бизнес таким образом будет недостаточно. Требуется постоянная деятельность по обеспечению правильного функционирования и бесперебойной работы программного обеспечения в любой компании. Именно поэтому спрос на профессиональных программистов продолжает расти, а вместе с ним и заработная плата преуспевающих в этой области специалистов. Усердные программисты всегда смогут заработать себе на хлеб не только с маслом, но и с красной икрой.
Школьники уже, кажется, сдали ЕГЭ и вот-вот отправятся подавать документы в ВУЗы. Программирование и IT-технологии пользуются стабильным спросом, примерно как юридические и экономические специальности 10 лет назад.
В этой статье я расскажу как работает высшее образование для IT, как правильно выбрать IT-специальность.
Статья будет полезна не только абитурентам-2015, но и школьникам старших классов, которые уже решили связать свою жизнь с IT.
Вы можете читать книги, участвовать в OpenSource-коммьюнити, подрабатывать на oDesk и через несколько лет будете опытным разработчиком, без высшего образования. Правда, ничто не мешает это всё делать параллельно учёбе в ВУЗе, кроме собственной лени.
Вы можете поступить, сдавать зачёты и экзамены, получить диплом и не стать в итоге профессиональным программистом - таких историй миллионы.
Хороший ВУЗ даёт прежде всего отличные условия для того, чтобы получать знания, опыт, связи и вырасти как личность. И только от вас зависит, как вы будете их использовать (и будете ли вообще).
Примем условно, что вы уже приняли решение получить высшее образование в сфере IT, и пойдём дальше.
Что изменилось на самом деле?
В старых учебных планах для «специалистов» урезали количество часов на один год, при этом самые сложные дисциплины были либо удалены, либо сокращены. Многие академические темы из области алгебры, теории вероятности, физики останутся для бакалавра неосвещёнными преподавателем. В ряде специальностей, где программирование является вспомогательной компетенцией (например, информационная безопасность), под нож попали различные технологии программирования - от web-разработки до параллельного программирования.
В остальном ни теоретический материал, ни методика преподавания не изменились. Сократился объем материала. Если в каком-то ВУЗе раньше давали лабораторные для Pascal, то по-прежнему их и дают.
При этом учебные планы магистратуры могут похвастать новизной. Об этом можно написать отдельно, если будет спрос.
Нужно учитывать, что бакалавр - это не готовый сотрудник, который может прийти к работодателю с красным дипломом и просить среднюю зарплату по больнице. Бакалавр что-то знает, что-то умеет из технологий, но как правило не умеет работать в команде, большом коллективе и полностью самостоятельно решать конкретные практические задачи. В терминологии разработчиков это Junior, подающий надежды через 2-4 года стать Middle Developer. Во многих компаниях таким выпускникам без опыта устраивают стажёрские программы с наставником на 6-12 месяцев.
Если коротко, то прикладной от академического отличается новым учебным планом, где все дисциплины сфокусированы на выпуск максимально готового к реальным рабочим задачам сотрудника. Без стажировок и прочих головняков для работодателя. Например, из академического бакалавриата может выйти «математик-программист», а из прикладного «Разработчик.Net», «Разработчик реляционных баз данных» или «Программист C++». Последние более интересны рынку труда сразу после окончания ВУЗа, первые же после окончания бакалавриата должны поступать в магистратуру и дальше качать свои компетенции, чтобы после выпуска претендовать на более высокие позиции. Другая полезная вещь - участие в учебной программе прикладного бакалавриата работодателей (как базы практики) и IT-вендоров.
Несмотря на то, что идея на мой взгляд здравая и её реализация была начата ещё 5 лет назад в 44 пилотных ВУЗах, я ещё не встречал ни качественно новых учебно-методических материалов, ни готовых к самостоятельной работе выпускников. Предполагаю, что в ближайшие 2-3 года ничего не изменится и значительной разницы в подготовке академического и прикладного бакалавриата не будет. Тем не менее, если вы уже решили быть магистром - поступайте на академический, если после 4 лет обучения планируете идти работать, а к магистратуре вернуться «когда-нибудь» - то на прикладной.
Если в школе учатся, то в ВУЗе обучаются. И разница тут огромна. Никто не будет заставлять учиться. Если хотите получить диплом - сидите, разбирайтесь, спрашивайте у однокурсников. Преподаватель - это просто носитель знаний, который умеет эти знания пояснять. Его цель - рассказать, ваша - понять. Если вы что-то не поняли - преподаватель свою цель всё равно выполнил. Даже если в отдельных случаях это не так - лучше думать именно в такой парадигме, будет меньше разочарований.
Качество преподавания заключается именно в том, насколько хорошо преподаватель доносит до вас знания, какую практическую компетенцию вы при этом получаете. Например, донести принцип ООП можно на языке программирования Delphi, а можно на C# или Java. Вы поймёте ООП в любом случае, если будете стараться, но знакомство с языками C# или Java будет полезно для вас в будущем, при подготовке курсовых работ, при подработке или дальнейшем трудоустройстве.
Преподавание - штука инертная. Чем больше преподаватель читает один и тот же курс на примере одних и тех же технологий - тем лучше у него получается донести знания до студентов. Но IT-технологии меняются слишком быстро, поэтому возможны две крайности:
Помимо дробления бакалавриата на академический и прикладной, сейчас также проходит обновление стандартов образования со второго поколения на 3 и 3+. В условиях такого количества изменений в преподавании - есть риск, что ближайшие 2-3 набора студентов будут подготовлены хуже, чем последующие. А значит - нужно прилагать больше личных усилий.
Выбирая ВУЗ и специальность желательно знать Кто и Что вам будет рассказывать. Перед окончательным выбором - узнавайте у текущих студентов, читайте студенческие группы VK.
Полный список стандартов высшего образования можно посмотреть вот . Не по всем ещё есть стандарты поколения 3+, но до конца года будут. Рекомендую почитать эти скучные документы.
Вы изучите: технологии программирования на различных языках (обычно за 4 года вы познакомитесь с минимум тремя языками программирования - например: C++, C#, Lisp, или C++, Java, Python), разработка и основы администрирования реляционных и объектно-ориентированных БД, сетевые технологии, разработка приложений «клиент-сервер», «клиент - сервер приложений - сервер БД», параллельное программирование.
Обучение даёт понимание программирования в принципе, за пару месяцев вы способны изучить любой язык программирования и развиваться в нём; понимание как работает любая программа, как решить большинство вычислительных задач. После получения диплома из вас крепкий Junior, но как только вы разберётесь с конкретными задачами и инструментами в конкретной компании, багажа знаний будет достаточно, чтобы претендовать на Middle.
После опыта работы и хорошей магистратуры по этой специальности вы сможете не просто делать программы и информационные системы, но познакомитесь с принципами разработки высоконагруженных систем, управления командой, планирования разработки и сможете претендовать на Senior и Team Lead.
Вполне реальная история: получив бакалавра в МГУ, поступить в магистратуру CalTech. Само собой, физика, алгебра и матанализ должны быть вашей страстью.
На мой взгляд с чисто программистскими специальностями всё. Ниже будет перечень специальностей, где тоже обучают программированию. Но если у специальностей сверху учебный план построен так, чтобы выпустился Программист, то у специальностей ниже - Специалист в чем-то с навыками программирования.
Важно понимать, что всё зависит от конкретного учебного заведения. Это как стандарт HTML и его реализация на сайте провинциального салона красоты. Есть ВУЗы, где студенты всех специальностей ходят на одинаковые лекции. Есть ВУЗы, где МОАИС изучает Visual Basic и Pascal, пишет макросы в Excel, а базы данных изучает на примере Access. Если в вашем родном городе именно такой ВУЗ, то пора покупать билеты на поезд.
Выбор специальности при поступлении крайне важен, поскольку определяет дальнейшую карьеру и, может быть, всю жизнь. Это по сути первый самостоятельный выбор в жизни и ошибка будет измеряться годами. Поэтому рано «выдыхать» после ЕГЭ, самое время узнать как можно больше про ближайший университет, его студентов и преподавателей. Удачи.
Только зарегистрированные пользователи могут участвовать в опросе.
Описание профессии:
Программист - это специалист, занимающийся разработкой программного обеспечения (ПО) для персональных, встраиваемых, промышленных и других разновидностей компьютеров, то есть программированием. Это может быть как руководитель крупных проектов по разработке ПО, так и «одиночка», пишущий код конкретной программы.
Перед большинством предприятий и организаций рано или поздно встает вопрос автоматизации, и многие управленцы стремятся использовать достижения современных информационных технологий, поэтому программист является своего рода консультантом, выполняющим посредническую функцию между тем, чего желает получить руководитель, и тем, что предлагает на данный момент мир высоких технологий.
В тех разработках, где нужен прежде всего поиск творческих решений, российские профессионалы считаются наиболее сильными во всем мире.
Различают системных и прикладных программистов. Прикладной - это специалист, который осуществляет разработку и отладку программ для решения различных задач. Системный - специалист, занимающийся разработкой, эксплуатацией и сопровождением системного программного обеспечения.
Программирование возникло тогда, когда появилась первая электронно-вычислительная машина, а может немного ранее. В 1944 году была разработана мощнейшая по тем временам вычислительная машина «Марк-1», а уже в 70-х годах ХХ века эта профессия стала престижной и хорошо оплачиваемой, не смотря на то, что развитие программирования в различных странах эволюционировало совершенно по-разному. Без программистов сложно представить нашу нынешнюю жизнь. Интернет играет важную роль в развитие бизнеса и не только. Если нужно найти информацию, мы ищем через поисковую систему подходящие веб-ресурсы. Собственный сайт помогает в работе, является визитной карточкой фирмы. Если бы не умение программистов создавать нечто уникальное, то на Интернет страшно было бы смотреть.
Личные качества:
Практически ежемесячно выходят новые версии программ, обновляются характеристики оборудования, и специалисты в области информационных технологий должны быть всегда в курсе этих изменений. Поэтому способность к самообучению – один из главных навыков, которым должен обладать программист.
Владение английским языком на уровне чтения технической документации является еще одним обязательным требованием, предъявляемым к представителям этой профессии. Для таких специалистов очень важно умение работать: в команде, над большими проектами, со средствами коллективной разработки, с крупными финансовыми системами (бюджетными, банковскими, управленческого учета). Для претендентов на позицию ведущего программиста желательны навыки управления проектами и коллективом, самостоятельность, инициативность, а также способность нести личную ответственность за поставленную задачу.
Образование (Что надо знать?):
Программистов готовят во множестве высших учебных заведений. Хотя в этой сфере успешно работает и множество специалистов с другим образованием, а иногда даже вообще без высшего образования.
Много хороших программистов - самоучки.
Самым важным в процессе обучения является не столько прослушивание лекций, сколько решение задач и участие в различных учебных проектах. Будущему программисту важно научиться думать, находить верные решения, «шевелить мозгами». Информационные технологии развиваются очень быстро, поэтому для таких специалистов необходимы навыки самообразования, чтобы после получения основного диплома идти в ногу со временем и не терять квалификации. Специалисту в этой области нужно знать языки программирования, уметь создавать веб-страницы, владеть иностранным языком (английским как минимум) и постоянно совершенствовать свои знания, так как через несколько лет он может оказаться не удел. Не все программисты создают сайты. Есть те, которые разрабатывают программы специально для работы конкретного предприятия (прикладные программисты).
Место работы и карьера:
В основном в России требуются программисты -"прикладники": практически любая компания сегодня нуждается в автоматизации своего бизнеса, в возможности работать по внутренней компьютерной сети и быстро обмениваться информацией в электронном виде между подразделениями и отделами, вести учет продукции, закупок, реализованного товара.
Они адаптируют, а если нужно, и разрабатывают пакет специальных программ, учитывая особенности бизнеса организации: одно дело автоматизировать деятельность издательского дома, другое - торговой фирмы или ресторана.
Однако многим предприятиям требуется не только автоматизация бизнеса, но и постоянный мониторинг налаженной системы, ее изменение в случае расширения компании, поэтому работодатели готовы к зачислению программистов к себе в штат.
Все же некоторые организации предпочитают заказывать автоматизацию своего бизнеса специализированным ИТ-компаниям, предоставляющим такие услуги.
Способность к самообучению - один из главных навыков, которым должен обладать программист. Особым спросом на рынке труда пользуются программисты 1С - те же «прикладники», но адаптирующие уже готовый пакет программ фирмы «1С» к нуждам конкретного предприятия, главным образом бухгалтерии. Анализируя требования заказчика, они устанавливают программы, которые облегчают расчеты, оптимизируют работу персонала, налаживают документооборот.
Еще одна сфера деятельности программиста - web-программирование: разработка, модернизация и поддержка сайтов. Эта область требует многих специфических знаний - PHP, MYSQL, XHTML, CSS, JavaScript, XML. Причем очень часто работодатели желают получить профессионала «два в одном» - web-дизайнера и web-программиста, чтобы он не только решал технические вопросы (быстрая загрузка сайта, работа ссылок, поисковика), но также занимался и оформлением сайта, а иногда даже и его информационным наполнением.
Можно основать собственный бизнес, который потенциально может оказаться очень доходным (достаточно вспомнить, что Билл Гейтс, основатель корпорации Microsoft, стал благодаря своему детищу самым богатым человеком в мире). Однако для того, чтобы успешно управлять таким бизнесом, недостаточно уметь создавать хорошие компьютерные программы; для этого требуются основательные знания в области экономики, юриспруденции, менеджмента.
Родственные профессии:
Веб - Дизайнер, системный администратор, верстальщик
Профессию «программист» каждый выбирает по своей конкретной причине. Один решил просто менять специальность, второй вынужден осваивать еще одну профессию, третий не смыслит себя без кодов, а кто-то идет в профессию просто из любопытства.
Так или иначе – все начинают с нуля. И прежде чем с этого самого нуля начать – задайтесь вопросом, действительно ли вам нужна эта профессия?
Суть работы программиста зависит от специализации и компании.
Впрочем, иногда программист – и «швец, и жнец, и на дуде игрец». Но это, как правило, в маленьких фирмах, начальники которых экономят на специалистах.
Главные качества хорошего программиста
Какие знания нужны будущему программисту?
Также нужно будет изучить…
Многое зависит от выбранного направления.
Если у вас нет знакомых, которые могут обучить вас с нуля профессии программиста, то у вас есть несколько вариантов обучения:
Обычно на самостоятельное изучение основ программирования уходит от полугода до 12 месяцев.
Естественно, устроиться в нормальную компанию без опыта работы вы просто не сможете.
Поэтому…
Средняя зарплата программиста в крупных городах страны – от 50000 до 200000 рублей .
По России в целом – от 35 тысяч до 120000 .
Профессия входит в список самых востребованных — и самых солидно оплачиваемых. Даже скромный специалист способен заработать на бутерброд с икрой, а уже профессионал в деньгах нуждаться точно не будет.
От стажера до руководителя IT-отдела – путь не такой уж долгий, а зарплата на самом верху может достигать и 4000 долларов ежемесячно. Ну а потом можно двинуться и в руководители крупного проекта (прим. – по разработке ПО), а тут уже зарплата превышает 5000 долларов.
Читать: 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-разработчики, которые только учатся. А наиболее оплачиваемые на рынке труда – архитекторы ПО и системные инженеры, на которых лежит ответственность за продукт или проект в целом. Поэтому диапазон зарплат программистов может быть очень широким:
Сейчас отрасль IT в целом и программирование в частности находятся на пике востребованности. Компании конкурируют за квалифицированных специалистов. В перспективе ближайших 5 лет программистов ждет благополучная жизнь и высокие зарплаты, потому что молодых кадров станет немного меньше. Придет период демографической ямы из-за низкой рождаемости в начале 90-х гг.
Но рынок IT ждет несколько опасностей. Во-первых
, обучение программированию сейчас начинается уже практически с детского сада. Самые известные обучающие языки - это Scratch от MIT и Blockly от Google. Вероятно, навык программирования будет настолько же распространен, как знание английского языка, то есть будет входить в "джентльменский набор" при приеме на работу. А если им владеет почти каждый, то и ценность работы снижается.
Во-вторых
, IT-образование сейчас дает почти каждый колледж и вуз. После дефицита рынок может "насытиться" профессиональными программистами, и их зарплаты упадут.
В-третьих
, есть страны, в частности Индия, где IT-образование развивается еще быстрее. И в определенный момент услуги программирования насытят мировой рынок, как сейчас произошло с товарами, произведенными в Китае. С индийскими программистами трудно будет конкурировать в цене.
Если вы хотите получать свежие статьи о профессиях , подпишитесь на нашу рассылку .