O que faz um programador?

Paulo Silveira
Paulo Silveira

Compartilhe

Programadores e programadoras, conhecidos também com Devs, passam seus dias escrevendo código fonte. Uma sequência de comandos que permite que o computador resolva uma tarefa, imprima algumas folhas, envie um email, peça comida, calcule fretes ou cadastre novos itens em um ecommerce.

Nós, programadores e programadoras, os devs, somos responsáveis por usar tecnologias, bibliotecas de código e linhas de programação para solucionar um problema. O problema costuma ser quebrado em uma série de requisitos (chamados também de histórias ou funcionalidades), que vão constituir um software, ou um produto digital.

Essas linhas de código podem parecer estranhas, mas formam uma rotina. O termo algoritmo também aparece, mas costuma estar relacionado a rotinas de código que resolvem problemas um pouco mais próximos da matemática.

Algumas vezes pensamos no nosso trabalho como a transformação dos dados de entrada em dados de saída. Exemplos? Dado um pedido, a saída é a fatura no cartão. Dados os itens de um livro, a saída é um registro novo no banco de dados. A entrada é o input do nosso programa, a saída é o output do programa.

Onde trabalha um Dev?

Atualmente devs trabalham em todos os tipos de empresas: de startups a corporações. De agências de marketing a farmácias. Isso acontece pois a tecnologia se tornou essencial nas nossas vidas e as empresas perceberam que não podem mais apenas terceirizar esse departamento: a programação faz parte também do chamado core business de uma companhia.

Empresas focadas em prestar serviços online, através de um produto ou uma assinatura, costumam ter times de devs gigantescos. Normalmente são empresas que nasceram na época do boom de startups. Mas as grandes corporações, respondendo essa demanda de oferecer seus produtos de forma digital, também passam por essa grande transformação e aumentaram muito suas equipes de programação.

Por onde começar com programação?

São vários os caminhos. Você pode optar por uma das áreas de programação que mais se adequa às suas aptidões. Vou te contar um pouco de algumas das principais linhas de tecnologia que envolvem bastante código.

Front-end

Uma parte mais visual e próxima do que estamos acostumados a encarar como apps, como sites, como produtos digitais. É a área da programação que programa a interação dos botões, telas e formulários com o usuário.

Se você quiser conhecer Front-end desde a base, pode ler esse artigo sobre desenvolvimento front-end e como estudar do zero o front-end.

No video abaixo, a Vanessa, da Alura, explica o que é ser uma programadora que trabalha na web, com essa parte "da frente" das aplicações:

É um bom ambiente de entrada, já que permite que você veja rapidamente o resultado das suas linhas de código usando, em especial, HTML, CSS e JavaScript.

Se você já está decidido, eu recomendo você se aprofundar na Formação front end aqui da Alura.

Back-end

Tudo que fica "atrás" do front-end, respondendo cada um dos pedidos dos usuários, a gente costuma definir como "back-end". É onde serviços são executados e trabalham em conjunto para poder devolver uma saída para cada entrada que você faz em uma app ou em um software.

Aqui você vai encontrar bastante Java, C#, Python, JavaScript e dezenas de outras linguagens muito usadas do lado do servidor (server side, outra forma de dizer back-end).

Neste video a Juliana Amoasei conversa comigo sobre o seu trabalho como programadora back-end:

Há ainda pessoas que trabalham em ambos os lados da aplicação, por isso é bom entender a diferença entre front-end e back-end.

Bom, ambas as vertentes do Front e do Back End possuem uma trilha bem longa dependendo do quão profundo conhecedor delas você quer ser. Há ainda o full stack developer. Full stack developer é quem trabalha com Front End e Back End.

Data Science

A Ciência de dados, ou Data Science, é uma vertente que cresce ainda mais, com pessoas que organizam e programam rotinas para trabalhar com dados. Desde os banco de dados muito conhecidos na base do SQL, até bancos de dados não relacionais, sistemas de inteligência de negócio (business intelligence), mineração de dados e inteligência artificial.

A Mikaeri fala sobre seu trabalho como cientista de dados no canal da Alura:

Outras frentes

Há ainda espaço em desenvolvimento focado em apps, chamado mobile, assim como trabalhar com infraestrutura, ou a área de DevOps. Vale lembrar que em qualquer uma dessas áreas as empresas podem esperar que você tenha um conhecimento de Devops e de SQL e Banco de dados.

Esses são, inclusive, os fundamentes de Dev em T, que se aprofunda em uma das grandes escolas de tecnologia, sem esquecer da importância de conhecer um pouco das outras áreas e poder trabalhar melhor em equipes, em squads.

E qual a melhor forma de aprender a programar?

Aqui eu mesmo gravei um video, com o Gabriel, respondendo essa pergunta e dando muitas dicas:

Este post do Guilherme Silveira sobre como você pode organizar seus estudos também pode te ajudar.

Perguntas Frequentes:

Quais são as principais áreas da programação?

São 5. O trabalho com a web, que chamamos de front-end. Os mecanismos por trás de todos os acessos da web, o back-end. A criação de apps para smartphones e tablets, o mobile. O trabalho com a extração e relação de dados, a data science. A manutenção e otimização de toda infraestrutura, o devops.

Quais são as linguagens de programação mais usadas?

Java, C#, JavaScript e Python são as mais populares.

Qual é a diferença entre programador, dev e engenheiro de software?

Basicamente não há. Se você é programador, programadora, vai também se reconhecer como dev de software e engenheiro/engenheria de software. Algumas pessoas tentam criar diferenciações, mas não há consenso.

Paulo Silveira
Paulo Silveira

Paulo é CEO da Caelum, reconhecido na comunidade de desenvolvedores, tendo participado de projetos no IBOPE e dentro da Caelum. É fundador do maior fórum de desenvolvimento em língua portuguesa, o GUJ.com.br e participa na comunidade open source. Mestre pela USP em Geometria computacional, liderou o desenvolvimento do LMS da empresa e atualmente gerencia mais de 100 colaboradores.

Veja outros artigos sobre Front-end