Programador
Em ciências da computação; programador, desenvolvedor, codificador ou engenheiro de software é alguém que escreve, desenvolve ou faz manutenção de software em um grande sistema ou alguém que desenvolve software para uso em computadores pessoais.[1]
Programadores também são conhecidos como "desenvolvedores" de software e são responsáveis apenas pelo desenvolvimento do software que lhes é passado por engenheiros e analistas de sistemas.
Hoje em dia é muito comum a função programador/analista. É até uma tendência, uma vez que os programadores muitas vezes têm uma visão mais ampla da engenharia e arquitetura do software, e experiência com as diversas formas de se elaborar um mesmo produto.[carece de fontes]
Primeiros programadores[editar | editar código-fonte]
Ada Lovelace é historicamente considerada a primeira programadora. Ela foi a primeira a desenvolver um algoritmo para implantação em um computador, a máquina de análise de Charles Babbage, em outubro de 1842.[3]
Os que possuem excelentes habilidades em programação de computadores podem se tornar famosos, apesar disto ser normalmente limitado aos círculos da engenharia de software. Muitos dos mais notáveis programadores são chamados algumas vezes de "hackers"
Programadores profissionais trabalham em vários ambientes, incluindo departamentos de TI corporativos, grandes empresas de software e pequenas empresas de serviços. Muitos programadores profissionais também trabalham para empresas de consultoria nas instalações dos clientes.
Cargos em TI[editar | editar código-fonte]
Na área de tecnologia da informação não existem apenas os programadores, mas diversos outros cargos encarregados de gerenciar, analisar e criar toda a estrutura do software sem mesmo escrever uma linha de código.
- Gerente de projeto: não aplicável apenas na área de TI, responsável por integrar toda a equipe de engenheiros, analistas, DBA e programadores. Gerencia prazo, custo e escopo do projeto.
- Arquiteto de software: arquiteto de software é a pessoa responsável por criar toda a estrutura do software a ser desenvolvido, bem como o que o software deve fazer, como deve responder, como se comunicar com outros softwares e usuário. Ele é comparado a um engenheiro civil que não levanta paredes, mas realiza todos os cálculos e planejamento da estrutura de um prédio.
- Analista de sistemas: responsável pela comunicação com o usuário, ver os requisitos necessários do software, analisar problemas e melhores soluções. Geralmente ele já trabalhou algum tempo como programador e tem um conhecimento na área, mas muitas vezes trabalha só com documentação do software.
- Analista de testes: responsável pela qualidade do software, possui conhecimento que tem como função criar testes no sistemas e gerar roteiros de automação de testes, fazendo a análise de erros.
- Analista de segurança: responsável por averiguar problemas em softwares e sistemas operacionais utilizados numa rede / empresa, treinado para proteger de ataques e muitas vezes tem vasto conhecimento em como realizar os mesmos.
- Programador: responsável pela implementação e correção de erros/defeitos no sistema. Seu foco é desenvolver novas soluções e pôr em prática todas as necessidades impostas pelo analista de sistemas.
- Administrador de banco de dados (ABD ou DBA, sigla em inglês): o administrador do banco de dados, onde são guardadas as informações, ele não programa, mas é responsável por gerenciar como são guardadas as informações, meios de otimização de buscas, segurança dos dados e permissão de acesso.
Tipos de programador[editar | editar código-fonte]
- Programador Web: É o programador especialista em criar sites que são considerados páginas dinâmicas, como portais e fóruns.[4] Linguagens geralmente utilizadas: HTML (incluindo JavaScript e CSS), Java, PHP, .NET (ASP, C# e VB), Ruby, Python e Perl.
- Programador Desktop: É o programador que desenvolve aplicativos para rodar localmente nas máquinas. Linguagens geralmente utilizadas: Pascal, C, C++, VB, C# e VB.NET
- Programador Mobile: é o programador especialista na criação de aplicativos para celulares, tablets, etc.
- Programador Games: trabalha com a programação de jogos eletrônicos, podendo desenvolver para diversas plataformas, como: Smartphones, PC, Xbox, Playstation, entre outras.
- Programador executivo: é o programador que coordena o processo de aplicação do código em um projeto, independente da linguagem ou metodologia de trabalho escolhida pelos analistas e GPs (gerentes de projetos). O seu trabalho pode ser comparado com a de um executivo comum, incorpora a pessoa jurídica, visa somente lucros e força o máximo de sua equipe de programador. Ex: Steve Jobs, Bill Gates.
- Programador sonoro: é a pessoa encarregada de manipular faixas de áudio a fim de montá-las, mixá-las e melhorá-las.
Referências
- ↑ «Definição de Programador». Dicio. Consultado em 29 de Abril de 2016
- ↑ Fuegi, J.; Francis, J. (2003). Lovelace & Babbage and the creation of the 1843 'notes'. Annals of the History of Computing. 25. [S.l.: s.n.] pp. 18–26. doi:10.1109/MAHC.2003.1253887
- ↑ J. Fuegi and J. Francis, "Lovelace & Babbage and the creation of the 1843 'notes'." Annals of the History of Computing 25 #4 (October–December 2003): 19, 25. Digital Object Identifier
- ↑ «Profissão: programador Web». Tecmundo. Consultado em 29 de Abril de 2016