2. Ter uma boa estratégia de produto
é apenas o primeiro passo
Uma excelente capacidade de
execução é o que faz a diferença
no sucesso do seu produto
3. Na prática, são times que
executam essa estratégia
Um time de alta performance é a
forma mais eficiente de gerar valor
Por isso é fundamental pensar na
organização e interações entre eles
4. Essa talk é sobre alguns princípios
para estruturar times e suas relações,
sempre com cases práticos
Muitos dos conceitos usados para
construir esse case foram baseados
no Team Topologies, leitura super
recomendada :)
amazon.com
6. Toda organização de desenvolvimento de
software está limitada a produzir sistemas
de software que reflitam a estrutura
organizacional da empresa que o produziu
- Melvin Conway, 1968
Lei de Conway
8. Times estruturados por skills
Front-end
Back-end
Android
iOS
Infra
Essa estrutura não é uma boa prática:
1. Entregar uma feature depende da coordenação de vários times
2. Times não são responsáveis pela entrega de valor completa
3. Falta contexto para que os times consigam antecipar problemas
Reflexão
Quais times da sua empresa estão organizados como
silos, com muitas dependências e pouco "ownership"?
9. E se fizermos a engenharia reversa?
Monte sua estrutura organizacional de
forma que produza a arquitetura de
software desejada
Lei de Conway
10. Times de alta performance seguem alguns
princípios
Estáveis, pequenos, com
um propósito claro
Missionários vs. Mercenários: clareza das fronteiras e
responsabilidades para gerar autonomia
Carga cognitiva
adequada
As responsabilidades do time deve estar alinhadas com a
carga cognitiva do grupo
Interação bem definida
com outros times
Excesso de comunicação pode virar bagunça; é importante
entender o tipo de interação com outros times
Fluidez de entregas
Tudo é pensado para maximizar a fluidez de entregas,
eliminando handoffs e com ciclos rápidos de feedback
11. 4 topologias fundamentais
Time alinhado ao fluxo
Os times de produto precisam de um sistema de suporte
Time "enabler"
Time de subsistema complicado
Time de plataforma
Tipicamente alinhado a
um fluxo relativo a um
domínio de negócios
12. 4 topologias fundamentais
Time alinhado ao fluxo
Os times de produto precisam de um sistema de suporte
Time "enabler"
Time de subsistema complicado
Time de plataforma
Times de suporte
13. Definir fronteiras e responsabilidades
Domínio de negócios
Alinhamento com o domínio de negócios (fluxo ou jornada)
é uma das formas mais eficientes de organizar times
Personas
Se o produto atende muitos públicos diferentes, faz sentido
em dividir responsabilidades de acordo com cada persona
Cadência de mudanças
Algumas partes do software mudam pouco, outras estão
em mudança constante
Nível de risco
Para garantir a estabilidade de serviços críticos, pode fazer
sentido definir responsabilidades de acordo com o risco
"Essa forma de organização nos permite ter times mais autônomos e com menor carga
cognitiva?"
14. 4 topologias fundamentais
Time alinhado ao fluxo
Os times de produto precisam de um sistema de suporte
Time "enabler"
Time de subsistema complicado
Time de plataforma
Trabalha em conjunto
com outros times em
desafios específicos,
como a implementação
de um pipeline de testes
15. 4 topologias fundamentais
Time alinhado ao fluxo
Os times de produto precisam de um sistema de suporte
Time "enabler"
Time de subsistema complicado
Time de plataforma
Time especializado
componentes de alta
complexidade, requer
conhecimentos específicos
16. 4 topologias fundamentais
Time alinhado ao fluxo
Os times de produto precisam de um sistema de suporte
Time "enabler"
Time de subsistema complicado
Time de plataforma
Times que desenvolvem
produtos internos para
acelerar as entregas dos
times alinhados ao fluxo
17. 3 modos de interação
Colaboração Facilitação
APIs
X-as-a-Service
Times trabalham em
conjunto, em geral em
uma etapa de
descoberta
Um time auxilia o outro
com conhecimentos
específicos
Time provê um serviço
(via API) para ser
consumido por outros
18. Constante evolução!
APIs
Times começam colaborando para descobrir as soluções, e transformam essa interação
no formato X-as-a-Service para aumentar a eficiência das entregas
Objetivo é eliminar "dependências blocantes" e manter dependências saudáveis
20. Estamos desconstruindo os
serviços bancários para
reconectá-los de maneira
inovadora, aberta e competitiva.
Nós fornecemos as conexões para
todos os estágios do Open Finance.
Fase 1: Compartilhamento de dados
Fase 3: Distribuição de produtos
Fase 2: Onboarding facilitado
Mercados
conectados e
equilibrados
Nossa Missão
21. Integração de
dados bancários
na sua aplicação
● Acesso digital, recorrente e
padronizado às informações financeiras
de seus usuários
● Gestão de consentimento dos usuários
em compliance com a LGPD.
● Decisões assertivas na análise de
crédito
Sua porta de entrada para o Open Finance
22. Coleta e armazenamento seguro de dados
Scrapers
Compartilhamento de dados
APIs de terceiros
Distribuição de produtos
APIs de Open Banking
Compartilhamento de dados
Inteligência & Insights
Saldo & Extrato
Identidade &
KYC
Onboarding Pagamentos
Produtos e
tarifas
(…)
Consumers
Providers
Construindo o Android do Open Banking
23. Nossa estrutura deve estar alinhada a alguns fluxos de negócios
Fluxo #2: Coleta e exposição de dados bancários via API
Recebe credenciais do
usuário
Autentica no internet
banking
Coleta informações
autorizadas
Serve os dados via API
Fluxo #1: Consentimento do end-user
Usuário autentica com
telefone/email
Adiciona contas
bancárias
Revisa escopo,
finalidade e duração
Autoriza e gerencia o
compartilhamento
Fluxo #3: Extração e análise de dados pelos clientes B2B
Obtém o consentimento
do usuário
Recebe dados brutos
criptografados
Gera insights com Data
Products
Gerencia o
compartilhamento
27. Quanto
Providers
Consumers
Na camada de serviços, garantimos que nossos
partners e usuários têm uma excelente
experiência com a Quanto
Transações
Distribuição
de produtos
Web Reverse API
Data Collection
Scrapers APIs Privadas Open Banking
End user
Gerenciamento de
permissões
Partner
Dashboard + Dev
Experience
Data Products
Decisões simplificadas
28. Onboarding
Produtos e
tarifas
Transações
Distribuição
de produtos
Web Reverse API
Data Collection
Scrapers APIs Privadas Open Banking
Quanto
Providers
Consumers
Saldo e
Extrato
Pagamentos
PF
Investimen-t
os, Câmbio,
Seguros, etc.
PJ PF PJ PF PJ
Identidade
(KYC, AML)
Form
Con-
trato
End user
Gerenciamento de
permissões
Partner
Dashboard + Dev
Experience
Data Products
Decisões simplificadas
Podemos organizar os times de acordo com o “job”
sendo resolvido, que se complementam para uma
solução de Build Your Own Bank
29. Onboarding
Produtos e
tarifas
Transações
Distribuição
de produtos
Web Reverse API
Data Collection
Scrapers APIs Privadas Open Banking
Quanto
Providers
Consumers
Saldo e
Extrato
PF
Investimen-t
os, Câmbio,
Seguros, etc.
PJ PF PJ PF PJ
Identidade
(KYC, AML)
Form
Con-
trato
End user
Gerenciamento de
permissões
Partner
Dashboard + Dev
Experience
Data Products
Decisões simplificadas
Pagamentos...mas ainda estamos no
microcosmos de produto
32. Banco de dados e segurança
Coleta e monitoramento
Scrapers + APIs Privadas
End user
Gerenciamento de
permissões
Partner
Dashboard + Dev
Experience
Data Products
Decisões simplificadas
Quanto
Providers
Consumers
Onboarding
Produtos e
tarifas
Data Collection
Saldo e
Extrato
Pagamentos
PF
Investimen-t
os, Câmbio,
Seguros, etc.
PJ PF PJ PF PJ
Identidade
(KYC, AML)
Form
Con-
trato
33. End user
Gerenciamento de
permissões
Partner
Dashboard + Dev
Experience
Data Products
Decisões simplificadas
Quanto
Providers
Consumers
Onboarding
Produtos e
tarifas
Data Collection
Saldo e
Extrato
Pagamentos
PF
Investimen-t
os, Câmbio,
Seguros, etc.
PJ PF PJ PF PJ
Identidade
(KYC, AML)
Form
Con-
trato Journey
Banco de dados e segurança
Coleta e monitoramento
Scrapers + APIs Privadas
34. Banco de dados e segurança
Coleta e monitoramento
Scrapers + APIs Privadas
End user
Gerenciamento de
permissões
Partner
Dashboard + Dev
Experience
Data Products
Decisões simplificadas
Quanto
Providers
Consumers
Onboarding
Produtos e
tarifas
Data Collection
Saldo e
Extrato
Pagamentos
PF
Investimen-t
os, Câmbio,
Seguros, etc.
PJ PF PJ PF PJ
Identidade
(KYC, AML)
Form
Con-
trato
36. Data Collection
Banco de dados e segurança
Coleta e monitoramento
Scrapers + APIs Privadas
End user
Gerenciamento de
permissões
Partner
Dashboard + Dev
Experience
Data Products
Decisões simplificadas
Onboarding
Produtos e
tarifas
Saldo e
Extrato
Pagamentos
PF
Investimen-t
os, Câmbio,
Seguros, etc.
PJ PF PJ PF PJ
Identidade
(KYC, AML)
Form
Con-
trato Journey
Quanto
Providers
Consumers
Analisamos se faz sentido criarmos um time para
cuidar especificamente de End user ou se essa
responsabilidade pode ser distribuída nos times de
Consumers
Evolução #1
37. Quanto
Providers
Consumers
Data Collection
Banco de dados e segurança
Coleta e monitoramento
Scrapers + APIs Privadas
End user
Gerenciamento de
permissões
Partner
Dashboard + Dev
Experience
Data Products
Decisões simplificadas
Onboarding
Produtos e
tarifas
Saldo e
Extrato
Pagamentos
PF
Investimen-t
os, Câmbio,
Seguros, etc.
PJ PF PJ PF PJ
Identidade
(KYC, AML)
Form
Con-
trato Journey
Analisamos se ainda faz sentido o time de Banco de
dados e segurança existir, ou se já temos uma base
bem estruturada
Evolução #2
38. Quanto
Providers
Consumers
End user
Gerenciamento de
permissões
Partner
Dashboard + Dev
Experience
Data Products
Decisões simplificadas
Onboarding
Produtos e
tarifas
Saldo e
Extrato
Pagamentos
PF
Investimen-t
os, Câmbio,
Seguros, etc.
PJ PF PJ PF PJ
Identidade
(KYC, AML)
Form
Con-
trato Journey
Transações
Distribuição
de produtos
Web Reverse API
Data Collection
Scrapers APIs Privadas Open Banking
Evolução #3
39. Quanto
Providers
Consumers
End user
Gerenciamento de
permissões
Partner
Dashboard + Dev
Experience
Data Products
Decisões simplificadas
Onboarding
Produtos e
tarifas
Saldo e
Extrato
Pagamentos
PF
Investimen-t
os, Câmbio,
Seguros, etc.
PJ PF PJ PF PJ
Identidade
(KYC, AML)
Form
Con-
trato
Transações
Distribuição
de produtos
Web Reverse API
Data Collection
Scrapers APIs Privadas Open Banking
Começamos o processo de criar times
específicos para cada produto/vertical
Evolução #4