Essas perguntas foram mostradas apenas aos entrevistados que indicaram “Engenheiro de DevOps/Desenvolvedor de infraestrutura” como uma de suas funções, bem como para 1/5 de todos os outros entrevistados que participaram da pesquisa, escolhidos aleatoriamente.

DevOps

Desenvolvimento de infraestruturas

Qual o seu grau de envolvimento pessoal no desenvolvimento da infraestrutura?

Não é nenhuma surpresa que os engenheiros de DevOps estejam mais envolvidos no desenvolvimento de infraestruturas do que outros desenvolvedores.

Os salários dos engenheiros de DevOps são mais altos do que os dos desenvolvedores em geral.

Qual é o seu nível de familiaridade com o Docker?

A distribuição de participações com relação às principais plataformas para as quais os usuários do Docker desenvolvem corresponde à distribuição entre a população geral de desenvolvedores: Back-end da Web (88%) e Front-end (65%). Por outro lado, as participações para Servidor/Infraestrutura (44% vs 26%) e Nuvem (29% vs 17%) são muito diferentes das participações para essas categorias entre a população geral de desenvolvedores.

Os usuários do Docker têm três vezes mais chances de trabalhar como engenheiros de DevOps ou desenvolvedores de infraestrutura, duas vezes mais de serem arquitetos e 30% mais de atuarem como líderes de equipe. Eles também são mais propensos a ocupar uma posição sênior.

Qual é o seu nível de familiaridade com o Docker Compose?

Os desenvolvedores que usam o Docker Compose preferem o Linux (64% vs 47%) e o macOS (58% vs 44%) mais do que os desenvolvedores em geral e também usam o Windows como ambiente de desenvolvimento a taxas significativamente mais baixas do que a população geral de desenvolvedores (44 % vs 61%).

Que ferramentas de gerenciamento de configuração você/sua organização utiliza?

Essa pergunta foi mostrada aos entrevistados envolvidos no desenvolvimento de infraestruturas.

O mercado de ferramentas de gerenciamento de configuração não mudou. O Ansible continua sendo a escolha mais popular, enquanto o segundo lugar pertence às soluções personalizadas.

É interessante notar que vários desenvolvedores não envolvidos em DevOps usam soluções personalizadas para gerenciamento de configuração com relativamente mais frequência, enquanto os engenheiros de DevOps tendem a preferir as soluções listadas.

Que ferramentas de modelagem de servidor você/sua empresa costuma utilizar?

Fato interessante

Os engenheiros de DevOps são mais propensos do que outros desenvolvedores a usar as linguagens de script Go e Shell, mas menos propensos a usar C ou C++.

Curiosamente, as pessoas envolvidas em DevOps usam o TypeScript em taxas mais altas e o JavaScript em taxas mais baixas do que o restante da comunidade.

Que ferramentas de provisionamento de infraestrutura você/sua organização utilizam?

Essa pergunta foi mostrada aos entrevistados envolvidos no desenvolvimento de infraestruturas.

Como você utiliza contêineres?

Essa pergunta foi mostrada aos entrevistados que usam o Docker.

Que serviços de orquestração de contêiner você utiliza, se aplicável?

Essa pergunta foi mostrada aos entrevistados envolvidos no desenvolvimento de infraestruturas.

Até este ano, a popularidade do Kubernetes vinha crescendo rapidamente. Com base nos dados da nossa pesquisa, ele foi usado por 16% dos desenvolvedores em 2018, 29% em 2019 e atingiu 40% em 2020. Em 2021, no entanto, a popularidade do Kubernetes parou de aumentar.

Qual é o seu nível de familiaridade com o Kubernetes?

Essa pergunta foi mostrada aos entrevistados que usam o Kubernetes.

90% dos desenvolvedores que usam o Kubernetes têm discos SSD e também costumam ter quantidades de RAM acima da média em seus computadores.

Como você executa sua aplicação em contêiner durante o desenvolvimento?

Essa pergunta foi mostrada aos entrevistados que deram uma das respostas a seguir à pergunta “Como você usa contêineres”: “Executo minha aplicação em um contêiner e uso serviços de backup (por exemplo, banco de dados)” ou “Executo vários contêineres de aplicações (por exemplo, microsserviços)”.

Parece que existem algumas preferências regionais: os desenvolvedores na China e na Índia preferem a execução no Docker, enquanto o Docker Compose é um pouco mais popular nos Estados Unidos, no Japão e na Europa.

Como você executa sua aplicação em contêiner durante o desenvolvimento?

Os desenvolvedores PHP preferem usar o Docker Compose, enquanto os desenvolvedores Python preferem a execução no Docker em vez de outras aplicações em contêiner. Nenhuma das outras linguagens teve grandes diferenças com relação às preferências de seus usuários por aplicações em contêiner.

Onde você mantém seus artefatos, se aplicável?

Hospedagem

Onde estão hospedados os bancos de dados, serviços e/ou aplicativos que você ou sua empresa desenvolvem?

Hospedagem de bancos de dados e/ou serviços e/ou aplicações por porte de empresa

Quais serviços de nuvem você utiliza?

A Amazon Web Services é líder em soluções de nuvem, e sua popularidade continua a crescer.

O uso de serviços em nuvem dependendo do tamanho da empresa

Está evidente que a plataforma da Amazon Web Services é usada amplamente por engenheiros de DevOps, já que mais de 70% trabalham com ela. Enquanto isso, o Google Cloud Platform e o Heroku são um pouco mais populares entre os desenvolvedores que não estão envolvidos com DevOps.

Os especialistas em DevOps também são mais propensos do que os desenvolvedores em geral a usar vários serviços de nuvem.

Durante o desenvolvimento, onde você executa e depura seu código?

Durante o desenvolvimento, onde você executa seus serviços de suporte?

Serviços de suporte são aplicações de terceiros aos quais o seu código se conecta, por exemplo, um banco de dados, um agente de filas ou um servidor de correio.

Quantos serviços de suporte em execução separadamente (aqueles que você não desenvolve, como MySQL, Redis, CloudFront) sua aplicação tem?

A aplicação média que está sendo desenvolvida hoje consiste em 3 a 5 componentes. Além disso, de 3 a 5 serviços de suporte são normalmente usados.

Quantos serviços de suporte em execução separadamente (aqueles que você não desenvolve, como MySQL, Redis, CloudFront) sua aplicação tem?

Por linguagem

Quantos componentes em execução separada seu aplicativo possui, excluindo serviços de suporte?

Estes são os componentes que você desenvolve ou que são desenvolvidos por terceiros na sua empresa.

Serviços na nuvem

36% dos entrevistados usam serviços de nuvem em seus workflows de desenvolvimento. Serviços de nuvem são mais comumente usados para trabalhar com dados armazenados na nuvem e para a reprodução do ambiente de aplicações para desenvolvimento local.

Como você usa os serviços de nuvem em seu fluxo de trabalho de desenvolvimento?

Uso serviços de nuvem porque:

Obrigado pelo seu tempo!

Esperamos que você tenha achado nosso relatório útil. Compartilhe este relatório com seus amigos e colegas.

Participe do Laboratório de Insights de Tecnologia da JetBrains

Participe de pesquisas e estudos de experiência do usuário para tornar os produtos da JetBrains mais fáceis de usar, porém ainda mais poderosos. Você também terá a oportunidade de ganhar recompensas por participar das nossas pesquisas.

Se tiver dúvidas ou sugestões, entre em contato conosco em surveys@jetbrains.com.