По специфике выполняемых работ программистов можно разделить на три типа:
Прикладные программисты
Разрабатывают и поддерживают работу программного обеспечения, которое может использоваться для работы, общения или развлечения (приложения прикладного характера): текстовые редакторы, мессенджеры, бухгалтерские программы, игры и т.д. Эти специалисты также могут заниматься созданием программного обеспечения для систем безопасности, систем видеонаблюдения, пожарной сигнализации и других специальных программ, необходимых для работы в различных профессиональных или научных областях. Прикладным программистам может быть под силу создать даже робота. Часто используют в работы такие языки программирования, как C++,C#, Java.
Системный программист
Разрабатывает, соответственно, операционные системы, базы данных, работает с сетями. Они создают сервисы – целые системы программного обеспечения, которые должны управлять вычислительными системами, состоящими из процессора, коммуникационных и периферийных систем. В обязанности системщиков входит также поддержание работы и функционирования созданных систем (создание драйверов, загрузчиков и т.д.). Системные программисты встречаются довольно редко и, при этом, высоко оплачиваются. В работе ему могут пригодиться языки программирования C, C++, bash-script, Delphi.
Web-программисты
Они тоже работают с информационными сетями – локальными и глобальными. В круг их профессиональных умений и обязанностей входит написание программной составляющей для сайтов, web-страниц, а так же создание web-интерфейсов для работы с базами данных. Web-программисты пишут, в основном, на языках PHP, Ruby, Python, Javascript, Perl.
С первого взгляда может показаться, что все программисты заняты чем-то очень похожим. Однако, если web-программисту случится делать работу, например, системного программиста, ему придется разбираться во всём практически с нуля: навыки web-программирования мало пригождаются в работе с серверами, понадобится лишь понимание алгоритмов написания кода.
Программисты могут потребоваться в совершено разных отраслях. В основном, это IT-компании, учебные заведения, научные институты, крупные промышленные предприятия, заводы, любые фирмы, ведущие часть работы в интернете с помощью официальных страниц и сайтов. Место работы программиста во многом зависит от его специализации. В идеале, ему придется трудиться в коллективе таких же программистов, имея дело непосредственно с главой отдела и получая задания лишь от него. Но в некоторых организациях, программистам часто приходится общаться с различными менеджерами и отвечать на их многочисленные вопросы.