Conheça mais sobre o guia.dev

O que é?

Um guia para contribuir com o processo de desenvolvimento de software, oferecendo conteúdo com foco principal em desenvolvedores(as).
O termo guia foi escolhido por ser uma palavra associada ao conceito de "orientar um caminho", unido ao termo dev, o diminutivo que se popularizou dentre os tantos nomes dados para desenvolvedores(as) de software. Desta forma o guia dev é um modelo para orientar caminhos à desenvolvedores(as) e profissionais de tecnologia em geral para trilharem as etapas de definição, construção e entrega de software através de práticas modernas e eficientes de engenharia.

Propósito

O propósito do guia dev é contribuir para que times de desenvolvimento obtenham um equilíbrio entre entrega de valor e qualidade no desenvolvimento de software. Para que este equilíbrio seja obtido, o guia dev foca nos objetivos abaixo.

Organizar times de desenvolvimento destacando o foco no negócio, através de estratégias que priorizem o modelo de domínios, personas da solução e compreensão do modelo de negócio, além de outras questões.

Construir software fazendo uso de boas práticas de engenharia, através do amadurecimento do time técnico, organização e compartilhamento do conhecimento e definição e uso de padrões para o projeto ou empresa.

Tornar o processo de desenvolvimento mais eficiente, através de automatização e estratégias de organização que permitam o entendimento da cadência do time, melhoria de desempenho e escala na entrega de software.

Motivação

Observar empresas com dificuldades em organizar seus times de desenvolvimento e principalmente dificuldades em entregas e/ou na qualidade do software são os maiores motivadores para a criação do guia. Em extremos entre startups e empresas grandes, um cenário comum é:

Startups validando ou consolidando o negócio, normalmente com pouco investimento principalmente nas fases iniciais, o que leva muitas vezes a composição de times de desenvolvimento com pouca experiência e/ou conhecimento resultando geralmente em entregas de valor mas que sacrificam qualidade no desenvolvimento de software.

Empresas grandes que normalmente já possuem modelos consolidados de desenvolvimento, com times de maior maturidade, maior preocupação com qualidade no desenvolvimento de software, mas que precisam se modernizar pois se tornaram burocráticas e desejam ser tão ágeis e dinâmicas quanto as startups.

Em ambos cenários há o desafio de equilibrar qualidade no desenvolvimento de software e entregas dentro de expectativas de tempo geralmente curto. Esse contexto gera a necessidade de estudo, experimentação e adoção de conceitos e ferramentas que muitas vezes desviam o foco da empresa com relação ao seu negócio. É sobre esse contexto que o guia foi estruturado para contribuir na organização de times, na adoção de temas relacionados a engenharia de software e na aceleração de aprendizado e entrega apoiado na vivência e experiência de desenvolvimento dos mais diversos modelos de software que se consolidaram nos últimos 20 anos.