Quem é Maurício Aniche?

Feb 7 / Magno Vitallino



Meu nome é Maurício, e eu trabalho com desenvolvimento de software há 19 anos (ou pelo menos, há 19 anos atrás eu entrei na faculdade e comecei formalmente minha educação na área). No Brasil, trabalhei em empresas como Verifone, Locaweb, e no grupo Alura. Hoje moro na Holanda (já fazem 7 anos!), e trabalho na Adyen, uma das maiores fintechs do planeta. Meu papel na Adyen é bem variado: eu lidero um time que toma conta de todo o processo de onboarding e upskilling do time de engenharia. Eu também lidero diferentes iniciativas técnicas, como por exemplo, melhorias nos nossos testes e arquitetura. Eu também sou professor assistente em engenharia de software na Universidade Técnica de Delft (TU Delft), onde leciono testes de software.

Minha grande paixão na área sempre foi relacionado a qualidade de código. Não só como escrever "código bonito", mas também como testar! Publiquei alguns livros sobre o assunto. Meu livro de TDD saiu em 2012 pela Casa do Código, por exemplo. E, mais recentemente, em 2022, publiquei o "Effective Software Testing: A Developer's Guide" pela Manning.

Saiba mais em www.mauricioaniche.com
Maurício possui mestrado e doutorado em ciências da computação pela Universidade de São Paulo, Brasil. Durante seu mestrado, ele cofundou a Alura, uma das plataformas de e-learning mais populares para engenheiros de software no Brasil. Ele é o autor de muitos livros: "Effective Software Testing: A Developer's Guide", bem como "TDD no Mundo Real" e "SOLID para Ninjas".

Maurício acredita fortemente que a engenharia de software em breve se tornará um campo mais baseado na ciência. Um de seus objetivos é garantir que os profissionais saibam o que os acadêmicos estão fazendo e que os acadêmicos conheçam os desafios reais que os profissionais enfrentam em seus trabalhos diários.

LINUXtips - Como você se identificou com a área e porque escolheu essa profissão, quais foram os passos para chegar nela (cursos, início no mercado de trabalho)? 

Maurício - Meu pai comprou um computador quando eu era bem jovem. Talvez uns 6, 7 anos. E, por algum motivo, ele começou a aprender a programar em BASIC. Eu me interessei muito pela "brincadeira" quando vi. Meu pai, percebendo meu interesse, investiu nisso. Me comprou livros de programação para crianças, me pagou cursos de programação (em um curso de Delphi, o instrutor não queria nem deixar eu participar por causa da minha idade!), além de me dar um computador. Quando fiquei mais velho, nem pensei sobre carreira, para ser honesto, já sabia que queria ser programador.
Meu primeiro emprego formal como programador, acredite ou não, achei pelo Orkut. Alguém postou uma vaga de emprego, eu mandei meu curriculum, e deu certo. Ganhava 600 reais, trabalhava 4-6 horas por dia. Meu primeiro projeto foi customizar a loja virtual em ASP que a Locaweb disponibilizava de graça na época, para que as pessoas pudessem criar suas lojas e colocar lá! 
Depois disso, fui entendendo mais da área, fui procurando por empregos melhores, e tudo foi dando certo!
"Se manter atualizado é fundamental para que consigamos continuar resolvemos os problemas cada vez mais complexos que aparecem pela frente."

LINUXtips
- Quais os maiores desafios quando uma nova pessoa colaboradora entra na empresa/time?

Maurício - O assunto é bem profundo, e posso escrever páginas sobre o assunto! Entrar em uma nova empresa é absurdamente desafiador, por todos os pontos de vista. Do ponto de vista técnico, entender as ferramentas que o time usa, a arquitetura, principais decisões arquiteturais, o porquê as coisas são como são, é desafiador. Do ponto de vista social, entender as dinâmicas do time, as dinâmicas da empresa, como as pessoas gostam de se comunicar, o que é socialmente aceitável e o que não é, também. E, do ponto de vista pessoal, mudar de trabalho é estressante. Você não sabe o que esperar, você não sabe o que esperam de você… Por essa e outras que você vê times dedicados a isso, como é o caso da Adyen.

LINUXtips
- Qual a importância de um programa de capacitação recorrente para as pessoas colaboradoras?
Maurício - Um dos grandes desafios da nossa área é que as coisas ainda mudam o tempo todo. Novas tecnologias aparecem o tempo todo, novas maneiras de desenvolver software, novas boas práticas, aprendemos mais sobre práticas que pensávamos ser boas e vemos que às vezes elas não eram tão boas assim. Se manter atualizado é fundamental para que consigamos continuar resolvemos os problemas cada vez mais complexos que aparecem pela frente. 
Nossa área não é a única assim. Médicos, por exemplo, precisam se atualizar o tempo todo. Novos remédios aparecem, novas técnicas cirúrgicas, novas recomendações. Acho que temos muito a aprender com eles, já que desde cedo, eles aprendem que se atualizar é fundamental. Médicos aprendem a ler artigos científicos desde cedo, por exemplo, algo ainda raro entre pessoas desenvolvedoras.
As empresas também já perceberam que não dá pra esperar que a pessoa vá estudar depois que saiu do trabalho. Ninguém tem tempo pra isso. As empresas que realmente se importam com as pessoas (e que se importam com continuar a resolver problemas complexos de maneira efetiva) pagam para as pessoas estudarem!

LINUXtips
- Parabéns pelo seu mais novo livro Effective Software Testing! Conte um pouco da motivação para a criação dele?

Maurício - Esse livro nasceu durante a pandemia. Eu ensino testes para os alunos e alunas de Delft. Com a pandemia, e as aulas mudando para online do dia pra noite, eu decidi que abriria as minhas notas de aula para que as pessoas que não conseguissem participar da aula via Zoom ainda conseguissem estudar.
Eu abri não só para os alunos, mas para todos. O feedback foi bem legal. Do nada, pessoas começaram a me mandar mensagem sobre as notas de aula. Algumas dessas pessoas até eram professores de outras universidades. No segundo ano, eu melhorei ainda mais as notas de aula, e o feedback dos alunos foi ainda melhor.
Foi aí então que decidi "profissionalizar" e escrever um livro de verdade. Passei basicamente 1 ano revisando cada nota de aula, adicionando exemplos, clarificando frases, e etc. A Manning me ajudou bastante também, e me deu muitas dicas legais!
Ah, e já estou escrevendo um segundo livro, também com a Manning. Mas não vou falar sobre o quê. Surpresa! :)
Write your awesome label here.

LINUXtips
- Falando sobre o livro Effective Software Testing, você fala bastante sobre reduzir o risco e o custo corrigindo defeitos com antecedência por meio de testes. Você pode nos dar um spoiler e contar um pouco sobre a “cultura de testes”?
Maurício - Cultura é talvez até mais importante do que os desafios técnicos de se testar. Se você tem um time, ou ainda mais, uma empresa que acredita em testes automatizados, os desafios técnicos viram só um detalhe, um item no backlog que vai ser resolvido. Agora, se você está em um time que não tem essa cultura, convencer a galera de que testar de maneira automatizada é a única maneira de conseguir entregar software de maneira contínua e com confiança é difícil. Acredite ou não, mudar é difícil. Mesmo que o time saiba que teste é importante, fazer testes virarem uma coisa do dia-a-dia não é fácil.
Ou seja, entrou numa empresa, e a galera não testa. Minha sugestão é pensar em como você vai mudar a cultura primeiro, e só depois pensar em ferramentas.

LINUXtips
- “Automatizar” é o futuro?

Maurício - Sem dúvida. E ainda mais agora com esses modelos de IA mostrando que são realmente poderosos, vejo cada vez mais esse tipo de ferramenta entrando no dia-a-dia da pessoa desenvolvedora. Você não vai precisar saber como o GPT funciona por baixo dos panos, mas aprender a usar essas ferramentas vai ser fundamental do mesmo jeito que você domina sua IDE, domina Stack Overflow, domina SQL. Sim, eu aposto que vai ser ferramenta cotidiana nesse nível! 

LINUXtips
- No início da sua jornada/carreira profissional, você teve alguém que te apoiou e foi essencial nesse processo?


Maurício - Meu pai e minha mãe sempre me deram muita ajuda, inclusive financeiramente. Sem ter o papai e mamãe bancando meu tempo de estudo, nada disso seria possível. Tive sorte na vida. Tive também professores que me influenciaram muito e alguns ainda influenciam até hoje, mas com certeza meu pai e mãe são os responsáveis, de longe.

LINUXtips
- Você tem uma base acadêmica muito sólida, parabéns! Qual a importância de continuar estudando na sua vida?
Maurício - Fazer um mestrado e um doutorado é uma opção de vida, e como tudo, tem vantagens e desvantagens. Mas continuar estudando é fundamental. Todo mundo precisa achar o seu ritmo, como colocar "estudo" na agenda para que isso fique constante!
Muito do que eu "vendo" hoje quando falo de testes não veio só da minha experiência pessoal. Foi uma mistura dos sei-lá-quantos livros e papers e palestras e posts de blog que li sobre o assunto. 

LINUXtips
- Como é dar aula em uma universidade no exterior? E como é ter sido escolhido o professor do ano? E parabéns novamente!
Maurício - Dar aula, de maneira geral, é uma experiência fantástica! É bem legal também dar aula em uma universidade gringa. O desafio maior, claro, é cultural. Os holandeses, por exemplo, têm menos respeito pela hierarquia acadêmica que os brasileiros. No começo foi bem difícil entender isso. Recebi e-mails de alunos que não conseguia imaginar um professor ou professora no Brasil recebendo. E recebo até hoje, mas agora sei lidar melhor com isso.

 A vantagem é a diversidade. No Brasil, você raramente tem uma sala tão diversa em relação à diferentes números de países. Na USP, eu até encontrava algumas pessoas de países da América Latina, mas aqui, são pessoas do mundo todo, e isso é bem legal.

LINUXtips
- Como foi sua jornada mudando para uma empresa no exterior e qual dica você daria para alguém que está tentando o mesmo?
Maurício - Mudar de país é um desafio muito grande. Você chega em um lugar e não sabe nem o que fazer com o lixo da casa (meu caso!). Você não tem sua família pra te confortar, ou mesmo para te ajudar numa emergência. Mas, em compensação, eu cresci demais como pessoa e recomendo a todos. Acho que a maior recomendação é: se você tem vontade de ir pra fora, se joga! Vai dar medo, mas tudo vai dar certo! :)

LINUXtips
- O que você acha sobre “Ser especialista no começo e depois generalista”? Faz sentido para você?
Maurício - Acho que todas as possíveis combinações de caminho são válidas, e tem espaço para todos no mercado. No começo da minha carreira, eu era muito mais generalista. Estava ali na linha de frente do desenvolvimento, e programava no que aparecia na minha frente. Mudava de PHP, para Java, para C#, de volta para PHP toda semana, e não sentia. Hoje me sinto muito mais especialista, sei de poucas coisas, mas muito à fundo, e tenho espaço no mercado. Você tem que ver o que te agrada mais. Algumas pessoas gostam de saber um pouco de tudo. Eu gosto de saber de poucas coisas mas muito a fundo!

LINUXtips
- Como você costuma lidar com seus erros e “cagadas”, no trabalho ou na vida? Conta pra gente algum que tenha te trazido um aprendizado importante.

Maurício - Erros pequenos acontecem o tempo todo. Ainda mais nesse mundo rápido. Você tenta algo, dá errado, você aprende, e muda a direção. Ver o erro como parte do processo e não como "algo grave" é fundamental se você quer andar rápido!
Meu primeiro projeto como líder técnico, em 2005-2006, não rodou por 24 horas. Teve um bug ferrado, que parou o estabelecimento por horas! Foi traumático. E foi essa experiência que me fez focar em aprender testes de uma vez por todas. Há males que vem para o bem! :)

LINUXtips
- Falando sobre soft skills, quais você acha que são as mais importantes para o mercado tech? E quais você aprendeu a ter?
Maurício - Nesse momento da minha carreira, eu diria que gerenciar pessoas é mais difícil do que parece. Você quer micro-gerenciar pessoas, você quer dar espaço para elas explorarem suas próprias ideias. Mas, ao mesmo tempo, você é o responsável pela execução da visão, e você quer saber como as coisas estão indo. Você também quer achar o nível certo para dar feedback na ideia da pessoa, você quer dar ideias, mas também não quer que ela só execute. Você também tem que ajudar a pessoa a descobrir seu potencial, discutir salário e performance, e o que fazer se a performance foi baixa. Tudo isso é difícil. 
E ao mesmo tempo, é uma habilidade fundamental. Todo mundo vai liderar pessoas em algum momento da carreira. Eu precisei ler sobre o assunto para me tornar um líder melhor, pois isso não era algo natural pra mim.

Descomplicando o papo...


LINUXtips
- O que você gosta de fazer nas suas horas de descanso, fim de semana?
Maurício - Passar tempo com meu filho é meu hobby favorito. Mas quando estou sozinho, meu maior hobby é o xadrez. Passo horas assistindo partidas de grandes mestres ou assistindo as lives dos streamers brasileiros (Oi, Xadrez Brasil, Oi, Raffa Chess, sou fã de vocês!).

LINUXtips
- Momento Marília Gabriela: Um sonho, um medo e um Prazer culposo?

Maurício
- 
Um sonho: já realizei, morar fora do país!
Um medo: Perder contato com meus pais
Guilty pleasure: Sorvete!!!!

LINUXtips
- Você gosta de séries? Recomenda alguma pra comunidade ai!

Maurício
- Eu sempre joguei muito futebol. Quando mudei pra Holanda, comecei a andar muito de bicicleta. Um ano antes da pandemia, virei um rato de academia junto com minha esposa e um amigo meu. Íamos 3-4 vezes por semana. Parei durante a pandemia, e ainda não voltei ao ritmo. Preciso achar uma maneira de colocar o esporte novamente na rotina. O desafio agora é, claro, o filho pequeno.

LINUXtips
- E por último: Qual foi a última coisa que você fez pela primeira vez?

Maurício
- Que ótima pergunta. Demorei muito pra responder! Acho que foi jogar mini golfe! Decidimos ir em um no nosso último encontro de time. E, pra minha surpresa, é muito divertido!