Segue um resumo do Relatório de Tendências de Cultura e Métodos 2024 da InfoQ este artigo é originalmente encontrado neste link e a transcrição do podcast neste link.
Neste relatório é utilizado o modelo mental “atravessar o abismo”, conceituado por Geoffrey Moore, para orientar a navegação pelas tendências atuais e futuras. Nesse modelo temos as seguintes áreas: Inovadores, Maioria Inicial, Maioria Tardia, Retardatários.
Este ano, foram destacadas as mudanças significativas nas práticas de adoção tecnológica. Notavelmente, a Maioria Inicial, reconheceu o impacto climático da tecnologia, e os Inovadores estão agora movendo-se para além do reconhecimento, tomando ações efetivas para reduzir esse impacto.
No aspecto ético, algumas organizações estão adotando práticas de contratação e terceirização mais intencionais, com uma abordagem de alto impacto para criar um ambiente de verdadeira pertencimento. Além disso, organizações inovadoras estão avançando além das métricas de throuput simples para medir efetivamente o impacto da experiência do desenvolvedor e usar essas métricas para reduzir o atrito no ecossistema de desenvolvimento.
A adoção rápida de Modelos de Linguagem de Grande Escala (LLMs) tem impulsionado seu suporte ao desenvolvimento para a maioria inicial. Enquanto o trabalho remoto apresenta desafios para a inovação e colaboração, existem técnicas eficazes para abordá-los, destacando que a experiência do desenvolvedor pode ser medida e melhorada com métricas precisas, e a inclusão do impacto climático como atributo de qualidade em produtos de software é tanto possível quanto prático. A utilização de ferramentas de IA, como os grandes modelos de linguagem, potencializa o trabalho dos bons programadores, mas não substitui a necessidade de expertise e criatividade humana.
Tendências de Métodos e Cultura
Segue um comentário de cada um dos itens descritos e a posição de cada um deles.
Inovadores (Innovators)
Os Inovadores são os primeiros a adotar novas tecnologias, atraídos pela promessa de ganhos substanciais e dispostos a aceitar riscos significativos. Aqui esta uma lista dos tópicos nesta área segundo o relatório e uma descrição de cada um deles.
Climate Conscious Software Engineering
Engenharia de software consciente sobre o clima foca em incorporar considerações ambientais no desenvolvimento de software, visando reduzir o impacto ambiental das tecnologias de informação.
DevEx Metrics
Métricas de Experiência de Desenvolvedor (DevEx) avaliam a facilidade, eficiência e satisfação dos desenvolvedores no seu ambiente de trabalho, buscando melhorar continuamente a qualidade de vida no desenvolvimento de software. Mais informações neste link.
Impact Hiring/Outsourcing
Contratação ou terceirização com impacto refere-se a práticas de recrutamento que priorizam a responsabilidade social e ambiental, visando criar um impacto positivo na sociedade e no meio ambiente.
Value Mindset
Mentalidade de valor destaca a importância de cultivar uma cultura que valorize mais os benefícios a longo prazo e os resultados sustentáveis, em detrimento de ganhos imediatos e superficiais.
Descaling
Desescalar envolve reduzir a complexidade e o tamanho das operações para melhorar a agilidade e a resposta às mudanças do mercado, contrariando a tendência de crescer em escala.
Humanistic Workplaces
Ambientes de trabalho humanísticos focam na criação de espaços que promovem o bem-estar, a realização pessoal e o respeito pelas necessidades individuais dos colaboradores.
Systemic & Leadership Coaching
Coaching sistêmico e de liderança envolve a aplicação de técnicas de coaching para desenvolver líderes e equipes, considerando as interações e a dinâmica do sistema organizacional como um todo.
VR Collaboration
Colaboração em realidade virtual utiliza tecnologias de VR para facilitar a interação e a colaboração a distância, permitindo que as equipes trabalhem juntas em um ambiente virtual imersivo.
Culture Handbooks
Manuais de cultura são guias desenvolvidos por organizações para comunicar e solidificar a cultura empresarial desejada, ajudando os colaboradores a entender e aderir aos valores e práticas da empresa.
Adotantes Iniciais (Early Adopters)
Os Adotantes Iniciais são aqueles que abraçam novas tecnologias logo após os inovadores, ainda antes delas se tornarem amplamente aceitas. Eles estão dispostos a experimentar novas soluções para obter vantagens competitivas, apesar de possíveis riscos iniciais.
AI/ML Supported Testing (Testes Suportados por IA/ML)
A utilização de Inteligência Artificial e Aprendizado de Máquina para otimizar processos de teste em desenvolvimento de software, aumentando a eficiência e a precisão, enquanto reduz o esforço manual necessário nos testes.
Wellbeing and Mental Health Support (Suporte ao Bem-Estar e Saúde Mental)
Foco no suporte ao bem-estar e à saúde mental dos funcionários, implementando políticas e programas que promovam um ambiente de trabalho saudável e sustentável.
#NoProjects/Project-to-Product (De Projetos para Produtos)
Mudança da gestão baseada em projetos para uma abordagem orientada a produtos, onde o foco é na entrega contínua de valor ao invés de metas de projeto específicas.
Climate Awareness (Consciência Climática)
Elevação da consciência sobre as questões climáticas dentro das organizações, incentivando práticas que considerem os impactos ambientais das atividades empresariais.
Asynchronous Work (Trabalho Assíncrono)
Implementação de práticas de trabalho que não requerem que todos os membros da equipe estejam trabalhando ao mesmo tempo, promovendo flexibilidade e potencializando a produtividade em diferentes fusos horários.
Real Psychological Safety (Segurança Psicológica Real)
Criação de um ambiente de trabalho onde os colaboradores se sentem seguros para expressar ideias, fazer perguntas ou reportar problemas sem medo de retaliação ou desprezo.
DevEx/Employee Experience (Experiência de Desenvolvedor/Experiência do Empregado)
Investimento na melhoria da experiência dos desenvolvedores e outros empregados para aumentar a satisfação e a eficiência, através de melhores ferramentas, processos e ambiente de trabalho.
Business Agility
Adaptação rápida às mudanças do mercado e às necessidades dos clientes, implementando métodos ágeis em todos os aspectos da organização, não apenas em TI.
Team Self-selection (Auto-seleção de Equipes)
Permitir que os membros da equipe escolham com quais projetos gostariam de trabalhar, baseando-se em suas habilidades e interesses, para melhorar o engajamento e a produtividade.
Professionalism & Ethics (Profissionalismo e Ética)
Enfatizar a importância de comportamentos éticos e profissionais no ambiente de trabalho, assegurando que todos os funcionários sigam normas elevadas de conduta.
Team Topologies (Topologias de Equipe)
Utilização de estruturas organizacionais que definem como as equipes interagem dentro de uma empresa, otimizando a comunicação e a colaboração para maior eficácia no desenvolvimento de software.
Maioria Inicial (Early Majority)
A Maioria Inicial é composta por profissionais que adotam novas tecnologias após verificarem sua eficácia e aceitação no mercado. Este grupo busca confiabilidade e suporte extensivo antes de adotar novidades, preferindo investir em tecnologias que já possuem um certo nível de adoção e sucesso comprovado.
Large Language Models Supporting Development (Modelos de Linguagem de Grande Escala Apoiando o Desenvolvimento)
Modelos de linguagem de grande escala, como GPT e BERT, são usados para melhorar o desenvolvimento de software, facilitando desde a codificação automática até a geração de documentação, aumentando a eficiência e a qualidade do código.
Mob/Ensemble Programming (Programação Mob/Ensemble)
A programação em mob ou ensemble é uma abordagem colaborativa no desenvolvimento de software onde um grupo de programadores trabalha em conjunto em um único projeto ou tarefa ao mesmo tempo, promovendo aprendizado mútuo e qualidade de código elevada.
Low Code/No Code (Baixo Código/Sem Código)
Plataformas de baixo código ou sem código permitem a criação de aplicativos por meio de interfaces gráficas e configurações simples, reduzindo a necessidade de conhecimento profundo em programação e acelerando o desenvolvimento de soluções.
Deliberate Office Design for Hybrid Work (Design Deliberado de Escritórios para Trabalho Híbrido)
O design intencional de escritórios para suportar o trabalho híbrido envolve criar espaços que suportem tanto o trabalho presencial quanto remoto, equipando-os com tecnologia adequada e espaços flexíveis para colaboração e foco individual.
Diversity and Inclusion Beyond Lip Service (Diversidade e Inclusão Além do Discurso)
Promoção de verdadeira diversidade e inclusão, implementando políticas e práticas que vão além do discurso superficial, garantindo igualdade de oportunidades, tratamento justo e um ambiente inclusivo para todos.
Effective Remote Education (Educação Remota Eficaz)
Desenvolvimento e implementação de estratégias de educação a distância que sejam eficazes, envolventes e acessíveis, utilizando tecnologia para superar as barreiras do ensino tradicional e alcançar uma ampla gama de aprendizes.
Remote Tooling (Ferramentas para Trabalho Remoto)
Desenvolvimento e adoção de ferramentas projetadas para suportar o trabalho remoto, permitindo comunicação, colaboração e gestão de projetos eficazes independentemente da localização física dos colaboradores.
Craftsmanship (Artesanato em Software)
Enfoque na qualidade e no cuidado no desenvolvimento de software, tratando a codificação como um artesanato que requer habilidade, dedicação e contínuo aprimoramento para criar produtos excepcionais.
Coaching/Mentoring (Coaching/Mentoria)
Implementação de programas de coaching e mentoria para desenvolver habilidades, compartilhar conhecimentos e apoiar o desenvolvimento pessoal e profissional dos colaboradores dentro das organizações.
Maioria Tardia (Early Majority)
A Maioria Tardia adota novas tecnologias mais conservadoramente, geralmente quando essas já estão estabelecidas e provaram seu valor e eficácia no mercado. Este grupo tende a ser mais cético e resistente a mudanças, preferindo seguir práticas tradicionais até que as novas sejam amplamente aceitas.
DevSecOps
Integração de práticas de segurança no desenvolvimento e operações de software, visando melhorar a segurança do produto desde o início do ciclo de desenvolvimento, minimizando vulnerabilidades e riscos.
BDD/DDD (Behavior-Driven Development/Domain-Driven Design)
BDD foca no desenvolvimento guiado pelo comportamento, priorizando a colaboração entre desenvolvedores, QAs e stakeholders não técnicos. DDD é uma abordagem que centra o desenvolvimento no domínio e na lógica do negócio, facilitando a criação de software mais relevante e de alta qualidade.
Pragmatic Agility
Agilidade pragmática envolve adotar métodos ágeis de forma adaptada e realista, priorizando práticas que realmente agregam valor ao projeto e ao negócio, em vez de seguir rigidamente metodologias.
Remote Only Teams
Equipes que operam exclusivamente de forma remota, eliminando a necessidade de um escritório físico. Esta abordagem pode melhorar a flexibilidade e reduzir custos, mas requer ferramentas eficazes de comunicação e gestão.
Scaling Frameworks
Frameworks de escalabilidade, como SAFe (Scaled Agile Framework), ajudam organizações a aplicar agilidade em grande escala, coordenando múltiplos times ágeis para trabalhar sincronizadamente em grandes projetos.
ALM Tools (Application Lifecycle Management Tools)
Ferramentas de gestão de ciclo de vida de aplicativos que facilitam as fases de planejamento, desenvolvimento, teste e manutenção de software, proporcionando uma visão integrada do progresso e promovendo a eficiência.
Cross Functional Teams
Equipes compostas por membros de diferentes áreas de especialização que trabalham juntos desde o início do projeto, promovendo a inovação e acelerando a entrega de soluções integradas.
Digital Transformation
Transformação digital envolve a integração de tecnologia em todas as áreas de uma empresa, mudando fundamentalmente como ela opera e entrega valor aos seus clientes, frequentemente acompanhada pela adoção de novas práticas de negócios e modelos operacionais.
Truly Global Teams
Equipes verdadeiramente globais operam em várias geografias, aproveitando talentos de todo o mundo, o que permite trabalhar em fusos horários múltiplos e entender melhor as necessidades de clientes internacionais.
Principais insights
Segue um resumo dos principais pontos insights relacionados ao relatório e materiais relacionados.
Equipes e Trabalho em Equipe
A dependência crescente dos engenheiros de staff para coordenar comunicações e gerenciar dependências está expandindo seus papéis além das responsabilidades tradicionais. Este ajuste na expectativa para que atuem mais como facilitadores do que como contribuidores diretos suscita questionamentos sobre o equilíbrio ideal entre tarefas técnicas e de coordenação. Adicionalmente, o trabalho remoto influencia a coesão da equipe e a inovação, introduzindo um paradoxo de flexibilidade e individualização. Os benefícios da flexibilidade são contrabalançados pelo isolamento que reduz os laços de equipe e a lealdade à empresa, diminuindo potencialmente a inovação. Há uma necessidade emergente de abordagens estruturadas e criativas para fomentar a dinâmica de equipe e a inovação remotamente.
Diversidade e Inclusão
Atingir a diversidade dentro das equipes de desenvolvimento de software continua sendo um desafio significativo, exigindo que a inclusividade e o pertencimento se tornem a norma na indústria. A produção de designs que refletem os vieses da organização pode naturalmente inclinar as equipes à homogeneidade. A falta de diversidade, muitas vezes não intencional, resulta da tendência de nos cercarmos com indivíduos semelhantes. É necessário um esforço contínuo e atenção constante para promover uma verdadeira diversidade e inclusão, que não apenas beneficia a dinâmica das equipes, mas também aprimora a experiência do desenvolvedor e incentiva a inovação e aprendizado.
Impacto Climático
A engenharia de software exerce um impacto significativo na sustentabilidade e nas mudanças climáticas. A indústria precisa considerar sua pegada ambiental e adotar práticas que promovam a sustentabilidade. Iniciativas como a Agile Sustainability Initiative destacam a importância de incorporar a responsabilidade ambiental na comunidade de desenvolvimento. É essencial começar a tratar a pegada de carbono como um atributo de qualidade no desenvolvimento de software, garantindo que a sustentabilidade seja um aspecto central dos projetos. Os engenheiros de software têm um papel crucial no combate às mudanças climáticas, promovendo práticas mais sustentáveis na indústria.
Programadores e Inteligência Artificial
A integração de Modelos de Linguagem de Grande Escala (LLMs) e ferramentas de IA está remodelando como as equipes operam, colaboram e inovam. Embora essas tecnologias ofereçam potencial transformador, também trazem debates críticos sobre seu impacto na força de trabalho. As ferramentas de IA podem potencializar programadores habilidosos, mas também questionam o futuro do desenvolvimento de habilidades na indústria. Avanços em IA prometem ferramentas mais sofisticadas, tornando a IA uma ferramenta valiosa no kit profissional, que complementa e não diminui a necessidade de expertise humana. É crucial adotar uma abordagem equilibrada que maximize os pontos fortes da IA para realçar a criatividade e a perícia humana.
Conclusões
O Relatório de Tendências de Cultura e Métodos 2024 da InfoQ ilustra a evolução contínua das práticas e abordagens no desenvolvimento de software, destacando a importância crescente de adaptabilidade e sustentabilidade nas operações empresariais. Com o uso do modelo “atravessar o abismo”, o relatório categoriza inovações desde os Inovadores até os Retardatários, enfatizando como diferentes segmentos adotam tecnologias e práticas emergentes. Este ano, vimos uma ênfase particular na responsabilidade ambiental e ética, com as organizações não apenas reconhecendo o impacto climático da tecnologia, mas também tomando medidas proativas para mitigá-lo.
As práticas de contratação e terceirização também refletem uma mudança para uma abordagem mais ética e inclusiva, visando criar ambientes de trabalho que valorizem a diversidade e a inclusão além das palavras. A rápida adoção de Modelos de Linguagem de Grande Escala (LLMs) exemplifica o impulso para a eficiência, enquanto a adoção generalizada do trabalho remoto continua a desafiar e remodelar a dinâmica de equipe e colaboração.
Finalmente, a experiência do desenvolvedor surge como um foco crucial, com métricas específicas sendo utilizadas para aprimorar a eficácia do desenvolvimento e reduzir o atrito, garantindo que a qualidade e a inovação continuem sendo prioridades. O relatório não apenas destaca tendências emergentes, mas também fornece insights sobre como as organizações podem se adaptar e prosperar em um ambiente tecnológico em rápida mudança, sublinhando a importância de uma abordagem equilibrada que respeite tanto as necessidades humanas quanto as exigências técnicas.