Профессия программист С (Си)
Программист C (Си) создает системное ПО, драйверы, прикладные программы, используя язык программирования C. Профессия со стопроцентным техническим уклоном, подойдет тем, кто любит информатику и математику. Кстати, недавно центр профориентации ПрофГид разработал точный тест на профориентацию, который сам расскажет, какие профессии вам подходят, даст заключение о вашем типе личности и интеллекте.
Профессия подходит тем, кого интересует математика и информатика (см. выбор профессии по интересу к школьным предметам).Краткое описание
Язык программирования Си был создан во второй половине XX века, но до сих пор не теряет актуальности. Как утверждают разработчики языка, к его преимуществам относятся:
- отличная читаемость;
- высокая производительность;
- гибкость.
Язык C создали для системного программирования. Он «легковесный», рассчитан на работу с кодом низкого уровня, поэтому идеально подходит для разработки операционных систем (ОС) и ПО микроконтроллеров. На С пишут драйвера, ядра ОС, библиотеки для суперпопулярного Python и других языков. На языке Си полностью написаны Windows, Linux, Mac OS, а iOS и Android – частично.
Еще одно направление использования языка C – проектирование встроенных систем. Си экономно потребляет ресурсы системы, благодаря этому написанные на нем программы выполняются без задержек и встроенные системы работают быстро. Плюс к этому Си кросс-платформенный, не привязан к конкретному микропроцессору или системе, поэтому встроенную программу можно компилировать в разных устройствах и платформах с небольшими изменениями или вообще без корректировок.
Как все эти достоинства применяются? Автомобили-беспилотники, сенсорные интерфейсы, всевозможные промышленные и бытовые приборы и целые системы, использующие технологию IoT (Internet of Things – Интернет вещей), например, автоматические осветительные приборы и системы орошения, «умный дом» – все это работает на встроенном ПО, написанном на C или C++. Соответственно, эти многочисленные сферы – поле для приложения навыков программирования на языке Си.
Особенности профессии
С развитием относительно новых языков программирования, таких как Python, Kotlin, Swift, PHP, Си стал терять лидирующие позиции монополиста. Многие молодые программисты и вовсе считают его мертвым языком, однако это далеко не так: на протяжении 40 лет он входит в список самых популярных языков, а синтаксис Си стал основой для создания Objective-C, C++ и C#.
Согласно рейтингам TIOBE и IEEE, язык C стабильно входит в пятерку самых востребованных языков программирования. В TIOBE включаются языки, на которых написано больше всего строк кода. IEEE для ранжирования использует больше критериев – популярность в вакансиях на сайтах поиска работы, упоминания в сервисах для программистов, соцсетях и другие (всего 11 метрик).
Обязанности программиста C такие же, как задачи любого другого разработчика:
- создание программ;
- отладка, исправление чужого кода;
- интеграция ПО;
- определение возможностей использования продуктов;
- ведение технической документации.
Востребованность программистов C средняя, действительно грамотных разработчиков не слишком много. Сложность обучения заключается в недостаточном количестве дидактических материалов, многие действительно полезные книги о языке C устарели. Поэтому программист должен безупречно владеть разговорным и техническим английским языком, чтобы иметь возможность общаться с иностранными разработчиками. Си – основа основ, если вы заинтересованы в его изучении, то стоит начать с книги «Язык программирования Си», написанной Б. Керниганом и Д. Ритчи – создателем языка C (новичкам она может показаться сложной, так как требует от читателя знания основ программирования).
Плюсы и минусы профессии
Плюсы:
- Действительно талантливый программист C без проблем найдет высокооплачиваемую вакансию.
- Люди, владеющие языком программирования Си, легко изучают и C++, и C#, и Objective-C, и другие языки.
- Профессия открывает перспективы трудоустройства в крупные компании, в которых можно работать в том числе и удаленно.
Минусы:
- Высокий порог вхождения, немного обучающей литературы и курсов.
- Работа малоподвижная.
Важные личные качества
Чтобы стать программистом на языке C, нужны:
- способности к математике и аналитическому мышлению;
- технический склад ума;
- хорошая память;
- педантичность;
- требовательность к себе;
- ответственность;
- способность к самообучению;
- способность работать автономно, со сложными задачами и большим объемом работ;
- склонность к однообразной сидячей работе.
Обучение на программиста C
В профессию программиста могут быть два входа:
- Самостоятельное изучение программирования.
- Учеба в колледже, вузе или на курсах.
Язык C не самый простой для самостоятельного изучения, поэтому имеет смысл получить профессиональную базу в колледже или вузе. Для учебы на программиста в университете подойдут направления подготовки, связанные с прикладной информатикой и математикой, вычислительной техникой, программной инженерией:
- Прикладная информатика 09.03.03;
- Программная инженерия 09.03.04;
- Информатика и вычислительная техника 09.03.01;
- Фундаментальная информатика и информационные технологии 02.03.02;
- Математическое обеспечение и администрирование информационных систем 02.03.03;
- Прикладная математика и информатика 01.03.02 и другие айтишные направления бакалавриата.
В ссузах тоже есть из чего выбирать:
- Программирование в компьютерных системах 09.02.03;
- Информационные системы и программирование 09.02.07;
- Прикладная информатика (по отраслям) 09.02.05.
В ссуз можно поступить после 9 и 11 класса, срок обучения – от 10 месяцев до 3 лет 10 месяцев (длительность учебы зависит от базовой подготовки, программы). В вузе нужно учиться 4 года.
Лучшие ссузы
- КАИТ № 20.
- МКУГБИТ «Царицыно».
- Политехнический колледж им. Н. Н. Годовикова.
- Нижегородский радиотехнический колледж.
- КИМГ № 23.
Курсы
Онлайн-курсы Hexlet
На сайте доступен курс «Введение в Си», состоящий из 8 блоков. Предполагаемая длительность обучения составляет 19 часов, есть теоретическая и практическая части. Курс создан частным разработчиком, распространяется бесплатно.
Место работы
Программисты C востребованы IT-агентствах и в крупных компаниях, проектирующих и выпускающих «умное» производственное оборудование, бытовую технику, разрабатывающих системное ПО, базы данных.
Оплата труда
Уровень оплаты труда программистов C зависит от их профессиональных навыков и опыта работы (Junior, Middle, Senior). Для трудоустройства в крупные компании понадобятся рекомендации от работодателей и несколько успешно выполненных работ.
Профессиональные знания
- Язык программирования Си и 1-2 дополнительных языка.
- Turbo C, pcc, make.
- Visual Studio, HLS streaming.
- Препроцессор Си.
Полезная информация
- Киберфорум, раздел для программистов С: http://www.cyberforum.ru/c/.