Vamos conversar?
Entre em contato e vamos conversar sobre seus desafios de TI.
Anti-patterns
Na área de TI, antipadrão é aquela prática que, apesar de ser comumente usada, é ineficiente ou contra-produtiva. Nesse sentido, iremos analisar alguns dos erros mais comuns ao montar times de produto.- Fuja da “euquipe”: um produto digital não é um esforço para uma pessoa só. Desde 1986, já está consolidado que a criação de produtos requer um time multidisciplinar, capaz de aportar para o produto as várias visões necessárias: de negócio, de usuário, de tecnologia, etc. Mesmo em uma startup early-stage, onde a equipe certamente precisa ser enxuta, contar com uma pessoa sozinha para resolver todo o produto digital costuma ser uma decisão ruim, com impacto negativo no resultado, no time-to-market, e no pior dos casos, até na retenção do conhecimento.
- Silos ou times? Se você trabalha em uma empresa madura, outra preocupação é conseguir quebrar os silos. Um time requer um grupo de pessoas trabalhando juntas. Não é possível manter as pessoas em setores separados (o setor de qualidade, o setor de design, etc.) e transferir demandas entre eles. Esse tipo de padrão gera esforço adicional de hand-off (transferência da tarefa entre setores), e quebra a colaboração que é necessária para lidar com a complexidade de um produto digital.
- Trabalhando por Jobs: Outro anti-pattern é contratar as pessoas necessárias, mas não deixar que elas se dediquem para o produto, dividindo a atenção dessas pessoas entre múltiplos jobs ou contextos diferentes. Quem trabalha assim não vai dedicar a atenção necessária para se aprofundar no contexto do produto, além de perder produtividade. O melhor é ter um time dedicado. Algumas divisões são possíveis? Sim, e vamos citar algumas delas a seguir. Mas se uma pessoa nem sequer sabe dizer em que produto está trabalhando… tem algo errado!
Estrutura e Tamanho dos Times
Pensar em como o time é estruturado é um ponto importante. O design da organização tem um impacto nos resultados, porque ajuda a deixar claras as responsabilidades, expectativas e até o nível de autonomia. Esse assunto é tão importante que já existe até uma área de estudo focada na estruturação dos times para atingir melhores resultados. De acordo com Raphael Silva, Agilista da SoftDesign, é essencial pensar na estrutura do time baseando-se nas competências individuais dos envolvidos e em como elas podem se complementar, pois isso afeta diretamente o tamanho do time, os custos e o hand-off. “Esse é um fator de alto risco, se for feito por alguém que não entende o processo de construção de produtos digitais”, alerta. Para não partir do zero, então, uma possibilidade é estudar alguns modelos já existentes para nos inspirar ao criar times. Tais modelos são fruto de processos ou de cases conhecidos de empresas famosas. O modelo mais comum hoje é aquele sugerido pelo Scrum. Nesse framework, os papéis em um time de produto são: Scrum Master, Product Owner e Developers. É importante comentar que são papéis, e não cargos. Em última instância, um programador poderia assumir também o papel de Scrum Master. O Product Owner pode ser alguém do negócio, que participa ativamente junto ao time. E os Developers são todas as pessoas necessárias para realmente executar o trabalho, incluindo Programadores, Designers, Engenheiros de Qualidade, etc. Se seguirmos as sugestões do Scrum, nossos times serão formados por dez ou menos pessoas, já que esse tamanho favorece a comunicação, a colaboração e a produtividade. No modelo Spotify, os times são maiores, e têm de seis a 12 pessoas. Alguns agilistas utilizam a regra de sete pessoas, aceitando uma variação de duas para mais ou para menos. E tem ainda a regra da pizza usada por Jeff Bezos na Amazon: seu time deve ter um tamanho que seja possível saciar pedindo duas pizzas!Escalando os Times
Mas é claro que toda a sua demanda de produtos digitais não vai ser resolvida por sete pessoas ou com duas pizzas! Na verdade, conforme uma startup cresce, ou uma empresa tradicional se transforma digitalmente, ela vai precisar de múltiplos times. Marty Cagan, no livro Inspired, sugere que uma startup, depois de colocar um primeiro MVP no mercado, quando ainda está buscando market-fit, vai ter entre um e quatro times, e no máximo 25 programadores. Já nas famosas startups unicórnio, é possível chegar em centenas de times. A maior parte das empresas, no entanto, vai encontrar o platô do seu produto sem uma escala tão grande, e estabilizar com uma dezena de times. Aí entram os modelos que tentam nos ajudar a escalar essa estrutura de uma forma organizada, como LeSS e o Safe. Outro modelo que ficou muito famoso e influência muita gente é o exemplo do Spotify, que comentamos anteriormente. Nesse modelo, o foco está em estruturar uma organização com muitos times, mas ainda assim garantir agilidade e autonomia para que os times consigam entregar resultados sem sofrer com dependências paralisantes, ou perder a conexão e criar um Frankenstein. Do Spotify, o que ficou famoso mesmo foi a nomenclatura, que você já deve ter ouvido: Squads, Tribes, Chapters e Guilds. Mas o mais legal do modelo, na verdade, é se inspirar nas formas práticas que eles encontraram para fazer a gestão do conhecimento entre os times.Montando Meu Primeiro Time
Se você está montando um time, ou começando a pensar sobre montar um, confira a lista que fizemos com as competências e os perfis que nós da SoftDesign entendemos que são necessários para construir um produto digital nos dias de hoje. Vamos começar com o core, o básico deste time de produto:- Produto – um papel chave, que é responsável por estruturar a visão e a estratégia do produto, planejar roadmap, e traduzir as necessidades vindas dos usuários e do mercado para o time. Quanto mais essa pessoa estiver conectada com as decisões estratégicas, e conhecer a tese de investimento do produto, melhor!
- Design – um papel que não é possível dispensar nos dias de hoje, em que os usuários são cada vez mais exigentes com a experiência do produto, e têm tanta facilidade de optar por produtos similares. Esse perfil é responsável por conhecer o usuário, seus hábitos e necessidades, e com esses dados propor uma experiência que busque usabilidade, engajamento e encantamento.
- Programação – São as pessoas que vão realmente escrever o código do produto, além de fazer configurações de ambiente e infraestrutura, e automatizar processos e testes. Um time de produto sempre tem mais de uma pessoa nesse papel. Quais tipos de programadores você irá precisar, depende do produto. Talvez você precise de: Programadores Front-End (especialistas na construção das telas e interfaces); Programadores Back-End (especialistas na construção de regras de negócio, serviços de integração e bancos de dados); Programadores Mobile (especialista na construção de aplicativos) ou ainda casos mais específicos, como programadores especializados em Big Data, ETL, Blockchain, IoT, etc.
- Qualidade e testes – esse é um perfil que evoluiu muito nos últimos anos, e que, de forma geral, exige conhecimento para planejar os testes (pensar nos riscos do produto e o que precisa ser verificado), realizar testes funcionais manuais, automatizar testes (escrever código de teste) e ainda realizar outros tipos de testes não-funcionais, como carga e desempenho.
- Agilista, Scrum Master, etc – o time vai precisar de alguém que ajude a adotar um processo/método de trabalho e se organizar. Geralmente esse papel também se preocupa em garantir que a produtividade e capacidade de entrega do time sejam estáveis e em melhoria constante, porque, no final das contas, essa é a única coisa que garante previsibilidade para o negócio, gerando os dados necessários para planejar um roadmap. Vale citar que é comum que os agilistas acompanhem mais de um time ao mesmo tempo.
- Arquitetos e Pessoal de Infraestrutura – esses são papéis que provavelmente não precisam estar 100% dedicados. Ainda assim, é importante que o time tenha acesso a pessoas com a experiência e conhecimento necessário para definir uma arquitetura e stack tecnológica, e para validar ou configurar a infraestrutura necessária para o produto rodar no seu ambiente de produção. Essas pessoas trazem uma visão de pensar na continuidade, desempenho, capacidade e segurança do produto.
- Pessoa de Marketing de Produto – aqui se abre todo um novo universo! Se seu produto tem clientes, você precisa pensar em como levar ele para o mercado. Como posicionar e anunciar? De que forma encontro e atraiu clientes? Para tudo isso, existe um perfil de profissional focado em Marketing de Produto.