Programador
Ocupação | |
---|---|
Nomes | Programador de Computador |
Tipo de ocupação | Profissão |
Setores de atividade | Tecnologia da informação , Indústria de software |
Descrição | |
Competências | Escrever e depurar código de computador |
Educação necessária | Varia de aprendizagem a bacharelado ou autodidata |
Um programador , programador de computador ou codificador é um autor de código-fonte de computador – alguém com habilidade em programação de computadores .
Os títulos profissionais de desenvolvedor de software e engenheiro de software são usados para trabalhos que exigem um programador.
Geralmente, um programador escreve código em uma linguagem de computador com a intenção de construir um software que atinja algum objetivo .
Identificação
Às vezes, um programador ou cargo é identificado pela linguagem usada ou plataforma de destino. Por exemplo, programador assembly , desenvolvedor web .
Cargo
Os cargos que incluem tarefas de programação têm conotações diferentes na indústria de computadores e para diferentes indivíduos. A seguir estão descrições notáveis.
Um desenvolvedor de software implementa principalmente software com base em especificações e corrige bugs . Outras tarefas podem incluir revisar alterações de código e testar . Para obter as habilidades necessárias para o trabalho, eles podem obter um diploma de ciência da computação ou associado , participar de um boot camp de programação ou ser autodidatas .
Um engenheiro de software geralmente é responsável pelas mesmas tarefas de um desenvolvedor, além de responsabilidades mais amplas de engenharia de software , incluindo arquitetar e projetar novos recursos e aplicativos, direcionar novas plataformas, gerenciar o ciclo de vida de desenvolvimento de software (design, implementação, teste e implantação), liderar uma equipe de programadores, comunicar-se com clientes, gerentes e outros engenheiros, considerar a estabilidade e a qualidade do sistema e explorar metodologias de desenvolvimento de software.
Às vezes, um engenheiro de software precisa ter um diploma em engenharia de software, engenharia da computação ou ciência da computação. Alguns países exigem legalmente que um diploma de engenharia seja chamado de engenheiro . [1] [2] [3]
História
A condessa e matemática britânica Ada Lovelace é frequentemente considerada a primeira programadora de computador. Ela foi autora de um algoritmo , que foi publicado em outubro de 1842, para calcular números de Bernoulli na máquina analítica de Charles Babbage . [4] Como a máquina não foi concluída durante sua vida, ela nunca experimentou o algoritmo em ação.
Em 1941, o engenheiro civil alemão Konrad Zuse foi a primeira pessoa a executar um programa em um computador eletrônico funcional e controlado por programa. [5] De 1943 a 1945, segundo o cientista da computação Wolfgang K. Giloi e o professor de IA Raúl Rojas et al., Zuse criou a primeira linguagem de programação de alto nível , Plankalkül . [6] [7]
Os membros da equipe de programação do ENIAC de 1945, composta por Kay McNulty , Betty Jennings , Betty Snyder , Marlyn Wescoff , Fran Bilas e Ruth Lichterman, foram considerados os primeiros programadores profissionais de computador. [8] [9]
A indústria de software
A primeira empresa fundada especificamente para fornecer produtos e serviços de software foi a Computer Usage Company em 1955. Antes disso, os computadores eram programados pelos clientes ou pelos poucos fabricantes de computadores comerciais da época, como Sperry Rand e IBM . [10]
A indústria de software se expandiu no início da década de 1960, quase imediatamente após os computadores serem vendidos pela primeira vez em quantidades produzidas em massa. Universidades, governos e empresas criaram uma demanda por software. Muitos desses programas foram escritos internamente por programadores de equipe em tempo integral; alguns foram distribuídos entre usuários de uma máquina específica sem nenhum custo, enquanto outros foram vendidos em uma base comercial. Outras empresas, como a Computer Sciences Corporation (fundada em 1959), também começaram a crescer. Os fabricantes de computadores logo começaram a agrupar sistemas operacionais , software de sistema e ambientes de programação com suas máquinas; o IBM 1620 veio com o Sistema de Programação Simbólica 1620 e FORTRAN . [11]
A indústria expandiu-se muito com o surgimento do computador pessoal (PC) em meados da década de 1970, que levou a computação ao trabalhador de escritório médio. Nos anos seguintes, o PC também ajudou a criar um mercado em constante crescimento para jogos, aplicativos e software utilitário. Isso resultou em aumento da demanda por desenvolvedores de software naquele período de tempo. [12]
Natureza do trabalho
Os programadores de computador escrevem, testam, depuram e mantêm as instruções detalhadas, chamadas programas de computador , que os computadores devem seguir para executar suas funções. Os programadores também concebem, projetam e testam estruturas lógicas para resolver problemas por computador. Muitas inovações técnicas em programação — tecnologias de computação avançadas e novas linguagens e ferramentas de programação sofisticadas — redefiniram o papel de um programador e elevaram muito do trabalho de programação feito hoje. Os cargos e descrições podem variar, dependendo da organização. [13]
Os programadores trabalham em muitos cenários, incluindo departamentos corporativos de tecnologia da informação (TI), grandes empresas de software , pequenas empresas de serviços e entidades governamentais de todos os tamanhos. Muitos programadores profissionais também trabalham para empresas de consultoria em sites de clientes como contratados . O licenciamento normalmente não é necessário para trabalhar como programador, embora as certificações profissionais sejam comumente mantidas por programadores. [13] A programação é considerada uma profissão . [14] [15] [16]
O trabalho dos programadores varia muito dependendo do tipo de negócio para o qual eles estão escrevendo programas. Por exemplo, as instruções envolvidas na atualização de registros financeiros são muito diferentes daquelas necessárias para duplicar condições em uma aeronave para treinamento de pilotos em um simulador de voo . Programas simples podem ser escritos em algumas horas. Os mais complexos podem exigir mais de um ano de trabalho, enquanto outros nunca são considerados "completos", mas sim são continuamente melhorados enquanto permanecem em uso. Na maioria dos casos, vários programadores trabalham juntos como uma equipe sob a supervisão de um programador sênior. [ citação necessária ]
Tipos de software
Editores de programação, também conhecidos como editores de código-fonte , são editores de texto que são projetados especificamente para programadores ou desenvolvedores escreverem o código-fonte de um aplicativo ou programa. A maioria desses editores inclui recursos úteis para programadores, que podem incluir realce de sintaxe de cor , recuo automático, preenchimento automático , correspondência de colchetes, verificação de sintaxe e permite plug-ins . Esses recursos auxiliam os usuários durante a codificação, depuração e teste. [17]
Globalização
Mudanças de mercado no Reino Unido
De acordo com a BBC News , 17% dos estudantes de ciência da computação não conseguiram encontrar trabalho em sua área seis meses após a formatura em 2009, o que foi a maior taxa entre os estudantes universitários pesquisados, enquanto 0% dos estudantes de medicina estavam desempregados na mesma pesquisa. [18]
Mudanças de mercado nos EUA
Após o estouro da bolha das pontocom (1999–2001) e a Grande Recessão (2008), muitos programadores dos EUA ficaram sem trabalho ou com salários mais baixos. [19] [20] Além disso, a matrícula em cursos relacionados à computação e outros cursos STEM (atrito STEM) [21] nos EUA vem caindo há anos, especialmente para mulheres, [22] o que, de acordo com Beaubouef e Mason, [23] pode ser atribuído à falta de interesse geral em ciências e matemática e também ao medo aparente de que a programação esteja sujeita às mesmas pressões que as carreiras de manufatura e agricultura. Para programadores, o US Bureau of Labor Statistics (BLS) Occupational Outlook previu originalmente um crescimento de 12% para programadores de 2010 a 2020 [24] e, posteriormente, um declínio de -7% de 2016 a 2026, um declínio adicional de -9% de 2019 a 2029, um declínio de -10% de 2021 a 2031. [13] e, em seguida, um declínio de -11% de 2022 a 2032. [25] Como a programação de computadores pode ser feita em qualquer lugar do mundo, as empresas às vezes contratam programadores em países onde os salários são mais baixos. [13] No entanto, para desenvolvedores de software, o BLS projeta para 2019 a 2029 um aumento de 22% no emprego, de 1.469.200 para 1.785.200 empregos com um salário-base médio de US$ 110.000 por ano. Esta previsão é menor do que o aumento previsto de 30% para desenvolvedores de software entre 2010 e 2020. [26] [27] [20] Embora a distinção seja um tanto ambígua, os desenvolvedores de software se envolvem em uma gama mais ampla de aspectos do desenvolvimento de aplicativos e geralmente são mais qualificados do que os programadores, tornando a terceirização menos arriscada. [28] [29] Outra razão para o declínio dos programadores é que suas habilidades estão sendo mescladas com outras profissões, como desenvolvedores, à medida que os empregadores aumentam os requisitos para uma posição ao longo do tempo. Depois, há a preocupação adicional de que os avanços recentes na inteligência artificial possam impactar a demanda por futuras gerações de profissões de software. [30] [31] [32] [33] [34] [35] [36]
Veja também
- Lista de programadores
- Lista de linguagens de programação
- Processo de desenvolvimento de software
- Engenharia de software
- Arquiteto de sistemas
- Programador de videogame
Referências
- ^ "Programador vs. Engenheiro de Software: Qual é a Diferença?". ce.arizona.edu . Universidade do Arizona. 11 de dezembro de 2020. Arquivado do original em 29 de julho de 2021 . Recuperado em 29 de julho de 2021 .
- ^ Heinz, Kate (23 de fevereiro de 2021). "Engenheiro de software vs. programador: qual é a diferença?". builtin.com . Built In. Arquivado do original em 29 de julho de 2021 . Recuperado em 29 de julho de 2021 .
- ^ Jacob, Freya (16 de março de 2020). "6 diferenças principais entre um engenheiro de software e um programador". simpleprogrammer.com . O programador simples. Arquivado do original em 29 de julho de 2021 . Recuperado em 29 de julho de 2021 .
- ^ ab Fuegi, J.; Francis, J. (outubro–dezembro de 2003). "Lovelace & Babbage e a criação das 'notas' de 1843". Anais do IEEE de História da Computação . 25 (4): 16–26. doi :10.1109/MAHC.2003.1253887.
- ^ "Konrad Zuse". computer.org . IEEE. 2 de abril de 2018. Arquivado do original em 26 de setembro de 2022. Recuperado em 4 de fevereiro de 2023 .
- ^ Giloi, Wolfgang K. (1997). "Plankalkül de Konrad Zuse: a primeira linguagem de programação de alto nível 'não von Neumann'". IEEE Annals of the History of Computing . 19 (2): 17–24. doi :10.1109/85.586068. Arquivado do original em 23 de março de 2023.
- ^ Rojas, Raúl; Göktekin, Cüneyt; Friedland, Gerald; Krüger, Mike (fevereiro de 2000). "Plankalkül: A primeira linguagem de programação de alto nível e sua implementação". ResearchGate . Arquivado do original em 12 de junho de 2022 . Recuperado em 4 de fevereiro de 2023 .
- ^ "Memoriais". Projeto ENIAC Programmers . First Byte Productions. 16 de maio de 2014. Arquivado do original em 1 de abril de 2018. Recuperado em 13 de março de 2021 .
- ^ Donaldson James, Susan (4 de dezembro de 2007). "First Computer Programmers Inspire Documentary". ABC News. Arquivado do original em 16 de fevereiro de 2013. Recuperado em 13 de março de 2021 .
- ^ Elmer C. Kubie (verão de 1994). "Lembranças da primeira empresa de software". Annals of the History of Computing . 16 (2): 65–71. doi :10.1109/85.279238. S2CID 5733812.
- ^ "IBM Archives: 1620 Data Processing System". www.ibm.com . 23 de janeiro de 2003. Arquivado do original em 10 de fevereiro de 2021. Recuperado em 17 de março de 2021 .
- ^ "Ocupações em Tecnologia da Informação". The United States Census Bureau . Arquivado do original em 22 de março de 2021 . Recuperado em 21 de março de 2021 .
- ^ abcd "Programadores de Computador: Manual de Perspectivas Ocupacionais". www.bls.gov . US Bureau of Labor Statistics. Arquivado do original em 3 de maio de 2019 . Recuperado em 13 de março de 2021 .
- ^ "Como se tornar um programador de computador". coursera.org . Coursera Inc. 30 de setembro de 2022. Arquivado do original em 7 de outubro de 2022 . Recuperado em 2 de fevereiro de 2023 .
Os programadores de computador geralmente fazem cursos e buscam certificações para entrar na área e se manterem atualizados em suas habilidades nesta profissão em constante evolução.
- ^ "11 tipos de empregos de programação (com deveres e salários)". indeed.com . Indeed. 17 de outubro de 2022. Arquivado do original em 2 de fevereiro de 2023 . Recuperado em 2 de fevereiro de 2023 .
Explore esta profissão e descubra como você pode prosperar em uma carreira de programação de computadores.
- ^ Sartore, Melissa (22 de dezembro de 2022). "O que é um programador de computador?". computerscience.org . Arquivado do original em 30 de janeiro de 2023 . Recuperado em 2 de fevereiro de 2023 .
Explore esta profissão e descubra como você pode prosperar em uma carreira de programação de computadores.
- ^ "BBC Bitesize - GCSE Computer Science - Programming software and the IDE - Revision 4". www.bbc.co.uk . Arquivado do original em 23 de setembro de 2017 . Recuperado em 13 de março de 2021 .
- ^ Shankleman, Martin (1 de julho de 2010). "'Um em cada 10' graduados do Reino Unido está desempregado". BBC News . Arquivado do original em 8 de março de 2021 . Recuperado em 13 de março de 2021 .
- ^ Mann, Amar; Nunes, Tony (agosto de 2009). "After the Dot-Com Bubble: Silicon Valley High-Tech Employment and Wages in 2001 and 2008" (PDF) . Relatório regional, US Bureau of Labor Statistics : 1–8. Arquivado (PDF) do original em 18 de março de 2021 . Recuperado em 13 de março de 2021 .
- ^ ab Charette, Robert N. (30 de agosto de 2013). "A crise STEM é um mito" . IEEE (opinião). IEEE. Arquivado do original em 7 de agosto de 2021 . Recuperado em 7 de agosto de 2021 .
- ^ "STEM Attrition: College Students' Paths Into and Out of STEM Fields" (Desgaste de STEM: Caminhos de estudantes universitários para dentro e para fora dos campos STEM). nces.ed.gov . 26 de novembro de 2013. Arquivado do original em 18 de março de 2021. Recuperado em 13 de março de 2021 .
- ^ "hp's Developer Portal | HP International Women's Week: Mulheres na Ciência da Computação caindo desde a década de 1980". developers.hp.com . Arquivado do original em 26 de fevereiro de 2021 . Recuperado em 13 de março de 2021 .
- ^ Beaubouef, Theresa; Mason, John (junho de 2005). "Por que a alta taxa de evasão de estudantes de ciência da computação: algumas reflexões e observações". ACM SIGCSE Bulletin . 37 (2): 103–106. doi :10.1145/1083431.1083474. S2CID 207157501.
- ^ "Programadores de Computador: Manual de Perspectivas Ocupacionais: US Bureau of Labor Statistics". Arquivado do original em 15 de setembro de 2012.
- ^ "Programadores de Computador: Manual de Perspectivas Ocupacionais". US Bureau of Labor Statistics .
- ^ "Desenvolvedores de software, analistas de garantia de qualidade e testadores: Manual de perspectivas ocupacionais: US Bureau of Labor Statistics". www.bls.gov . Arquivado do original em 14 de maio de 2019. Recuperado em 29 de julho de 2021 .
- ^ "Software Developers : Occupational Outlook Handbook". US Bureau of Labor Statistics . 18 de julho de 2012. Arquivado do original em 1 de setembro de 2013.
- ^ Brooks, Ashley (2019). "Programador de computador vs. desenvolvedor de software: decodificando as diferenças". Universidade Rasmussen . Arquivado do original em 30 de julho de 2021 . Recuperado em 29 de julho de 2021 .
- ^ "Comparando duas carreiras importantes: desenvolvedor de software vs. programador". online.maryville.edu . 31 de julho de 2020. Arquivado do original em 30 de julho de 2021 . Recuperado em 29 de julho de 2021 .
- ^ "Empregos de engenheiros de software em perigo devido a ferramentas semelhantes ao ChatGPT? Aqui está o que o CEO do Google, Sundar Pichai, tem a dizer". Business Today . 6 de abril de 2023 . Recuperado em 12 de maio de 2023 .
- ^ "ChatGPT pode tornar esses empregos obsoletos". 25 de janeiro de 2023. Recuperado em 12 de maio de 2023 .
- ^ Kay, Grace. "Engenheiros de software estão em pânico sobre serem substituídos por IA". Business Insider . Recuperado em 12 de maio de 2023 .
- ^ Fowler, Gary. "Post do Conselho: Como o ChatGPT afetará os empregos?". Forbes . Recuperado em 12 de maio de 2023 .
- ^ Ito, Aki. "ChatGPT significa o fim da codificação como a conhecemos". Business Insider . Recuperado em 12 de maio de 2023 .
- ^ Zinkula, Jacob; Mok, Aaron. "O ChatGPT pode estar vindo para roubar nossos empregos. Aqui estão as 10 funções que a IA provavelmente substituirá". Business Insider . Recuperado em 12 de maio de 2023 .
- ^ Cohen, Mikaela (15 de abril de 2023). "Estes são os empregos de tecnologia mais ameaçados pelo ChatGPT e IA" CNBC . Recuperado em 12 de maio de 2023 .
Leitura adicional
- Weinberg, Gerald M. , A psicologia da programação de computadores , Nova York: Van Nostrand Reinhold, 1971
- Um estudo experiencial da natureza do trabalho de programação: Lucas, Rob (março–abril de 2010). "Dreaming in Code". New Left Review (62): 125–132. Arquivado do original em 24 de abril de 2012.
- Thompson, Clive (2019). Codificadores: A Criação de uma Nova Tribo e a Reconstrução do Mundo . Penguin Press. ISBN 978-0735220560.
Links externos
- Descrição do Departamento de Trabalho dos EUA de:
- Programadores de computador
- Desenvolvedores de software