Tecnologia: teoria vs prática

Neste artigo você vai ver:

Existem muitas discussões no meio de desenvolvimento sobre quais ferramentas são melhores, qual melhor provedor de cloud e como elevar a produtividade ao máximo. 

Mas falamos pouco sobre o ponto mais importante na hora de implementar ou desenvolver uma solução, que é o conceito por trás disso. 

Não há como utilizar uma IDE sem saber programar, ou uma scrumboard sem conhecer a metodologia, nem como automatizar infraestrutura sem conhecer de infra, por exemplo.

Exemplificando…

Logo que iniciei minha jornada na Zup, me deparei com um desafio interessante. Todo o provisionamento da infra do projeto era feito em Cloudformation

Cloudformation é uma ferramenta da AWS para provisionamento e criação automatizada da sua infraestrutura na nuvem que possui um concorrente mais difundido no mercado nacional: Terraform.

Apesar de conhecer a linguagem, eu era muito mais habituado ao Terraform, até um pouco evangelista da Hashicorp. Mas não tive grandes dificuldades em mudar a linguagem e a ferramenta por um simples detalhe: Eu não aprendi Terraform, aprendi Infraestrutura como código.

Ou seja, pelo conhecimento prévio do conceito, eu já sabia o que fazer, apenas precisei mudar como executar.

Outro exemplo interessante que já me ocorreu algumas vezes: um amigo me aciona com uma dúvida sobre o Route53. Route53 é o serviço de DNS da AWS (excelente, inclusive). Em 99% dos casos, a dúvida na verdade era sobre qual tipo de registro criar, ajustar um TTL ou criar uma zona secundária.

Onde quero chegar? 

As dúvidas eram sobre DNS, não sobre o Route53. Faltava o conceito, não havia deficiência alguma na ferramenta.

Tecnologia vs Teoria

Passeando por tópicos em fóruns e comunidades, é possível encontrar pessoas interessadas em aprender diversas tecnologias, como Oracle, Docker, Java, AWS. 

É possível estruturar uma VPC na AWS sem conhecer redes ou criar uma estrutura de herança em Java sem conhecer Programação orientada a objetos? Podemos trabalhar bem com Docker sem conhecer o básico de Linux e como funciona um servidor web?

Estudar tecnologias é bacana, conforme evoluímos e as coisas começam a funcionar, sentimos uma imensa satisfação.

Porém, este caminho será menos árduo, com muito menos tentativa e erro, se antes da tecnologia gastarmos um tempo para entender o conceito por trás de tudo.

Ainda me lembro de uma aula da disciplina de sistemas operacionais na época da faculdade, onde o grande professor Marco Antônio nos explicou como trabalhava um processador, utilizando o escalonamento de processos e registradores. 

Aquela explicação me ajudou durante diversas situações na carreira e nunca mais tive dúvidas sobre o Load Average do processador.

Obviamente não é necessário fazer um curso superior para aprender isto. Alguns dos melhores profissionais que conheço não fizeram ou terminaram a faculdade, mas para mim funcionou bem.

O meu ponto é que algumas vezes, parar para estudar a teoria pode parecer perda de tempo mas, acredite, este tempo será recuperado na hora de implementar a tecnologia.

Um jornada inesperada

Antigamente seria possível separar as bases conceituais entre as áreas de infraestrutura e desenvolvimento, porém como tudo vem convergindo cada vez mais para o mesmo ponto (DevOps), acho que é importante para termos noções de:

  • Linux (ou Sistemas Operacionais, se quiser ir mais longe)
  • DNS
  • Redes
  • Servidores de aplicação
  • Containers
  • Estrutura de dados
  • Orientação a objetos
  • Teoria de banco de dados
  • Arquitetura
  • Lógica de programação

Certamente esta não é uma lista completa, muito menos definitiva, mas são os conceitos que foram importantes para mim e pode ser relevante pra você.

Importante frisar que não é necessário saber tudo dessa lista ou ser sênior em todas as áreas. Filtre os assuntos de acordo com os seus objetivos de carreira e monte sua própria lista de conceitos base.

Conclusão

Minha intenção com este artigo é, além de tudo, estimular o estudo e a busca por novos conhecimentos. Quanto mais fora da caixa pensarmos, mais diferenciados ficamos e melhores ficam nossos resultados.

Lembrando que nem sempre nossa jornada dentro da área de tecnologia será fácil, mas com certeza é recompensadora. Leve o seu próprio tempo e não pule etapas, não valerá a pena.

Me conta o que acha sobre o assunto nos comentários? Essa troca é importantíssima para nossa comunidade!

Vagas em tecnologia

Aqui na Zup, nós acreditamos em profissionais fora da curva e que querem crescer exponencialmente. Você gosta de desafios? Veja nossas vagas em tecnologia.

Imagem capa do conteúdo sobre tecnologia, onde há uma ilustração com uma nuvem, uma torre, um globo, sinal de wi-fi e uma tela.
5ef3a85e773d171c276d1d9d_fabio-rodriguez
SRE
Evangelista Linux, Cloud e Devops.

Artigos relacionados

Este site utiliza cookies para proporcionar uma experiência de navegação melhor. Consulte nossa Política de Privacidade.