Não é segredo que a área de DevOps é das mais valorizadas dentro das Tecnologias da Informação. É uma cultura que une por um lado a vertente do desenvolvimento - isto é, aqueles que são responsáveis pela criação das aplicações - e por outro, a das operações - os que se certificam que as aplicações estão efetivamente a trabalhar como é suposto. O principal objetivo passa pela automação de processos entre equipas de desenvolvimento e os departamentos operacionais, facilitando e acelerando, assim, o desenvolvimento, o teste e a entrega de novas soluções. Mas, quais são os conhecimentos e ferramentas mais importantes na vida de um DevOps? O que o torna diferenciador?
Para nos ajudar a perceber melhor o que é um DevOps, quais as suas responsabilidades, tarefas e desafios, estivemos à conversa com a nossa consultora Cláudia Tavares que nos deu a conhecer um pouco mais do meu mundo.
Como é que vieste parar ao mundo da informática?
Eu acho que foi algo muito natural. No meu 10º ano eu fui para Ciências e sabia claramente que não ia para nada ligado à medicina, mas não sabia para o que queria ir exatamente. Nessa altura, o meu pai decidiu inscrever-me num estágio de um mês na fábrica onde ele trabalhava, na parte de informática. Apesar de ter sido só um mês, eu gostei bastante da experiência e comecei-me a interessar pela área e a partir daí ficou decidido. Eu acho que ele [o meu pai] sabia que era uma área que tinha saída, aparentemente bem paga e de alguma forma achou que eu me encaixava lá.
Como surgiu o gosto pela vertente da segurança?
Fiz a licenciatura num politécnico. Julgo que os politécnicos acabam por nos preparar melhor em termos práticos, portanto senti-me muito preparada na licenciatura. Aqui escolhi o ramo de redes, ou seja, não escolhi a parte de web para a qual toda a gente tipicamente vai. Para mim não fazia sentido, porque honestamente, sendo rapariga, pode parecer contraditório, mas eu não gosto muito de estar a ajeitar o website e a pôr as coisas bonitinhas, para mim é um pouco stressante. Gosto das tarefas de backend, portanto fui para a área de redes e lá nós tínhamos uma cadeira de segurança que acho que foi dada de uma forma muito abrangente e suscitou-me muitas curiosidades que me levaram depois a querer seguir para um mestrado de segurança.
Já trabalhas como DevOps há cerca de 3 anos. Quais são as responsabilidades de um DevOps e qual a sua importância no ciclo de desenvolvimento de software?
Em termos de responsabilidades, temos bastantes. Basicamente o DevOps é aquele que faz a ligação entre a equipa de desenvolvimento e a equipa de operações. Portanto, o desenvolvimento acaba por tratar de desenvolver a aplicação que depois é necessária para as operações. Nós DevOps somos os responsáveis por tornar tudo automatizado, tornar o processo mais seguro e direto para que tudo flua de uma forma mais natural.
Nós pegamos naquilo que o desenvolvimento vai fazendo e automatizamos de alguma forma. Quase que estamos por cima de tudo aquilo que o desenvolvimento faz, por isso precisamos de ter conhecimento sobre tudo o que fazem, pois temos de automatizar e tornar o processo mais eficaz e mais seguro.
Às vezes gera um pouco de atritos porque nós somos vistos como uma equipa à parte e existe falta de comunicação. O desenvolvimento ou as operações não percebem o quanto é importante nós sabermos o que eles estão a fazer. Às vezes dizem-nos algo muito abrangente, mas isso não nos chega. Nós precisamos de perceber coisas específicas sobre o serviço para conseguirmos implementar e automatizar o processo.
Que tipo de ferramentas é comum um DevOps utilizar?
Nós em termos de monitorização usamos muito o Prometheus e o Grafana. Acho que são ferramentas muito conhecidas e acho que são importantes. O Prometheus ajuda a que tenhamos as métricas para os serviços e o Grafana permite a visualização das métricas de forma mais eficaz para a equipa de operações conseguir perceber o que está a acontecer do lado dos clientes.
Há também a parte do Elasticsearch, Kibana e Logstash. Eles funcionam os três como um só, conhecidos como o ELK e permitem recolher (Logstash), armazenar (Elasticsearch) e visualizar as métricas (Kibana).
A parte da cloud também é bastante importante. Aqui temos várias clouds, mas devemos ter pelo menos um conhecimento abrangente do que é que podemos fazer em cada uma. No meu caso, por exemplo, tenho mais conhecimentos em AWS e deve ser também das mais utilizadas, por isso é uma boa ferramenta para começar.
Por fim, em termos de containers é muito importante ter conhecimentos sobre Docker e Kubernetes. Este último funciona por cima do Docker, por isso conhecendo o Docker é muito fácil perceber o que é que o Kubernetes faz e como é que podemos trabalhar com ele.
Se tivesses de recrutar um DevOps para a tua equipa, qual seria o fator diferenciador que procurarias num profissional?
Não é uma pergunta fácil, mas diria que a autonomia é sempre importante em qualquer área. Em DevOps como é uma área tão abrangente, é preciso termos autonomia para procurar e daí termos de ter gosto pela área.
A parte da comunicação também é relevante, ou seja, não podemos ficar à espera que as coisas nos cheguem, temos de nos chegar à frente e falar com as equipas. Temos de comunicar muito. Por isso, diria que ter autonomia, gosto pelo que fazemos e ter à vontade e abertura para comunicar é importante.
Em termos de hard skills, diria que ter conhecimentos de segurança é sempre importante. Acho que é um “plus” bastante relevante. Claro que podemos ser DevOps sem ter conhecimentos de segurança, mas acho que é algo que faz a diferença. Traz um fator diferenciador. Para além disso, acho que ter conhecimentos sobre redes é importante porque também trabalhamos muito com essa parte.
Por fim, acho que iria também procurar por alguém com conhecimentos nas ferramentas que os DevOps usam como containers, clouds e monitorização de serviços.
Como é o teu dia a dia no projeto em que te encontras atualmente?
O meu dia a dia nunca é o mesmo. Eu tenho tarefas do dia, mas acontece muitas vezes surgirem chamadas de última hora com pedido que é preciso resolver para a equipa de Devs e de Operações que vou gerindo consoante as prioridades. Além disso, temos ainda as revisões de código. Costumo logo começar o dia com o código que tenho para rever e deixar isso limpinho para não ter de me preocupar novamente.
Depois, começo as minhas tarefas e vejo o que vai surgindo ao longo do dia. Normalmente estão relacionadas com processos de automatização. Por exemplo, quando surge algum serviço novo, a equipa de DevOps precisa de preparar um playbook que automatiza a instalação desse serviço. Quando é preciso uma métrica nova para determinados serviços, temos de preparar a monitorização para essa métrica também. Estamos ainda encarregues de fazer a análise das máquinas que a equipa de Devs e de Testes utilizam.
Explora os nossos projetos de DevOps!
Queres dar um passo em frente da tua carreira nesta área? Conhece todos os projetos que temos disponíveis!
Quais são as ferramentas e tecnologias que utilizas diariamente no teu trabalho?
Utilizo o Jira e o Fisheye. O primeiro permite a criação e gestão de “issues” que nos são atribuídos ou que temos de criar para a equipa de Devs desenvolver. O Fisheye permite fazer a análise da revisão do código que foi feita na análise desses issues. Usamos também o GitHub que é uma plataforma onde temos o nosso código armazenado. Em termos de monitorização temos sempre o Prometheus e o Grafana onde fazemos bastante a análise das métricas para perceber se as máquinas estão num ambiente estável e se está tudo ok. Usamos ainda o Mobaxterm para conseguirmos fazer o SSH para as máquinas e validar se está tudo ok. Em termos de Cloud utilizamos o AWS para fazermos testes de instalação do nosso produto na Cloud.
Explora os nossos projetos de DevOps!
Como achas que a área de DevOps vai evoluir nos próximos tempos?
Acho que a área de DevOps está sempre em constante evolução. Há uns anos não tínhamos esta parte de containers e microserviços e nesta altura já é mais usual. Portanto eu acho que isso vai continuar a ser mais comum. Eu diria que a parte de DevOps vai acabar por ser interligar ainda mais com a área de DevSecOps, porque acho que estamos cada vez mais a par do que vai acontecendo e a segurança é cada vez mais uma prioridade. Desta forma, acredito que a parte de DevOps e DevSecOps se vai acabar por tornar numa só área.
Qual é a parte mais desafiante de ser DevOps?
Eu diria que, pelo menos para mim, que sou uma pessoa que gosta de saber o que vai acontecer no meu dia e ser organizada, a parte mais desafiante é a imprevisibilidade. Ou seja, é estar sempre à espera de tudo, podem-me ligar a perguntar alguma coisa simples ou então pode ser alguma coisa que afinal vai demorar imenso tempo a ser executado e que não era uma pergunta assim tão simples.
DevOps: porque é que as empresas investem tanto nestes profissionais?
Se pudesses ter um super poder no teu dia a dia profissional, qual escolherias e porquê?
Ser multifacetada assim ao nível máximo, porque surgem sempre imensas coisas. Sinto que tenho sempre um dia muito mexido. Há sempre alguém que liga e ao mesmo tempo tenho as minhas tarefas, portanto acho que gostava que fosse possível conseguir estar a fazer as duas tarefas em simultâneo de forma eficaz.
Como te manténs atualizada com as mudanças no setor?
Costumo fazer alguns cursos na Udemy, acho que é uma forma boa para estarmos a par de algumas ferramentas.
Na área de DevOps é bastante importante estarmos atualizados em termos de notícias que vão saíndo relativamente à segurança, alguns podcast que possam tratar desta área, etc. Acho que há muito conteúdo que aborda esta área. Eu vou vendo mesmo pela internet o que é mais recente e não tenho um canal que siga religiosamente. Por exemplo, se alguma ferramenta me suscitar interesse vou procurar diretamente informação sobre a mesma.
O que mudarias no teu percurso até agora se pudesses?
Não mudava nada. Acho que fiz o percurso certo. É o que me levou onde estou e estou muito satisfeita com todo o meu percurso e com aquilo que alcancei. Portanto não mudava rigorosamente nada.
Explora os nossos projetos de DevOps!
Queres dar um passo em frente da tua carreira nesta área? Conhece todos os projetos que temos disponíveis!
Qual foi o melhor conselho que já recebeste e que gostarias de passar a outros?
Não ter medo de arriscar. Todos cometemos erros. É normal não gostarmos de cometer erros, mas é importante fazê-lo para saber o que não podemos fazer de uma próxima vez. É muito importante ter autonomia e se estivermos sempre a pensar no que pode correr mal, vai ser um entrave. Temos de aceitar que vamos cometer erros, que é normal e que eles nos vão fazer crescer de alguma forma.
Se também trabalhas nesta área ou gostarias de ter a tua primeira experiência enquanto DevOps Engineer, explora os nossos projetos aqui. Sabe mais sobre temas como carreira, produtividade, tecnologia, gestão ou liderança no nosso podcast:




