Estava relendo alguns posts e quando li o último post da série sobre diversificação de portfólio de produtos lembrei que fiz promessa de dois posts, um sobre a relação de UX e gestão de produtos e outro sobre a relação de engenharia e gestão de produtos. Como promessa é dívida, está na hora de pagar as minhas dívidas. Vou começar falando sobre a relação entre engenharia de produto e gestão de produtos.
Definição
Engenharia de produto é responsável por desenvolver o produto e mantê-lo operando. Com a visão de negócios trazida pelo gestor de produto, mais o desenho de solução feito pelo pessoal de UX, baseado no entendimento da necessidade ou do problema do cliente, a engenharia de produto “constrói” o produto. Para construir o produto ela deve não só fazer a programação, como também definir a arquitetura técnica do produto, ou seja, qual é a infra-estrutura onde vai rodar esse produto, qual a linguagem de programação mais adequada, qual o banco de dados mais apropriado, como garantir os requisitos não funcionais desse produto (velocidade de resposta, disponibilidade, escalabilidade, etc). Deve tb validar com o gestor de produtos se o custo dessa infra-estrutura cabe no modelo de negócio desse produto.
Pelo fato de o gestor de produto ser responsável por definir o produto a ser feito, pode dar a impressão que a engenharia de produtos está subordinada à gestão de produtos, mas essa visão é incorreta e, se as áreas se comportarem dessa forma, a chance de fracasso do produto aumenta, pois quem se sente subordinado tem menos comprometimento com o resultado. Engenharia de produtos, gestão de produtos e UX são pares, não há relação subordinação entre nenhum desses grupos. Eles devem funcionar como parceiros, como sócios, cada um com sua especialidade e com sua responsabilidade, colaborando para produzir o melhor produto possível.
Inovação
No diagrama acima a engenharia de produtos é quem traz a tecnologia disponível. Certa vez vi uma definição interessante sobre inovação. Inovar não é simplesmente conhecer a última tecnologia. É preciso conhecer não só a última tecnologia, como também todas as tecnologias disponíveis e saber como usá-las. Esse é o papel da engenharia de produtos. Conhecer as tecnologias disponíveis e saber como usá-las para resolver um problema ou atender a uma necessidade de um grupo de pessoas é o que tem potencial de produzir uma inovação.
Dicas práticas para gestores de produto
Para facilitar o dia-a-dia com o time de engenharia de produto, aqui vão algumas dicas práticas:
- Não se meta na solução técnica, a não ser que vc tenha conquistado o direito de se meter nas soluções técnicas. Um gestor de produto deve ter algum conhecimento técnico sobre seu produto, mas essa não é sua área de especialidade. Os especialistas estão na equipe de engenharia de produto. Por isso, evite apresentar soluções técnicas para o time de engenharia de produto a não ser que esse time te dê abertura para isso.
- Leve engenheiros nas conversas com clientes e usuários. Como parte do seu dia-a-dia como gestor de produto, vc deve conversar sempre com os clientes e usuários de seu produto para entender como seu produto resolve o problema ou atende à necessidade desse seu cliente ou usuário e como vc pode fazer seu produto ainda melhor. Os engenheiros gostam muito de ir a essas conversas. É uma experiência única quando eles vêem pessoas reais usando um software que eles desenvolveram. Eles ficarão ainda mais engajados na missão de fazer um produto melhor.
- Sempre tome decisões baseadas em dados. Quer seja dados de acesso e de uso do produto, quer seja dados de conversas com clientes e usuários, use dados para tomar suas decisões e apresente esses dados para o time. Isso dará maior consistência à s histórias que vc irá colocar no roadmap do seu produto.
- Aprenda a tirar o excesso, busque sempre o produto mínimo ou a funcionalidade mínima, ou seja, procure implementar o mínimo possível para atingir o seu objetivo denegócio.
- Esteja presente. É fundamental estar junto com o time de engenharia de produto ou, pelo menos, acessível ao time o máximo de tempo possível. Durante o desenvolvimento do produto inevitavelmente surgirão dúvidas e, se vc não estiver presente, ou o time para, ou o time vai implementar como eles acham que deve ser, o que pode ser diferente do que vc havia planejado.
- Dê feedback para time sobre o produto. Vc, como gestor de produto, sabe como o seu produto está indo, quantos usuários tem, o que esses usuários estão achando do produto, como esse produto está ajudando a empresa a atingir seus objetivos. Conte periodicamente sobre isso para o time de engenharia de produto. Como isso vc estará dando um contexto e um propósito para o time.
- Negocie as histórias de reescrita e de manutenção. O time de engenharia, se for um bom time, antenado na evolução das boas práticas de engenharia de software, sempre irá descobrir formas melhores de implementar cada pedaço do produto. A depender do time de engenharia, o backlog do produto só teria histórias de melhoria técnica. Isso é bom, mostra que vc está trabalhando com um ótimo time de engenharia. Contudo, vc deve usar o item anterior para dar o contexto do produto para o time, ou seja, mostrar que há determinados objetivos definidos para produto que vcs tem que atingir e que, por isso, vcs devem sempre colocar novas funcionalidades no produto. Deve existir um balanço entre histórias de manutenção e reescrita e de novas funcionalidades. Já li em vários lugares algo como defina X% do tempo para histórias de manutenção e reescrita. Eu não gosto de dar essa sugestão, pois acredito que cada momento do produto requer equilíbrio diferente e cabe ao gestor de produto e ao time de engenharia de produto conversar e definir de comum acordo esse equilíbrio apropriado a cada fase do produto. Vale lembrar da importância de encontrar um bom equilíbrio, pois isso evitará o famoso débito técnico que, Ã medida que cresce, fará com que o time de engenharia de produto fique cada vez mais lento.
Ah, e tem mais um ponto!
Alguns engenheiros de produto acabam se tornando ótimos gestores de produto. É importante ser capaz de perceber quando um engenheiro está procurando “outra coisa pra fazer” e dar a ele essa opção de carreira. Na Locaweb temos e tivemos ótimos gestores de produto que eram engenheiros de produto. Em alguns casos acabaram se tornando gestor de produto do próprio produto em que era engenheiro. Por outro lado, existem alguns engenheiros de produto que experimentam a gestão de produtos e não gostam. É preciso deixar a porta aberta para ele poder voltar a ser engenheiro de produto, sem nenhum prejuízo para a sua carreira.