Seja bem-vindo a um mergulho profundo no universo da tecnologia e carreira com Rafael Ferreira Lhama, um desenvolvedor de software experiente, tech lead e instrutor de Python que compartilha seu conhecimento de forma inspiradora. Com mais de 10 anos de atuação na área de TI, Rafa traz uma visão prática, honesta e cheia de dicas valiosas para quem está iniciando ou deseja evoluir na carreira de programação.
Quem é Rafael Ferreira Lhama?
Rafael, ou simplesmente Rafa, é professor na Rocketseat, desenvolvedor focado em Python e criador do canal Programador Lhama no YouTube, que conta com mais de 18 mil inscritos. Além de produzir conteúdo técnico para o LinkedIn, ele atua como tech lead em um escritório de direito tributário — uma prova de que a tecnologia está presente em áreas surpreendentes, inclusive no direito.
Com uma trajetória que começou na engenharia elétrica e uma paixão por corrida de rua, Rafa combina a disciplina do esporte com a dedicação ao desenvolvimento de software, sempre buscando compartilhar seus aprendizados e experiências para ajudar outros profissionais.
Decisões Rápidas: Escolhas na Carreira e no Desenvolvimento
Durante a conversa, Rafa respondeu a perguntas rápidas que revelam muito sobre suas preferências e visão técnica.
Desenvolver um sistema novo ou liderar uma squad técnica?
Para Rafa, a escolha depende do contexto, mas ele prefere trabalhar em projetos novos. Projetos do zero possibilitam a criação de arquiteturas mais flexíveis e interessantes, facilitando o desenvolvimento e a liderança. No entanto, se o projeto já estiver consolidado e bem estruturado, liderar a squad pode ser uma excelente opção.
“A arquitetura de software deixa um projeto muito mais maleável e possível para fazer alterações de maneira fácil e rápida.”
Corrida de rua pela manhã ou maratona de Netflix à noite?
Rafa é fã de corrida e valoriza os benefícios do exercício físico para a mente e o corpo. Ele destaca a importância de manter um equilíbrio, especialmente em uma carreira que exige muita atividade mental.
Criar um curso do zero ou revisar um projeto legado?
Sem dúvidas, ele prefere criar cursos e projetos novos em vez de mexer em códigos legados. O código legado costuma ser uma tarefa ingrata, cheia de desafios e riscos, especialmente quando o projeto não foi bem estruturado inicialmente.
Microsserviço organizado ou monolito funcional?
Essa é uma questão que gera muita discussão. Rafa explica que a escolha entre microsserviços e monolito depende do contexto, especialmente do tamanho e da organização da equipe.
Um monolito bem arquitetado pode ser tão eficiente quanto um microsserviço, e em muitos casos, mais fácil de gerenciar, especialmente para equipes pequenas ou projetos em estágio inicial.
“Microsserviços são mais uma decisão estratégica de organização e pessoas do que apenas tecnologia.”
Arquitetura robusta ou MVP rápido para validar a ideia?
Rafa alerta para os perigos de construir MVPs muito rápidos e mal planejados, que acabam criando dívidas técnicas difíceis de resolver no futuro. Ele defende que, mesmo em MVPs, é importante ter um mínimo de arquitetura que permita evolução e manutenção.
Conteúdo e Aprendizado: Preferências e Recomendações
Live no YouTube ou artigo técnico no LinkedIn?
Para Rafa, o formato visual da live é mais eficaz para o aprendizado, pois permite que o estudante acompanhe o passo a passo da criação, faça pausas e tire dúvidas em tempo real.
Refatorar código feio ou reescrever do zero sob pressão?
Ele prefere refatorar um código funcional, mesmo que feio, pois isso garante menos riscos e permite melhorias contínuas. Reescrever do zero sob pressão pode levar a erros e atrasos.
SQL bem estruturado ou NoSQL?
Rafa destaca que a escolha depende do contexto, mas recomenda o uso de SQL bem estruturado para a maioria dos casos, devido à maior familiaridade da comunidade e ferramentas maduras.
Estudar uma nova linguagem ou relaxar com a família?
Com a maturidade, Rafa prioriza a família, reconhecendo a importância do equilíbrio entre vida profissional e pessoal.
Livros e Recursos para Desenvolvedores Backend
Ao responder uma pergunta sobre livros para desenvolvimento backend, Rafa enfatiza que a programação é uma atividade muito prática, mais manual do que teórica. Ele sugere que o melhor caminho para iniciantes é colocar a mão na massa, acompanhando vídeos e projetos para aprender fazendo.
Livros como Clean Code e Python Fluente são importantes, mas devem ser usados quando o programador já tiver uma base prática, para aprofundar conceitos e boas práticas.
“Você aprende programação escrevendo código, vendo projetos, e só depois busca a teoria para aprimorar.”
Além disso, Rafa recomenda a leitura de livros técnicos sobre banco de dados, como MySQL High Performance, para entender o funcionamento interno e otimizar consultas.
A Jornada de Rafael: Do Início Difícil à Liderança Técnica
Rafa compartilha sua trajetória, que começou na faculdade de engenharia elétrica, onde se envolveu em projetos de competição automotiva, trabalhando com eletrônica embarcada e programação em C para microcontroladores.
Apesar do sucesso nos projetos — incluindo prêmios nacionais e participação em competições internacionais —, ele enfrentou dificuldades para conseguir um estágio, passando por um ano e meio de busca intensa.
Durante esse período, realizou trabalhos temporários, freelancers e projetos acadêmicos para se manter ativo e construir um portfólio.
Quando finalmente conseguiu um estágio, enfrentou um ambiente pouco propício ao aprendizado, com pouca liderança e projetos pouco desafiadores. Foi nesse momento que começou a migrar para o backend, especialmente utilizando Python, linguagem que considera fácil e poderosa.
Conselhos para Quem Está Começando na Carreira de TI
Rafa deixa uma mensagem importante para iniciantes:
“Você não é o único a passar por dificuldades. Vai ter ansiedade, vai travar em bugs, vai se sentir ruim, mas isso é normal. Todo mundo passa por isso.”
Ele reforça a importância da resiliência e da persistência, destacando que a fluência em programação vem com o tempo e a prática constante.
Outro ponto fundamental é a habilidade de pesquisar e buscar soluções: saber usar ferramentas como Stack Overflow e ChatGPT para resolver dúvidas é uma soft skill essencial para qualquer programador.
PEP 8 e a Importância dos Padrões de Código
Sobre a PEP 8, que é o guia de estilo para Python, Rafa explica que seguir padrões de código ajuda a manter a legibilidade e a consistência entre desenvolvedores, facilitando a colaboração.
Ele destaca que, embora seja importante seguir essas recomendações, também é necessário ter flexibilidade, adaptando os padrões ao contexto do projeto e equipe.
Microserviços: Modismo ou Necessidade?
Rafa esclarece que microserviços não são uma novidade, mas uma evolução das arquiteturas distribuídas que já existiam desde os anos 90.
Ele acredita que microserviços são muito úteis para equipes grandes, pois permitem separar responsabilidades e facilitar o desenvolvimento paralelo, mas que nem sempre são a melhor escolha para equipes pequenas ou projetos iniciais.
A decisão entre monolito e microserviços deve considerar a estrutura organizacional, tamanho da equipe e necessidades específicas do projeto.
Considerações Finais e Como Acompanhar o Trabalho de Rafael
Rafael Ferreira Lhama destaca a importância de equilibrar a vida pessoal e profissional, priorizando a família e o bem-estar, especialmente conforme a carreira avança.
Para quem deseja acompanhar seu trabalho, ele está presente em diversas plataformas com a marca Programador Lhama. Você pode encontrá-lo no YouTube, LinkedIn e Instagram com esse nome, onde compartilha conteúdos sobre programação, arquitetura de software, boas práticas e tendências do mercado de TI.
Se você está começando na carreira ou quer se aprofundar em Python e backend, vale muito a pena seguir Rafa para aprender com sua experiência e visão prática.
Resumo
- Prefira projetos novos para maior flexibilidade, mas valorize a liderança em projetos consolidados.
- Equilibre mente e corpo com práticas saudáveis, como corrida.
- Evite mexer em código legado quando possível; prefira criar do zero.
- Monolitos bem arquitetados podem ser mais eficientes que microsserviços em certos contextos.
- Construa MVPs com arquitetura mínima para evitar dívidas técnicas.
- Prefira formatos visuais para aprendizado, como lives, que facilitam o acompanhamento.
- Refatore códigos funcionais em vez de reescrever sob pressão.
- SQL estruturado é mais seguro e popular, mas escolha conforme o contexto.
- Valorize a família e o equilíbrio pessoal na carreira.
- Aprenda programando, use livros para aprofundar conceitos.
- Seja resiliente, todos enfrentam dificuldades no início.
- Siga padrões de código como a PEP 8, mas com flexibilidade.
- Microserviços são úteis para equipes grandes, mas não são uma solução universal.
Com essas orientações, você estará mais preparado para navegar pela complexidade do mercado de TI, evoluindo na carreira com consciência e estratégia. Lembre-se: a jornada é longa, mas cada passo dado com dedicação e aprendizado faz toda a diferença.
🎬▶️ Conheça o JornadaFlix:
A plataforma com conteúdo exclusivo para quem quer acelerar a carreira em tecnologia:
👉 https://jornadati.com.br/jornadaflix/
💬 Comunidades, vagas e outros episódios:
👉 https://jornadati.com.br/sua-jornada/
📲 Redes do convidado – Rafa:
- LinkedIn: Rafael Ferreira
📲 Redes do host – Maicon Gerardi:
LinkedIn: Maicon Machado Gerardi
Instagram: @maicongerardi
🤝 Parcerias:
Comunidade Programadores BR: https://discord.gg/programacao