Программист связь с другими специальностями. Чем же занимаются программисты, и как объяснить это остальным? Личные качества программиста

Программист

Программистами обобщенно называют категорию людей, занимающихся разработкой алгоритмов и программ на основе математических моделей. Условно программистов можно разделить на три категории:

Прикладные программисты. Такие специалисты занимаются разработкой конкретных программ, необходимых для работы организации. Например, сюда можно отнести программистов 1С.

Системные программисты программируют операционные системы, интерфейсы к распределенным базам данных, работают с сетями.

Web-программисты имеют дело с сетями, но, как правило, с глобальными, такими, как Internet. Они пишут web-интерфейсы к базам данных, создают динамические web-страницы и т.п.

Специфика профессии:

Плюсы профессии:

Постоянное профессиональное самосовершенствование,

Высокий спрос на рынке,

Высокая заработная плата,

Работать можно не имея диплома,

Преимущественно творческая профессия.

Минусы профессии:

То, что понятно программисту, не всегда понятно пользователю приходится многое объяснять,

Случается работать в авральном режиме,

Работа за компьютером плохо сказывается на здоровье,

И здесь находится место рутине,

Профессия накладывает отпечаток на характер.

Место работы:

Научно-исследовательские центры,

IT-компании,

Организации, которые в свой структуре подразумевают отделы программистов (или штатную единицу).

Личные качества:

Прежде всего, программист должен обладать терпением и выдержкой. Это совершенно незаменимые качества в его работе.

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

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

Карьера и зарплата:

Руководитель группы программистов, IT-директор, менеджер проекта, можно перемещаться в рамках специальности, совершенствуясь профессионально.

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

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

Хорошим стартом карьеры может стать присоединение к группе программистов при разработке какого-либо проекта. Крупные проекты часто привлекают внимание западных компаний, которые «перекупают» российских программистов. К примеру, когда-то группа наших молодых ученых разрабатывала процессор «Эльбрус» для Минобороны, а в итоге их всех перекупила корпорация Intel, и теперь наши ученые и программисты работают за рубежом, а сам проект «Эльбрус» потихоньку закрылся. Проблема «утечки мозгов» в этой профессии – одна из самых острых. Впрочем, и в России сегодня у программистов работы предостаточно – они нужны как отечественным компаниям-разработчикам программного обеспечения, так и любой фирме, где существует компьютерная сеть и необходимо адаптировать и настраивать ПО для нужд организации.

К лидерам рынка IT в России можно отнести «Лабораторию Касперского», R-Style, ЛАНИТ, EPAM Systems и др.

Я бы BIOS изобрел…

Спрос на рынке труда на программистов высокий, но и конкуренция соответствующая. Найти интересную и высокооплачиваемую работу вам удастся только в том случае, если вы знаете свое дело «на отлично». Одной из самых сложных в программировании считается разработка системного программного обеспечения – сервисов, которые управляют компонентами вычислительной системы (процессором, коммуникационными и периферийными устройствами, а также тех, которые предназначены для обеспечения функционирования и работоспособности всей системы (загрузчики, операционные системы, драйверы устройств и т. д.). Такие специалисты в России сегодня не слишком востребованы, поскольку практически все продукты подобного рода производятся за рубежом. Поэтому есть шанс найти высокооплачиваемую работу в западных компаниях.

Творцы и «кодировщики»

Другой фронт работ для программистов – разработка и создание программного обеспечения (ПО), предлагающего определенные услуги пользователям (текстовые редакторы, бухгалтерские программы, игры, ПО для систем видеонаблюдения, базы данных и др.).

Требования к таким программистам зависят от потребностей работодателя: от базового знания самых популярных языков программирования (Delphi, Java, C++ и др.) и умения устранить неисправность любой оргтехники до таких редких навыков, как разработка Lotus Notes, знание WinSock, WinInet, ATL, STL и т. д.

Востребованы сегодня и специалисты, адаптирующие уже готовые программы (в основном «1С: Бухгалтерия», «1С: Склад» и т. д.) под особенности конкретного предприятия.

Web-программеры

Интернет с каждым годом развивается все более активно, и не иметь своего web-сайта для организации уже просто несерьезно. Соответственно, неуклонно растет потребность в профессионалах, способных создать сайт и обеспечивать его техническую поддержку. Традиционные требования к веб-программистам: знание PHP, MySQL, JavaScript, HTML, DHTML, CSS, XML и т. д. Зачастую программистам приходится заниматься и web-дизайном.

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

Другой вариант – найти место в компании, профессионально занимающейся разработкой web-сайтов по заказу.

Карьера & Зарплата

Первой ступенькой карьеры может стать должность программиста-стажера. Крупные IT-компании часто публикуют подобные вакансии. Необходимо иметь хорошую теоретическую подготовку, желательно знать языки высокого уровня (C++, VB, VFP, C#, VB. Net.). Зарплата стажера – около $ 1000. Штатный программист в компании среднего уровня (не IT) получает до $ 1500-1800, чуть больше – в организации, связанной с массовой разработкой ПО. Зарплата ведущего программиста – $ 2500-3000. Следующая ступень – руководитель IT-отдела. К необходимым знаниям добавляется обязательный опыт работы, владение иностранным языком, навыки управления персоналом и др., а заработок может достигать $ 4000. Хороший программист может стать руководителем крупного проекта по разработке ПО, и тут уровень доходов достигает $ 5000 и выше.

Многие программисты предпочитают не работать в штате компании, а быть фрилансерами (т. е. «свободными художниками») и выполнять разовые заказы, не выходя из дома. Фрилансер получает вознаграждение, напрямую зависящее от сложности проекта. За типовое задание, выполнение которого занимает два-три дня, можно получить $ 300-500. Верхняя граница оплаты может быть абсолютно любой ($ 3000 и выше). Плюс этого способа работы в том, что можно одновременно выполнять несколько заданий разных работодателей, зарабатывая, таким образом, намного больше.

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

Кому подходит профессия

Вы вовсе не обязаны уметь собирать компьютер с завязанными глазами и переустанавливать программное обеспечение одним взглядом на мышь. Конечно, ощутимо легче будет учиться тому, кто уже интересуется компьютерами. Однако важно другое: верите ли вы всей душой, что развитие технологии - это правильно, что надо искать моменты, требующие усовершенствования, и автоматизировать различные процессы, чтобы многомиллионным количеством операций они проходили без участия человека. (Например, в сфере биржевой торговли ценными бумагами ежедневно проводятся по счетам за средний день даже около 1,3 миллиарда сделок: 99,9% - автоматически, и только для 0,1% оставшихся требуется участие человека.)

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

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

Суть дела и широкие возможности

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

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

Давайте окинем взглядом профессионала… библиотеку, например. Какие процессы требуют здесь нововведений? Возможно, это накопление информации о различных авторах и темах, построение каталога библиотеки по выбранному признаку… Или процесс приема и выдачи книг - кстати, а почему бы не ускорить его благодаря применению штрихкодового сканера? Так и читательская задолженность будет определяться точнее, и библиотекари станут радостнее!

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

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

Автоматизация нужна повсеместно. Кассиры в магазине пробивают чеки с помощью сканера штрихкодов, настроенного на ассортимент этого магазина и на его бухгалтерские документы. На заводе информация о каждой детали тоже поступает в бухгалтерскую программу напрямую со станка. В стоматологической клинике ваша карта ведется в электронном виде; во многих западных и в некоторых наших медицинских лабораториях обработка анализов производится автоматически, без участия человека. Бухгалтеры работают с системами R-keeper, 1C, SAP-R3, автоматизирующими их труд.

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

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

Должностные обязанности

Аналитик в основном общается с командой разработки и с заказчиком (проект может быть и сторонним, и внутренним). Он собирает сведения и у заказчиков, и у предполагаемых пользователей продукта и описывает это для команды разработки в понятных для нее терминах. Отвечает на вопрос: что надо сделать? Именно аналитик занимается наиболее соответствующей специальности деятельностью.

Программист - член команды разработки. Отвечает на вопрос: как надо сделать? Получает информацию либо напрямую от заказчика и пользователей (если проект совсем маленький и не предполагает аналитиков), либо от аналитика и из документов, которые тот подготовил. После этого он создает программу.

Тестировщик - инженер по тестированию. Увы, роль этого специалиста в проекте недооценивают. Однако именно тестировщик, или тестер, отвечает за качество продукта: он составляет сценарии проверки программы, чтобы покрыть максимально возможные варианты ее использования и выявить максимально возможное число сбоев в ее работе, а также максимально возможное количество ошибок программиста.

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

Дополнительные требования

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

Для этой работы нужны и хорошо развитые коммуникативные способности. Одно из основных умений - умение доказать и показать, что всё хорошо придумано. Очень сложно доказать клиенту, что он неправ. А еще сложнее признать потом, что именно клиент был прав, потому что «идеальный» сценарий не работает.

Но есть и еще более важное умение - умение признать клиента основным носителем знаний в его предметной области. Увы, очень часто специалист додумывает за клиента, что тому якобы нужно, а потом клиент удивляется: сделано даже то, о чем не просили. Впрочем, бывает, что клиент и сам не знает, чего он хочет. Либо формулирует свои пожелания неточно и невнимательно, поскольку просто не понимает, что же еще надо объяснить: для него-то всё очевидно.

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

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

Базовые знания

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

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

И хорошо бы уметь играть в шахматы - это разовьет логическое мышление.

Выбор вуза и учеба

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

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

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

Необходимо постоянно учиться новому

Прикладник учится всегда. А учиться нужно процессам производства программ и технологий, изучать и сами новые технологии, используемые в конкретном проекте, осваивать новые области приложения знаний, постигать по-другому поставленные бизнес-процессы. Результата в обучении надо достигать очень быстро - и так же быстро переключаться между разными знаниями, которые уже есть. За то время, пока вы студенты, будут придуманы новые алгоритмы проектирования процессов, новые способы автоматизации, новые программы для документирования - всё станет по-новому.

В области информационных технологий изменения носят нерегламентированный и зачастую недокументированный характер. Различных технологий на сегодняшний день столько, что специалисту с большой вероятностью придется работать в проекте, где часть применяемых технологий будет ему практически незнакомой. Попадая в проект, вы можете столкнуться с такой ситуацией, что не только вы не имеете ни малейшего представления, как работать с новой технологией, но и матерые специалисты тоже не в курсе дела. И это нормально. Однако будет ли у вас время на доучивание? А не окажутся ли новые знания слишком сложными?

Однако еще только-только окончив вуз, вы уже окажетесь на одном уровне со многими коллегами в своей отрасли.

Программист: с компьютером на ты

Работные сайты перегружены вакансиями для программистов. Зарплата в $1000 сегодня считается минимальной…

Сфера информационных технологий (IT) в России развивается стремительно: темпы роста составляют 25% в год – это выше, чем в Европе и США. Российские вузы ежегодно выпускают до 100 тысяч программистов, и все равно спрос превышает предложение. Дефицит специалистов испытывает не только Россия. Профессионалов приглашают в иностранные фирмы (в частности США) для так называемого оффшорного программирования – работы под заказ зарубежных компаний. Российский специалист в такой фирме может получать $3-4 тыс. в месяц.

Вперед – в разработчики!

Самые высокооплачиваемые программисты – разработчики новых операционных систем, приложений и программ (MS Office, Adobe Photoshop и т. п.). Этим занимаются специалисты высшей квалификации таких иностранных фирм-производителей, как Microsoft, Sun, Oracle, Adobe и др. В отечественных компаниях подобные проекты редкость, пользователи устанавливают на свои ПК в основном западные продукты. Отдельные российские фирмы-разработчики программного обеспечения существуют, но их немного (например, «Лаборатория Касперского», которая выпускает антивирусные программы). Созданием программ занимаются и государственные структуры: НИИ и конструкторские бюро военно-промышленного комплекса, космонавтики, но зарплаты здесь несопоставимы с зарплатами в коммерческих организациях.

Поиграем на работе?

Отдельный фронт работ программиста – разработка компьютерных игр. На Западе это бизнес, где крутятся огромные деньги. Полугодовой доход зарубежных гигантов игровой индустрии Electronic Arts и Activision – сотни миллионов долларов. В России суммы, конечно, меньше в разы, но направление это активно развивается, и некоторым отечественным компаниям удалось занять свою нишу в этом бизнесе – «Нивал», «Аккела», «КД-Лаб»… Сегодня в России и странах СНГ разработку игр ведут около 200 фирм. Конкуренция между компаниями жесткая и опытные программисты нужны постоянно. Именно они создают трехмерные ландшафты для будущих стратегических игр, «объясняют» компьютеру принципы движения персонажа в катакомбах лабиринта, разрабатывают искусственный интеллект противников, занимаются спецэффектами, анимацией и т. д. Работа интересная, правда, зарплата в российских фирмах-разработчиках, как правило, невелика ($600-1500 в месяц), тогда как в США даже начинающий специалист получает от $4 000 в месяц.

Бизнес в компьютере

Выбирайте эту сферу, если Вы:

Любите информатику

Обладаете техническим складом ума

Внимательны, собранны

Готовы решать сложные технические задачи

Не выбирайте эту профессию, если Вы:

«Не дружите» с математикой

Не хотели бы заниматься «сидячей» работой

Носите очки от – 5 диоптрий

Не знаете, что такое «Бейсик», «Паскаль», «Ассемблер»

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

Многие предприятия готовы взять такого специалиста в штат – не только для разработки и автоматизации бизнеса, но и для постоянного мониторинга налаженной системы, ее изменения в случае расширения компании. Другие фирмы предпочитают заказывать автоматизацию своего бизнеса специализированным IT-фирмам, предоставляющим такие услуги. Здесь тоже нужны программисты, а работа интереснее, клиенты меняются, приходится иметь дело с разными организациями и решать разные задачи.

В помощь бухгалтеру

Особым спросом на рынке труда пользуются так называемые «программисты 1С» – те же прикладники, но адаптирующие уже готовый пакет программ фирмы 1С к нуждам конкретного предприятия, главным образом – бухгалтерии. Анализируя требования фирмы, они устанавливают программы, которые облегчают расчеты, оптимизируют работу персонала, налаживают документооборот. Такие программисты особенно востребованы торговыми компаниями, реже – производственными. Например, в автосалоне работа программиста 1С позволит оперативно учитывать операции по продаже, реализации и хранению автомобилей, в типографии – рассчитать количество материала на заказ, оформить заказ и т. д. В ресторане – облегчить все операции, связанные с закупкой и хранением продуктов, производством и реализацией блюд, взаиморасчетом с поставщиками, покупателями и сотрудниками. Зарплаты в этой сфере от $1300 до $2000.

С головой в интернет

Престижная и высокооплачиваемая работа

Высокий спрос на специалистов

Возможность работать не только в России, но и за рубежом

Высокая конкуренция на рынке труда

Тяжелая учеба

Рутинный кропотливый труд (в большинстве случаев)

е один вариант работы для программиста – web-программирование: разработка, модернизация и поддержка сайтов. Эта сфера требует знаний многих специализированных программ (PHP, MYSQL, XHTML, CSS, JavaScript, XML). Очень часто работодатели желают получить специалиста «два в одном» – web-дизайнера и web-программиста, чтобы он не только решал технические вопросы (быстрая загрузка сайта, работа ссылок, поисковика), но и занимался оформлением сайта и даже его информационным наполнением.

Web-программисты сегодня одни из самых востребованных специалистов, а с развитием интернета в России работы только прибавится.

Не торопитесь с работой!

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

Постоянное самообразование – необходимое условие для работы программистом. Ежемесячно выходят новые версии программ, обновляются характеристики оборудования и нужно быть в курсе всех изменений. Даже незначительное отставание делает программиста профнепригодным.

Профессий»Дипломная работа >> Психология

По значимости этого понятия обозначены профессии программиста , журналиста, врача и психолога. Именно в этих... взрослых, характеризуют идеал. Такими профессиями оказались профессии «менеджера», «программиста» , «журналиста», «юриста». Это подтверждает...

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

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

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

Программирование зародилось в 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-образование развивается еще быстрее. И в определенный момент услуги программирования насытят мировой рынок, как сейчас произошло с товарами, произведенными в Китае. С индийскими программистами трудно будет конкурировать в цене.

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

Что первое приходит вам в голову, когда вы узнаете о человеке, что он IT-шник, программист или разработчик? Он прилично зарабатывает, работает в иностранной компании, разбирается в компьютерах. А как на самом деле обстоят дела у специалистов? Сегодня поговорим о плюсах и минусах профессии программиста.

Плюсы

Высокий доход

Вряд ли кто-то будет спорить с тем фактом, что IT-отрасль сегодня предлагает наиболее высокий уровень зарплат. Причем, это общемировая тенденция. Например в США медианная зарплата разработчика на С# составляет $60-100 тыс в год (без учета бонусов) в зависимости от уровня позиции.

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

Более того, ряд IT-компаний предлагают своим сотрудникам льготные условия по кредитованию строительства жилья, что очень актуально для молодых специалистов.

Свободный график

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

Например, каждый сотрудник московского офиса Google может использовать 20% рабочего времени на собственные проекты. К тому же компания полностью оплачивает питание сотрудников в офисе.

Московский офис компании Google – фото the-village.ru

Отдельная интеллектуальная каста

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

Также программист по умолчанию считается человеком высокоинтеллектуальным и образованным. Это именно те люди, с которыми можно обсудить последнюю книжку Хокинга, свежие новости об адронном коллайдере и вечную тему «Android против iOS».

Перспектива работать в крупной иностранной компании

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

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

Профессия будущего

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

Можно с уверенностью говорить, что до изобретения полноценного ИИ (искусственного интеллекта) программисты будут востребованы.

Трудности профессии

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

Подходит далеко не всем

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

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

Именно на первом этапе освоения профессии вы сможете ощутить «избранность». Ведь вы сделали это! Прошли обучение, получили первые навыки и готовы взяться за создание настоящего программного продукта.

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

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

«Первый блин комом» – это история не про программистов. У них все блины комом – от первого до последнего. Именно здесь вам пригодится усидчивость, настойчивость и недюжинное терпение, чтобы довести свой продукт до рабочего состояния.

В то же время – это прямая подсказка в работе. Если что-то не получается с первого раза, не беда, это обычное дело, нужно просто «закатать рукава» и проверить код на ошибки.

Непоседам здесь не место

Программист постоянно привязан к своему рабочему месту. Если вы не любитель сидеть в офисе и по 8-10 часов проводить за компьютером, вам придется задуматься о выборе другой профессии.

В этом, как ни странно, есть и свои плюсы. Дело в том, что большинство IT-компаний стараются сделать рабочее место для своих сотрудников наиболее комфортным. А это и игровые зоны прямо в офисе, комнаты отдыха и релаксации, современное оборудование для работы и много других «плюшек», о которых обычному офисному работнику остаётся только мечтать.

Нельзя останавливаться в развитии

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

Стоит вам хоть на пару месяцев расслабиться и ваши коллеги пойдут дальше, а вы для компании станете самым слабым звеном. Программисты обычно читают мало художественной литературы, но перелопачивают «тонны» профессиональных изданий. Если вы не любите читать – в профессии вам делать нечего.

К слову, этот минус легко трансформируется в плюс, если вы будете постоянно учиться чему-то новому, оттачивать свои навыки. За таким активным и постоянно растущим сотрудником IT-компании нередко сами устраивают «охоту».

Высокий уровень владения английским

Что тут скажешь, технический английский на уровне свободного чтения специализированной литературы – просто must have. Английский язык для программиста – это родной язык профессии, без него сегодня просто никак.

С другой стороны в этом есть и свой плюс. С хорошим знанием английского вы не пропадете практически в любой стране мира. Кроме того, многие IT-компании предоставляют курсы по английскому языку для своих сотрудников, включая стажеров.

Подведем итоги

Плюсы профессии программист:

    Высокий доход;

    Свободный график;

    Отдельная интеллектуальная каста;

    Перспектива работать в крупной иностранной компании;

    Профессия будущего.

Трудности профессии программист:

    Подходит далеко не всем;

    Невозможно получить результат с первого раза;

    Непоседам не подходит;

    Нельзя останавливаться в развитии;

    Высокий уровень владения английским;

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

Наверное, у каждого программиста возникала ситуация, когда совершенно не знакомые с IT люди просили его объяснить, в чём же состоит суть его профессии. Так уж сложилось, что у большинства людей понятие «программист» ассоциируется либо с замкнутым гиком в очках и свитере, либо с неким гениальным красноглазым подростком-хакером - но при этом никто не знает, чем именно он занимается.

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

- Чем занимаются программисты? Это не так-то просто рассказать… Ответьте мне для начала: как в двух словах можно описать, например, суть профессии хирурга?
- Хирург проводит операции.
- Да, отличное описание! Ну а, скажем, футболиста?
- Играет в футбол!
- Угу, а хирург «занимается хирургией». А если без однокоренных слов?
- Пинает мяч?
- Вот это точно. А что же делает программист, кроме как «разрабатывает программы»?
- …
- Программист пишет код . Исходный код своей программы, составленный на каком-то специальном языке программирования. Точнее говоря, сначала он продумывает структуры своих данных, потом составляет алгоритмы для работы с этими структурами - ну а затем уже представляет это в виде кода.
- Что ещё за «структуры данных»? Разве он не управляет компьютером, не нажимает кнопки?
- Эх...

Миф №1: программист работает с компьютерами

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

- Ну как, понятно?
- То есть, программист просто сообщает машине, что бы он хотел сделать - а она это исполняет?
- Ну да, примерно.
- Так же, как начальник отдаёт распоряжения подчинённым?
- Вроде того.
- А если машина захочет исполнить это как-то по-другому?
- В смысле?
- Ну, что-то ей не понравится. Или просто исполнять не захочет.
- Так, давайте уясним раз и навсегда, что...

Миф №2: машина умеет думать

Почему-то немалое число людей реально считает, будто компьютер обладает каким-то интеллектом. На самом деле - это просто набор железок, которые думать не умеют. Они умеют лишь хранить числовые данные. Размагничен какой-то участок такой железки - значит, это ноль. Намагничен - единица. Плюс, ещё они могут складывать и вычитать эти единицы, образуя более сложные числа (о двоичной системе счисления лучше не стоит упоминать). Больше компьютер сам ничего делать не умеет, только хранить числа и оперировать ими. Это бездумный болван, который лишь выполняет команды программиста.

- В общем, код любой программы представляет собой набор команд, а компьютер их тупо исполняет.
- То есть, он не понимает сути самих команд? Но как он воспринимает текст, который я ввожу на экране?
- Когда ты крутишь педали на велосипеде - понимает ли он, что ему сейчас нужно поехать вперёд?
- Нет, но ведь едет. Поскольку его цепь преобразует вращение педалей во вращение колёса.
- Именно! Также и компьютер преобразует введённый тобой текст в набор чисел.
- Каким образом?
- У каждого символа текста есть свой числовой код, который знает компьютер. Это называется кодировкой. Например, английская «a» кодируется числом 97, а знак равенства - числом 61.
- Поэтому машина и может понимать текст, который мы ей сообщаем?
- Нет, она «понимает» не смысл. А лишь то, каким образом этот текст хранить, и как к нему обращаться.
- Выходит, сначала мы вводим текст, затем компьютер разбивает его на символы, а каждый символ уже представляет в виде числа?
- Верно. Сложные структуры представляются в виде более простых , которые и «понимает» машина.

Скажите мне, из чего состоит жилой дом?
- Ну… Из этажей.
- А из чего состоят этажи? И так далее.
- Этажи - из стен. А стены - из кирпичей. А кирпичи…
- Вот числа для компьютера - это то же, что и кирпичи для дома. Символы - это стены. Отдельные предложения - этажи. А книги - целые дома! Но у программистов есть преимущество перед строителями.
- Какое?
- Строитель не может строить целыми этажами, он вынужден всегда класть кирпичи. Даже если некий сверхмощный подъёмный кран позволит ему строить готовые этажи, он не сможет строить им целые дома или жилые кварталы. А программист сможет! Раз он уже «обучил» машину понимать конечный текст - то, по сути, он «обучил» подъёмный кран строить готовый дом за одно действие.
- То есть, программист может использовать всё более и более сложные структуры данных?
- Да. Поэтому первая из составляющих его работы - представить понятные человеку данные (текст, изображение, звук) в виде объединения более простых данных, уже понятных компьютеру. Разработчик практически «с нуля» составляет структуру, которая должна полностью описывать понятную человеку вещь - причём таким образом, чтобы эта структура была легко расширяемой и изменяемой (ведь в программу часто приходится вносить какие-то новые возможности).
- Хех! Выходит, что он строит резиновые дома из съёмных панелей!
- Примерно так. Однако, ещё ему придётся не только описать, что же ему нужно построить - но и как всё это построить. То есть, придумать алгоритм. Это вторая из составляющих его работы.
- Программист придумывает алгоритм на каждое действие?
- Именно. Поэтому алгоритмов получается очень много. Но его работу облегчает то, что одни действия могут содержать в себе другие, уже описанные им ранее.
- И здесь ему на помощь приходит язык программирования?
- Не совсем...

Миф №3: язык программирования нужен для составления алгоритмов

Нет, язык - это всего лишь инструмент. Как гитара для музыканта. Само по себе умение играть на гитаре вовсе не гарантирует славы - потому что люди, как правило, восхищаются самой музыкой, а не умением быстро и чётко дёргать струны. С другой стороны, вряд ли кто придёт посмотреть на плохого гитариста, какую бы замечательную композицию он не исполнял. Также и с ЯП: знание его синтаксиса и связанных с ним нюансов очень важно, равно как и умение писать красивый и ясный код. Однако, если человек не умеет составлять алгоритмы и структуры данных - то он не может называться хорошим программистом.

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

- Правда, многие из нынешних языков программирования уже содержат «в себе» набор заранее составленных алгоритмов, которые разработчик может использовать в качестве готовых. Поэтому язык всё же немного облегчает процесс составления алгоритмов.
- То есть, если один программист составил какой-то алгоритм, то его тут же могут использовать другие?
- Да, и это происходит постоянно. Это одна из причин, почему отрасль IT так быстро развивается. Однако новые алгоритмы приходится составлять самому.
- А составь какой-нибудь прямо сейчас!
- Легко. Классический пример: у вас есть книга, в ней 1000 страниц. Вам нужно открыть в ней, к примеру, 875-ю страницу. Как бы вы стали это делать?
- Ну, просто пробежал от первой до 875-й, только и всего.
- Угу, и придётся тебе глядеть на номер каждой страницы. А представь, если все их уголки слиплись - сколько времени тогда пройдёт? А вот мне достаточно перебрать лишь 3 страницы!
- Как?
- Вначале я выберу страницу, которая находится посередине книги, то есть 500-ю. Потом посмотрю: в какую из образовавшихся половин должна попасть искомая страница?
- Во вторую. А дальше что?
- То же самое. Интервал с 500-й по 1000-ю я снова поделю надвое, открыв центральную страницу. Получится интервал от 750-й страницы до 1000-й, в нём я опять выберу центральную. Какой будет номер?
- 750 плюс 125… Так это же и есть 875!
- Вот видишь. Всего 3 действия! Даже если я буду не совсем точен при выборе центральной страницы, я всё равно найду нужную намного быстрее тебя. Этот алгоритм носит название «дихотомия». Хотя в реальности программисты используют куда более сложные алгоритмы.
- И ты можешь записать его на бумаге?
- Конечно. Где там моя ручка?

Псевдокод

повторяем цикл: ищем(в книге, центральную_страницу); если (центральная_страница = искомой_странице) выходим из цикла; иначе если (центральная_страница < искомой_страницы) удаляем(в книге, все страницы от первой до центральной); иначе удаляем(в книге, все страницы от центральной до последней);


- Ну как, алгоритм ясен?
- Хм… Да, и впрямь ясен.
- Сейчас он записан в виде, уже слегка похожем на реальный программный код.
- А в чём отличия?
- В реальном коде все слова будут написаны на английском, а также будет заранее описана структура «книга» (помните, что я раньше рассказывал про структуры данных?). Плюс, для действий «ищем» и «удаляем» тоже будут составлены свои алгоритмы. Но в целом - всё то же самое.
- И ты занимаешься этим изо дня в день?
- В основном.
- И тебе не скучно?
- Ничуть!

Миф №4: программирование - это скучно

Конечно, разработка вполне может наскучить, если заниматься только рутинными и однообразными делами. Например, составлением очень простых алгоритмов, но в большом количестве. Или монотонным поиском ошибок в чужом коде. Но это же касается и любой другой работы - рутина везде убивает творческий процесс. А творчества в программировании немало, написание кода похоже на написание художественной книги. Только, в отличие от большинства писателей, программист сначала сам создаёт свой собственный мир (структуры данных) - а уже потом наполняет его сюжетом (алгоритмами).

Временами это действительно чистое творчество, где разработчик сам устанавливает собственные правила. Несмотря на то, что в мире данных и алгоритмов всё строго и логично, в нём присутствует своя красота. Любой программист может привести десятки примеров очень красивого кода, и ещё больше примеров уродливого. Программисты, как и все люди, тоже ошибаются: если где-то в исходном коде допущена ошибка, то задуманные алгоритмы могут работать неправильно. Поэтому код часто превращается в некий детектив - в котором идёт поиск очередного коварного бага, мешающего исполнению алгоритма, или нарушающего структуру данных…

- В шутку можно сказать, что в итоге получается какой-то детектив в выдуманном мире, выраженный с помощью языка программирования.
- А убийца в этом детективе - дворецкий?
- Ага, нулевой указатель. Бывает так, что весь отдел день-другой ловит особо назойливый баг, и каждый программист из отдела берёт на себя какой-то участок кода. Получается целое расследование, с наказанием виновных и награждением сопричастных…
- Хм, а это и впрямь интересно звучит!
- Вот видишь.
- А, скажем, я могу хоть немного научиться программированию?
- Да, конечно! Я знаю один сайт специально для этого...

От автора:

Данный диалог вполне реален, вплоть до финальной реплики. Конечно, он порядком приукрашен - но, уверяю вас, примерно так всё и было;)

Программист сегодня — одна из самых востребованных и распространенных профессий. Известность о ней такова, что, похоже, не нуждается в подробном рассказе. Популярными также стали и зарплаты программистов, и осведомленность в этом вопросе делает ее очень привлекательной. Но каков «входной билет», ведь если все так хорошо, какую цену придется заплатить?

Почему это так называется?

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

Сегодня программист создает компьютерные программы — перечень команд для компьютера — программный код, и как они сами в шутку говорят: «программист кодит».

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

Какими они бывают?

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

Программисты находят работу в интернет-компаниях (Яндекс, Гугл и пр.), трудятся над бухгалтерскими и кадровыми программами (1С, Контур, Босс, Парус, АйТи, Галактика и пр.), поддерживают работу систем управления предприятиями (ERP) SAP R3, ORACLE, Axapta, Navision и пр. или их модулей (отдельных больших программ).

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

Что делают современные программисты?

Сегодня все понимают, что профессия программиста сегодня становится профессией номер один. Программисты работают практически во всех областях. Даже в тех организациях, которые, казалось бы, были далеки от цифровых технологий: дошкольные учреждения, тюрьмы. Нынче ни одна организация не обходятся без доступа в интернет или какого-либо программного обеспечения.

Сегодня создаются продукты, анализирующие Big Date — огромные массивы данных, полученных из разных источников, например, перекрестная обработка данных из социальных сетей позволяет увидеть моральные ценности и политические взгляды разных категорий людей, их товарные предпочтения и пр. Этим пользуются политические партии, правительственные органы для управления мнениями и поведением людей. Скандал, поднятый в США по поводу вмешательства российских программистов в выборы президента, связан с эффектами именно таких технологий.

Другая прогрессивная и развивающаяся технология — робототехника. Робот — это не столько сервоприводы, видеокамеры и материалы, сколько программное обеспечение. Улыбку на человеческом лице создают несколько десятков пар мышц. Улыбку на лице робота создают несколько пар соленоидов, но управляют ими очень сложные программы.

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

Еще одна прорывная технология: поиск конкретного человека через уличные камеры, оценка его эмоционального состояния, что связано с технологиями распознавания лица человека. Так ищут, например, злоумышленников. Вернее, пытаются это делать во всех странах мира, однако наши технологии в этой сфере — самые сильные.

Какими качествами надо обладать?

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

А об усидчивости программистов ходят легенды и шутки. Все знают, что программисты работают допоздна и даже ночами напролет. Хотя, это, скорее, объясняется высокой мотивацией к работе. Да, программисты — очень увлеченные люди. Они понимают, что создают что-то новое и полезное.

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

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

Сегодня специалистов готовят по широкому спектру программистских специальностей:

«Прикладная математика и информатика», «Фундаментальная информатика и информационные технологии», «Математическое обеспечение и администрирование информационных систем», «Программирование в компьютерных системах», «Информатика и вычислительная техника», «Прикладная информатика», «Информационная безопасность» и другие.

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

Понятно, что основным экзаменом для учебы в вузе по этой специальности является математика.

Вместе с тем, существует и другой путь в профессию: получение дополнительного образования и даже самообразование.

Мой отец говорил мне в семидесятых годах, возможно, повторяя слова кого-то из основоположников кибернетики: «Образованный человек должен знать хотя бы один язык программирования». Слова пророческие, они означают, что программирование должен знать и неспециалист. Хотя бы для того, чтобы общаться с программистами, которые порой представляются нам «инопланетянами», которые на понимают нас, но и мы не постигаем их языка.

Программистами становятся также люди, обладающие близкими специальностями: физики, инженеры, финансовые специалисты. Нередко они оканчивают специализированные курсы, а чаще всего, занимаются самообразованием, самостоятельно постигая программирование. Как правило, они озадачены решением своих научных или практических проблем, требующих создания программ. И нередко они и сами разрабатывают для себя такие программы. Создав программу для себя, они доводят ее до коммерчески значимого образца, выходят на рынок программных продуктов и становятся профессионалами.

Как строится карьера в этой профессии?

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

Другой класс программистов — самостоятельные специалисты. Некоторые из них получили известность, и для них — это вершина карьеры. Такие программисты, словно художники или писатели, создают оригинальные и сильные продукты, которые приносят им славу.

Лет тридцать назад основатель компании Microsoft Билл Гейтс предложил миру идею и даже чертеж карманного устройства, который заменит телефон, паспорт, кошелек и прочее. Тогда мир еще не был готов ее реализовать. Сегодня мы видим ее воплощение. Но что важнее: устройство или программа, управляющая им? Он же как-то сказал про конкурента, сделавшего очередной компьютер, примерно следующее: «Ну сделал он очередную коробочку. А кто напишет для нее программу, чтобы она заработала?».

2024 logonames.ru. Финансовые советы - Портал полезных знаний.