Meu nome é Bruno, trabalho na área de TI desde 2000 e estou focado em desenvolvimento web e programação há 20 anos, já trabalhei em diversas áreas dentro TI desde instrutor de cursos profissionalizantes de informática, manutenção de computadores, cabeamento e administração de redes e programação em diversas linguagens e plataformas, nasci na zona oeste de São Paulo e vivi a maior parte da minha vida em SP, sempre fui envolvido com software livre e comunidades e no Brasil eu trabalhei em empresas como Palm Inc, Catho, Coelba, SMA e Red Hat, empresa onde trabalho atualmente como Principal Engineer e há 3 anos tive a oportunidade de mudar de pais e hoje moro no extremo Norte de Portugal, sou casado com a Karla, que é uma Designer de UX/UI muito talentosa e temos um filho chamado Erik.
Quando eu tinha uns 10 anos minha mãe trabalhava em um escritório onde ainda usavam muita máquina de escrever, um dia o escritório ganhou um computador IBM XT, mas ninguém usava, pois não sabiam o que fazer com aquilo e quando eu ia pro escritório com minha mãe eu ficava ali brincando com o computador e seus variados disquetes então literalmente na brincadeira acabei aprendendo a mexer no DOS e no LOTUS 123 (um programa de planilhas tipo Excel) e acabei me tornando um ajudante lá sempre que precisavam abrir alguma planilha ou imprimir etiquetas na impressora matricial eles me chamavam.
Quando a empresa fechou eu acabei ganhando o computador e levei aquele 8088 para casa com impressora, disquetes e livros que apesar de serem em inglês eu já conseguia entender um pouco, pois era um adolescente fã de Rock e Metal e isso me fez aprender a ler um pouco em inglês e principalmente em uma época com pouco conteúdo disponível isso foi um grande diferencial e passei uma boa parte da adolescência me divertindo no terminal do DOS.
Isso foi no início dos anos 90 e como não tinha internet o computador não era tão interessante, eu tinha 16 anos e tirei minha primeira carteira de trabalho e fui em busca da minha autonomia trabalhando em lanchonetes, cozinhas e bares e gostava bastante de trabalhar com alimentação que sempre pensei que iria seguir carreira na área de gastronomia, eu continuava usando o computador e fuçando, instalei o windows 3.11, depois o 98 e me mantinha meio atualizado, pois acabava fazendo uns freelas para a família, aprendi a usar o MS Access para imprimir etiquetas e ajudei a fazer muita mala direta que era o SPAM da época.
Em 2000 eu tinha 17 anos e trabalhava atrás do balcão de um bar do meu tio fazendo lanches, drinks e esse meu tio tinha uma namorada que era filha da dona de uma escola de profissionalizante de informática chamada Microlins, um dia no bar ela estava no balcão mencionando que a escola da mãe dela estava em busca de um monitor para ensinar introdução a computação, Windows e pacote office, eu mencionei que sabia mexer em tudo aquilo incluindo bancos de dados e Office e foi aí que tudo começou, em poucos dias deixei o balcão do bar e fui trabalhar como monitor (ajudante do professor) nos cursos da Microlins.
Dentro da escola eu acabei me tornando professor assumindo algumas turmas e fui ministrando cada vez mais cursos considerados avançados como bancos de dados Access e SQL, programação VBA, Visual Basic, Delphi, Montagem de Computadores, etc.
Eu passava 100% do meu tempo livre estudando por meio de livros e revistas para aprender novas tecnologias e poder assumir mais turmas e abrir mais cursos na Microlins, foi assim que aprendi Linux, HTML, Dreameaver, Perl, PHP e então tive o meu primeiro burnout, mas naquela época nem existia esse termo, em um curto período, menos de 2 anos eu estava com muitas turmas e cursos e não aguentei e acabei ficando doente e tive que parar por um tempo e foi aí que decidi pegar minhas reservas financeiras e abrir uma loja/oficina de computadores contando com a ajuda do meu irmão e minha mãe.
Nesta época, 2001/2002, não havia ainda muita informação sobre trabalho e carreira em computação, portanto as pessoas assumiam que quem mexia em computador sabia tudo de computador, e para suprir a demanda dos clientes que além de comprar peças na minha loja, também pediam orçamentos de pequenos programas como controle de estoque e impressão de etiquetas, eu acabei começando a oferecer esse serviço desenvolvendo a maioria das soluções no Microsoft Access pois era o que todo mundo tinha e dava para criar programas executáveis com forms e reports e para extrapolar as funcionalidades do Access eu tive que aprender a programar em VBA e depois VB e também pegava freelas para resolver problemas em programas Delphi, resumindo, o que surgia de oportunidade eu aceitava e dava um jeito de aprender sozinho as tecnologias e linguagens envolvidas.
Foi só em 2003 que eu de fato comecei a focar em programação quando fui trabalhar em uma empresa fabricante de peças de automóveis que estava migrando de Windows para Linux por questões de licenciamento e acabei tendo que ajudar portar alguns softwares que rodavam em windows para rodar no Kurumin Linux e foi aí que comecei a me especializar em LInux e tive meu primeiro contato com a linguagem Python.
Nesse período eu entrei na faculdade de sistemas de informação onde tive bastante contato com o mundo .net e um pouco de Java, apesar do foco maior ter sido com Pascal, sistemas ERP e Redes.
Depois disso eu passei por empresas como Palm, onde eu desenvolvia drivers infrared para aparelhos celulares usando a linguagem C, outra empresa onde eu mexi muito com SQL para desenvolver programas de força de vendas mobile (na época mobile era sinônimo de Palmtop), passei por agências de desenvolvimento de sites, atuando como “webmaster”, ou seja, o fullstack, fazendo backend, front-end, sysadmin e nesta experiência tive a oportunidade de ajudar a desenvolver portais grandes para empresas de comunicação como Jovem Pan, Rolling Stone, Valor Econômico, Rede Vida etc, e até tive uma curta experiência como gerente em uma empresa que desenvolvia software com .net
Em 2008 eu decidi focar minha carreira 100% em Python e open-source, na época foi uma aposta, mas hoje vejo que foi uma aposta acertada, me envolvi muito com as comunidades em torno do software livre, colaborei com a criação de libs e frameworks, escrevi um livro sobre Python, comecei a criar conteúdo educacional em blogs, canais e palestrar em eventos e isso me ajudou a chegar onde cheguei hoje.
Sim, o meu irmão Guilherme, me apoiou muito lá no começo, eu queria me especializar e não tinha grana para investir em treinamento e ele usou as reservas dele e pagou para mim uma formação em hardware e redes na Impacta que era uma das mais conceituadas escolas da época onde tive a oportunidade de aprender Hardware, Redes e Servidores com o Gabriel Torres, um autor bem-conceituado e referência na área.
Outra pessoa que foi muito significativa na minha carreira foi o Massimo Di Pierro, um Italiano professor da universidade de Chicago que criou o framework web2py e me deu uma das primeiras oportunidades como mantenedor de um grande projeto open-source, foi meu mentor em assuntos relacionados a projetos abertos e me ajudou a alcançar o reconhecimento como Fellow na Python Software Foundation.
E por fim quero mencionar o Og Maciel, um brasileiro que mora nos Estados Unidos e é bastante envolvido na comunidade de software livre, o Og foi meu primeiro gerente dentro da Red Hat, uma pessoa que sempre acreditou no meu potencial, me convidou para participar de projetos importantes dentro e fora da empresa e serve de inspiração profissional para mim.
Eu acho que minha experiência é um pouco diferente pois eu já estava dentro da empresa quando pedi a relocação para outro país e consegui apoio dos meus superiores e colegas de trabalho para fazer esta mudança, outro ponto que facilitou foi o fato de eu ser casado com uma cidadã portuguesa evitando assim a necessidade da empresa investir em visto.
Mas para entrar em um multinacional eu posso dar minhas dicas que começam por saber Inglês, não se preocupe em ter pronuncia perfeita, foque em entender e ser entendido, isso é essencial mesmo, a outra dica é ficar de olho nos requisitos pedidos nessas empresas, seleciona uma vaga que seria a “vaga dos sonhos” e comece a se preparar para o que a vaga pede, invista em “bragging”, que é simplesmente a exibição e celebração de seus feitos mesmo que eles sejam apenas estudo, faça isso através da criação de conteúdo seja em texto, projetos open-source, videos etc, ou seja, torne mais fácil para a empresa saber o que vc já fez e validar essa informação, no seu currículo pode estar escrito “dev Python” mas terá um valor muito maior se o recrutador encontrar blog posts de sua autoria falando sobre Python, videos, e projetos sérios em algum repositório publico.
Por fim tenha um bom networking, como fazer isso? Participe de comunidades, eventos, seja voluntário em iniciativas, cada contato que você faz pode acabar sendo o diferencial que você precisa para “furar a fila” do recrutamento de uma vaga.
Na Coelba que é uma das principais companhias de energia Elétrica do Brasil eu desenvolvi desde a fase de especificação até o deploy um sistema bastante inovador na época que fazia OCR (Reconhecimento Digital de Texto) de ordens de serviço de centenas de eletricistas diariamente, imagina uma época onde não tinha smartphone e as ordens de serviço eram preenchidas a mão no papel e o nosso sistema usando Python, Tesseract, Kofax fazia o reconhecimento do que foi escrito para dar entrada no sistema.
Quando desenvolvemos o Portal da rede Jovem Pan para transmissão de eventos esportivos ao vivo eu tive a oportunidade de trabalhar na implementação da plataforma de stream em tempo real do zero, ali experimentamos todas as tecnologias e protocolos como SSE, web Sockets, eventos, filas e conseguimos entregar uma plataforma em tempo real acessada por milhares de pessoas ao mesmo tempo.
Na Catho eu também atuei no time de Data Science desenvolvendo APIs em Flask de alta escala para treinar modelos de recomendação, ali foi bem desafiante pois toda essa parte de engenharia de dados em larga escala e ML era novo para mim.
Na Red Hat eu estou em um projeto bastante significativo, O Ansible Automation Platform, onde me envolvo com questões de supply chain e segurança, alta escalabilidade e arquitetura distribuída de projetos complexos.
Eu fui promovido recentemente a Principal, e hoje tenho atuado mais na camada de arquitetura de novas implementações e solução de problemas críticos para nossos clientes.
É uma posição onde deixo um pouco de escrever código e passo a maior parte do tempo analisando e criando propostas de arquitetura, validando implementações, tornando a comunicação mais fácil entre os times e mentorando pessoas, ainda tenho tarefas de programação mas elas são mais focadas em inovação ou resolução imediata de problemas críticos, o maior desafio para mim está sendo esse de incorporar mais soft skills no meu dia a dia que costumava ser 100% técnico atrás do terminal, hoje uma reunião produtiva ou um documento bem escrito acaba tendo maior impacto para mim do que um código perfeito.
Enquanto o mercado todo estava de olho na linguagem Go para suprir as deficiências de concorrência de Python eu acabei tentando e não gostando muito da linguagem, no quesito de sintaxe e ergonomia, foi ai que comecei a pesquisar por alternativas ao Python para me manter atualizado e cheguei em Rust através de um evento promovido pela Mozilla, gostei logo de cara de tudo na linguagem, seu paradigma inovador, as garantias, a comunidade e o desafio de aprender uma linguagem difícil com uma estrutura muito diferente de tudo que eu já tinha visto, isso já tem 6 anos e desde então Rust tem sido minha linguagem de estimação, estudo, crio conteúdo, participo de eventos, espero um dia usar ela no trabalho mas até hoje só fiz um único projeto em Rust que foi um parser para testes quando eu era Engenheiro de Qualidade na Red Hat.
O CodeShow é um projeto que comecei em 2017, eu participava do Castalio Podcast, um podcast excelente fundado pelo Og Maciel, o Castalio era um canal voltado a conhecer o lado mais humano das pessoas da área tech, foi muito divertido participar mas eu sentia a necessidade de focar mais na parte mais técnica, então inspirado na icônica frase do Linus Torvalds “Talk is cheap, Show me the code” eu comecei o canal CodeShow com a premissa de que em todos os videos deveria ter código compartilhado.
O canal cresceu consideravelmente, passamos os 23k de inscritos e o conteúdo lá é tecnologia com foco no código, com cuidado especial para didática e conteúdo educacional.
Hoje o canal foi transformado em um canal colaborativo, não é mais só meu, tenho o prazer de contar com o Teo Calvo, Julio Faerman, Daniel Romero, Jessica Felix e em breve mais pessoas que vão mostrar o código no CodeShow.
Eu mantenho no Codeshow uma trilha de Rust onde estou ensinando Rust do zero, é um experimento onde estou tentando provar que é possível até começar na programação com Rust, pode esperar encontrar lá explicações bastante didáticas sobre o funcionamento da linguagem e em breve assim que avançarmos na série começarei a compartilhar o desenvolvimento de projetos e trazer novidades e dicas do ecossistema Rust.
É um grande desafio, eu sou uma pessoa bastante desorganizada e meu estilo de fazer tudo é na base do caos, eu tenho uns arquivos em markdown onde anoto minhas ideias e lista de tarefas, já tentei organizar com uma diversidade de ferramentas mas parece que só funciono na base do caos mesmo, então eu simplesmente vou fazendo o que tenho energia e motivação para fazer e nunca é constante, tem períodos que sou super produtivo no trabalho, mas não crio conteúdo nenhum, outros que produzo textos, aulas, videos, aprendo várias coisas mas fico em baixa produtividade no trabalho, acho que isso é equilíbrio, impossível estar 100% bom em todas as áreas 100% do tempo, o importante é se conhecer e lidar bem com as frustrações e principal que é ser sincero sobre isso com as pessoas envolvidas, eu tenho o privilégio de estar em uma empresa que sempre se preocupa com esse lado vulnerável do ser humano, meus gerentes entendem quando não estou na minha fase super produtiva no trabalho, a empresa me liberou horas semanais para dedicar a meus projetos open-source, isso é um privilégio que eu desejo que todo mundo possa ter.
O projeto mais desafiador até agora foi a paternidade, sério mesmo, nada foi mais difícil para mim do que ser pai, é a área onde tenho a maior síndrome de impostor e sempre acho que estou fazendo errado.
Mas voltando a parte profissional, o mais desafiador para mim foi me desligar das minhas aspirações técnicas e aprender a olhar para o lado de negócios do projeto, eu estou nessa fase onde as soft skills como comunicação assertiva e boa escrita tem muito impacto no desenvolvimento dos meus projetos, os desafios que antes eu resolveria com uma lib, uma técnica de programação assíncrona etc, hoje tenho que me preocupar com fazer os contatos certos na hora certa, com escrevem bem um documento de arquitetura, com não deixar passar o timing para apresentar uma ideia, a parte mais humana do desenvolvimento tem sido meu maior desafio, mas estou gostando, ainda não posso dizer que superei mas estou aprendendo.
Na minha opinião Python vai continuar sendo o canivete suíço na área de desenvolvimento durante muitos anos, existem linguagens que vão dominar nichos, como JS para web, Kotlin para mobile, Go para ferramentas de devops, Rust aos poucos substituindo C e C++ em várias vertentes incluindo games e engenharia de dados, mas Python, sempre será a segunda melhor linguagem em qualquer um desses nichos, hoje Python é líder em Dados e Automação, vai continuar assim, mas ainda será muito usada no restante dos nichos.
A minha aposta é que a interoperabilidade com Rust vai levar Python a níveis maiores de confiabilidade, já estamos vendo isso com projetos como Pydantic que foi reescrito em Rust mas continua sendo um módulo Python e nessa abordagem tem também o Polars que está tomando espaço do Pandas na área de dados.
Python será por muito tempo uma espécie de língua nativa para a acessar subsistemas, nunca será perda de tempo aprender Python.
Muito difícil, mas eu tenho tentado fugir da maioria dos hypes, por questões de trabalho eu precisei dedicar um bom tempo estudando Segurança, Assinatura Digital e Supply Chain e foquei nisso enquanto todo mundo estava atrás de web3 e blockchain, eu estou muito desatualizado com relação a qualquer coisa envolvendo crypto, mas acho que ainda não está me fazendo falta.
Meu próximo objetivo é investir em Systems Design e WebAssembly, então não vai dar para me aventurar em outras linguagens que eu gostaria de mexer como Zig e Gleam.
É preciso abrir mão de algumas coisas e fazer apostas, mas faço isso de forma consciente pois na empresa temos um plano de carreira onde sei exatamente quais são as techs que preciso focar para o trabalho, fora disso é mais alinhar motivação e gosto e evitar sobrecarregar.