Um programador (chamado também de analista-programador) consiste em conceber e desenvolver um aplicativo informático, isto é, transformar uma necessidade numa solução informática, escrita numa linguagem informática. Historicamente, o desenvolvimento informático era feito por um chefe de projeto, encarregado da expressão das necessidades, por um analista, encarregado da modelização e, por um programador encarregado da codificação. A função de analista está para o programador, como a concepção está para a realização. Trata-se do trabalho de concepção, ou seja, traduzir funcionalmente a necessidade de um cliente e propor a modelização informática. As duas funções de analista e de programador são cada vez mais confundidas, daí a denominação analista-programador, sinônimo de programador. Logo, a missão do programador consiste em fazer evoluir os aplicativos já existentes e modelar novas aplicações.
O analista-programador requer conhecimentos técnicos específicos em desenvolvimento informático, em especial a programação objeto e engenharia de software. O conhecimento da modelização UML é também necessário. Ele deve igualmente dominar uma os mais linguagens de programação, como Java (e o ambiente J2EE), C++ ou o Framework NET.
Por último, o domínio da tingia inglesa é indispensável na medida em que o programador vai lidar com esta língua no cotidiano de seu trabalho e pode estar em contato com correspondentes estrangeiros.
A formação do programador pode ser um bacharelado ou uma licenciatura. As licenciaturas em informática são as vias mais habituais para este tipo de função.
O salário de um programador pode variar entre R$ 950,00 e R$ 4.800,81, com média salarial nacional de R$ R$ 2.284,99. O seu salário desse depende do tipo de programa que desenvolve, da região ou cidade onde trabalha e do tamanho da empresa, além da própria qualificação e experiência (2017).