Abílio Azevedo.

Assemble - Tech Lead Training - Rocketseat

Cover Image for Assemble - Tech Lead Training - Rocketseat
Abílio Azevedo
Abílio Azevedo

No √ļltimo final de semana participei de um treinamento para l√≠deres na √°rea de t√©cnologia (Tech Leads) chamado Assemble e conduzido pela Rocketseat. Foi uma √≥tima oportunidade de refor√ßar conceitos, validar metodologias e aprender muito conte√ļdo. Mas o que marcou mais foram as trocas de id√©ias e o relacionamento entre os participantes. Deixo com voc√™s algumas anota√ß√Ķes que me marcaram, um notion com os conte√ļdos das palestras, assim como as respostas das din√Ęmicas do treinamento e no final fiz um plano de a√ß√£o.

Fernanda Vieira falou sobre o que é Liderar.

"Defino lideran√ßa como o processo pelo qual uma pessoa (l√≠der) elicita o compromisso interno de outras pessoas (seguidores) de cumprir uma miss√£o alinhada aos valores do grupo. Lideran√ßa √© conseguir o que n√£o pode ser tomado e merecer o que √© dado livremente." Fonte: Fred Kofman ‚Äď The Meaning Revolution (Tradu√ß√£o Livre)

Fernanda nos trouxe uma analogia interessante sobre o desenvolvimento de produtos:

PRODUTO

  1. Metodologia - Raízes (sustentação) para o resto rodar, melhoria contínua, inspercionar os processos, dar transparência. O lider não pode estar nos caminhos críticos dos processos, se não o time trava.
  2. Tecnologia - Tronco para sustentar. Ser bom é transitório, temos que refatorar sempre.
  3. Produto - Fruto para entregar valor. O time precisa entender o porquê está trabalhando, fazer um dual track para construção em conjunto do produto.
  4. Pessoas - Elementos naturais que v√£o alimentar a √°rvore

Eduardo Matos falou sobre os 4 arquétipos de um lider.

1. Tecn√≥logo - Focado em tecnologias (Carro aut√īnomo, blockchain...). O perigo √© n√£o se preocupar com o business.

2. Humanista - Focado em pessoas. EX: Tony da Zappos, dá 2k USD para a pessoa que escolher sair da empresa depois do onboard. O perigo é ser complacente demais.

3. Processual - Focado em métodos, melhoria contínua (KAIZEN). Perigo é ser lento em casos que é necessário sair dos processos.

4. Executivo - Focado em dados, metas, KPIs e resultados. Perigo é passar por cima de tudo e todos.

Não existe um arquétipo matador, é preciso se conhecer e desenvolver um pouco de cada para ser situacional e balanceá-los.

Eduardo Matos falou sobre o que você precisa fazer para ter uma equipe engajada.

  • Se algu√©m entra no time j√° desmotivada, o processo de onboard foi mal conduzido.
  • Precisamos atacar as fontes que est√£o levando ao desengajamento
  • Tenha interesse genu√≠no pela pessoa
  • O local mais importante da empresa √© a equipe
  • Estimule a colabora√ß√£o, trabalhe na constru√ß√£o das pessoas como um time (Team Building)
  • Reforce boas a√ß√Ķes em p√ļblico e m√°s no particular
  • Crescimento √© diferente de promo√ß√£o. Mas crescimento leva √† promo√ß√£o. Alinhe espectativas

Lais Mendes falou sobre times comprometidos criam produtos de sucesso.

Requisitos de Produto

  • Gest√£o de produtos √© resolver problemas reais dos clientes de uma maneira que atenda √†s necessidades do neg√≥cio.
  • Pessoas desenvolvedores envolvidas no discovery
  • Partir das dores dos clientes
  • Tomar decis√Ķes com base em dados
  • Entregar pequeno e validar r√°pido

Simara Concei√ß√£o falou sobre como avan√ßar rumo √† lideran√ßa t√©cnica usando padr√Ķes sensatos

  • Levar para dentro da empresa aprendizados externos;
  • Seja honesto sobre sua situa√ß√£o atual, auto an√°lise;

Padr√Ķes sensatos (Thoughtworks) s√£o pr√°ticas indicadas para uma entrega extraordin√°ria em tr√™s √°reas:

1. Tecnologia: Pr√°ticas adotadas por nossos times de desenvolvimento.

2. Modo de trabalho: Descreve o dia a dia das nossas equipes e cerim√īnias;

3. Gest√£o de entregas: Planejamento e monitoramento da nossas entregas;

- Lideran√ßa T√©cnica: N√£o s√£o atividades exclusivas da l√≠der, mas ela deve garantir que as atividades aconte√ßam. - Diagramas de arquitetura; - Documenta√ß√£o de decis√Ķes; - Tech Huddles - Reuni√Ķes de alinhamento t√©cnico; - Post Mortems - Retrospectiva de incidentes; - Gerenciar, pagar d√≠vidas t√©cnicas e tech radar;

- Segurança: Responsabilidade de todo time. Refere-se à segurança de dados, de segredos e ferramentas. O time implementa uma baseline de controles de segurança. - Dependency Checker; - Nenhum dado de prod chega em pré-prod; - Requisitos de segurança fazem parte do escopo;

- Trunk Based Development: Entregar software com feedback r√°pido. Evita retrabalho, d√° visibilidade sobre incompatibilidades do c√≥digo, facilita confian√ßa para refatora√ß√Ķes. - Time integra mudan√ßas na trunk/main v√°rias vezes ao dia; - Branches duram horas, nuncas dias ou semanas; - Seguran√ßa para trabalho que est√° em progresso - feature flags/toggles;

- Entrega Contínua: Dá confiança de conhecer o caminho pra produção, independente da funcionalidade estar pronta ou não. Todo o time tem segurança de rodar o deploy e tem visibilidade da build. - Build rápido; - Feedback rápido;

- TDD: Design dirigido por testes. Fazer o desenho do software de fora pra dentro. Melhor encapsulamento e modularidade. Códigos limpos e mais fáceis de entender. Testes rodam toda vez que incluímos novas mudanças no código dando feedback rápido e segurança. - Cobertura de testes automatizados; - Testes devem ser parte do escopo; - Código em produção apenas com testes; - Todo time é responsável;

- Gestão efetiva de dívidas técnicas: Continuar adicionando funcionalidades de valor de negócio num ritmo sustentável. Gera qualidade e priorização de trabalho de melhorias. - Métodos efetivos; - Produtividade; - Qualidade; - Redução de riscos; - Esforço de refatoração;

- Pareamento: Diminui o retrabalho, aumenta a qualidade das entregas, aumenta a consistência do time para lidar com ausências e mudanças. - Usar mecanismos de compartilhamento de tela diariamente; - Na maior parte do tempo escrever código de forma coletiva; - Rotacionar de maneira regular para que todas tenham contexto técnico;

- Observabilidade da aplicação: Garantir feedback rápido e resiliência do sistema. Todas devem estar preparadas em caso de falhas e indisponibilidade do serviço.

  • Garantia que a aplica√ß√£o √© observ√°vel e suportada em prod
  • DOD garante logs, monitoramento e alertas em prod;

Raphael Cuba falou sobre metodologias e práticas para construção de times de tecnologia de alto nível

Times de alta performance s√£o eficazes.

  • Efici√™ncia: Fazer r√°pido (o que);

  • Efic√°cia: Fazer mais com menos (como);

  • Seja resiliente e cuide do seu time;

  • Fortale√ßa a diversidade de perfis no seu time;

  • Construa a cultura de um time participativo em todas as etapas da cria√ß√£o do seu produto;

  • √Č menos sobre entrega, √© mais sobre o resultado.

  • Feedback antecipado √© ouro; Espinha dorsal de produto

Ferramentas:

  1. North star metric - Métrica norte da empresa. EX: Rocketseat - Pessoas desenvolvedoras inexperientes empregadas como desenvolvedores;
  2. OKR com o olhar correto -> Direcionamento para ser eficaz.
  3. Matrizes de priorização (gut, rice, ice, eisenhower...)

Felipe Nunes falou sobre desenvolvendo aplica√ß√Ķes modernas e inteligentes com Banco de Dados Grafos

  • Conceito de banco de dados com relacionamento.
  • Relacionamentos e estruturas interconectadas s√£o altamente preditivos e subutilizados ‚Äď e j√° est√£o em seus dados. Os grafos s√£o uma maneira natural de armazenar e usar essas informa√ß√Ķes preditivas. Grafo

Rodrigo Gon√ßalves falou sobre testes automatizados em aplica√ß√Ķes mobile

  • Garanta a qualidade de suas aplica√ß√Ķes;
  • Testes E2E s√£o importantes para validar funcionalidades e tamb√©m pode inspirar melhorias na usabilidade da aplica√ß√£o;
  • Detox: Testes E2E para React Native. √Č preciso do simulador e no CI √© preciso de um ambiente preparado para mobile (Bitrise) APP Exemplo com testes. Modelo V Testes

Ot√°vio Lemos falou sobre arquitetura de software - Trade-offs de arquitetura e boas pr√°ticas em projetos de software

  • N√£o abra m√£o de qualidade, pesquisas mostram que negociar arquitetura e boas pr√°ticas n√£o levam a entregar mais r√°pido.
  • N√£o acoplar muito os testes a estrutura, mas sim ao comportamento da aplica√ß√£o;
  • Kent Beck - TDD, CI/CD, Refatora√ß√£o, Design Simples, Pair Programing;
  • Dave Farley Canal de Tecnologia - Continuous Delivery Dora Metrics

Vinicius Campanate falou sobre Cultura DevOps: base-module e charts

Gabriel Buzzi falou sobre documentação de times de desenvolvimento

  • Pense que voc√™ est√° escrevendo para outras pessoas lerem seu c√≥digo;
  • Use clean code para o c√≥digo se auto documentar;

Documente:

  • Times/Responsabilidades
  • API Docs
  • Componentes
  • Integra√ß√Ķes
  • Infra
  • Aplica√ß√Ķes paralelas

Diego Fernandes falou sobre tendências, a era dos serviços

  • Voc√™ n√£o deveria CRIAR NADA que n√£o √© core do seu neg√≥cio;
  • N√£o banque o super her√≥i, voc√™ vai se tornar o gargalo da empresa;
  • Pare de pensar em escalabilidade t√©cnica e pense em escalabilidade de neg√≥cio, voc√™ n√£o √© pago pelo seu conhecimento t√©cnico e sim pelo resultado que entrega;
  • Escalabilidade √© dif√≠cil (e caro). Se voc√™ n√£o tem profissionais qualificados no assunto, n√£o vale a pena arriscar.

Gabriel Bolzi falou sobre mentalidade de solução: as escolhas difíceis que um tech lead deve fazer e suas vantagens e desvantagens

Gabriel trouxe v√°rios t√≥picos e fez um painel para discutirmos as aplica√ß√Ķes das op√ß√Ķes:

  • Monolito x Microservi√ßo
  • Construir do Zero x Consumir Plataformas
  • Especialista x Generalista
  • Testes A/B x Data Driven
  • Tech Lead x Contribuidor Individual

Sergio Fiorotti falou sobre mentalidade de solução: as escolhas difíceis que um tech lead deve fazer e suas vantagens e desvantagens

  • Me√ßa o desempenho dos liderados;
  • D√™ feedbacks espec√≠ficos (baseados em dados) e recorrentes; Onboard -> Offboard

Alex Salgado falou sobre mindfulness e sa√ļde mental

  • ‚ÄúObservabilidade‚ÄĚ descreve o qu√£o bem voc√™ pode entender o que est√° acontecendo em um sistema, frequentemente instrumentando-o para coletar m√©tricas, logs ou rastreamentos.
  • Balancear a vida pessoa/profissional: Foque no que realmente importa
  • Gerenciar sobre carga: Elimite h√°bitos inefici√™ntes, pe√ßa ajuda e diga n√£o.
  • Lidar com colegas de trabalho: Se auto conhe√ßa, aprenda a colaborar, observe, veja as necessidades das pessoas

Jakeliny Gracielly falou sobre como dar feedback técnico e apoiar o crescimento de DEVs do meu time

  • Feedback entre os liderados (pares), Feedback n√£o agressivo. Comece mediando essas reuni√Ķes.
  • O objetivo √© observar os comportamentos que dificultam o relacionamento interpessoal.
  • As vezes √© preciso evoluir na enfase do seu feedback: Eu gostaria que‚Ķ Eu preciso que‚Ķ Eu vou ter que te demitir caso voc√™ n√£o‚Ķ

Mayk Brito, Diego Fernandes e Gabriel Buzzi falaram sobre equilíbrio entre velocidade e qualidade, mentalidade de MVP sem abrir mão do refactoring

  • Waze | O Melhor MVP da hist√≥ria (Minimum Viable Product)
  • Feedback cont√≠nuo: Validar p√ļblico, problema, solu√ß√£o.
  • Rocketseat tinha id√©ia de ensinar empreendedorismo para desenvolvedores. Mas ap√≥s valida√ß√Ķes, pivotaram.
  • Regra do escoteiro: Ao sair do lugar ele tem que estar mais limpo de quanto voc√™ chegou. Pagar debitos t√©cnicos gradualmente

Metodologias e ferramentas citadas no evento:

- Failure Wall

A ideia era criar uma ‚Äúparede de falhas‚ÄĚ, pegando uma grande parede branca na sala de descanso do escrit√≥rio e incentivando funcion√°rios e parceiros a anotarem seus maiores erros, em preto e branco, para que todos pudessem ler.

- PDI - Plano de desenvolvimento individual

Desenvolver um plano para desenvolver seus liderados, tanto tecnicamente (https://roadmap.sh/) como com soft-skills.

- Dual Track - Discovery e Delivery

Envolver os desenvolvedores no discovery ir√° poupar muito tempo e retrabalho futuro.

- Trunk Based Development

√Č uma pr√°tica de gerenciamento de controle de vers√£o em que os desenvolvedores mesclam atualiza√ß√Ķes pequenas e frequentes em um ‚Äútronco‚ÄĚ principal ou ramifica√ß√£o principal.

- Backstage - IDP - Internal Developer Platform

Ferramenta para o desenvolvedor documentar (DOC-LIKE-CODE)

- DORA - DevOps Report

https://www.devops-research.com/research.html

- Feedback SCI

Comece pela situação, mostre o comportamento e explique o impacto.

- Janela de Johari

O objetivo é observar os comportamentos que dificultam o relacionamento interpessoal.   Janela de JOHARI

Frases que marcaram:

  1. "Se você tem tempo para corrigir os bugs você tem tempo para escrever testes automatizados"
  2. ‚ÄúPrefira pagar por coisas boas do que desenvolver coisas ruins‚ÄĚ - Diego Fernandes
  3. "Determinar para onde você vai é muito mais importante do que como chegar lá. o "como chegar" se modifica, o 'onde chegar' nunca muda" - Chico Montenegro
  4. "O J√ļnior √© o precursor do S√™nior" - Ot√°vio Lemos
  5. "64% das funcionalidades que criamos em softwares s√£o raramente ou nunca usadas pelos usu√°rios" Jim Johnson

Notion com materiais:

Embedded content: https://platinum-aletopelta-2e5.notion.site/Assemble-Rocketseat-b33fa5942c1e4813a2bb0c22818a34bd

Plano de ação:

  • ‚úÖ Adicionar colegas participantes para continuar o network
  • ‚úÖ Compilar aprendizados do treinamento em um post.
  • Fazer o teste r√°pido DORA.
  • Metrificar velocity do time (cicletime, commits, prs);
  • Buscar North Star Metric e passar para o time cultura de efic√°cia;
  • Dailys falando o que poderia ter feito melhor (microretro);
  • Documentar fluxos de qualidade: Definition of Read, Definition of Done, Pull Requests/Code Review, Testes Automatizados.
  • Fazer POC do Backstage e validar benef√≠cios para empresa;
  • Aplicar testes e2e com DETOX quando o fluxos do app estiverem mais maduros;
  • Montar um RADAR TECH

OBRIGADO ROCKETSEAT, TODOS OS PALESTRANTES E COLEGAS PARTICIPANTES!

certificadoAssembleRocketseat2022


More posts

Cover Image for CI/CD - Lint - Checks

CI/CD - Lint - Checks

Comprehensive guide to continuous integration and continuous delivery. Explains key concepts, tools like GitHub Actions and Drone, benefits of linting, integrating ESLint and Prettier, and using Git hooks for automation.

Abílio Azevedo
Abílio Azevedo
Cover Image for ReWork

ReWork

Unconventional, straight-to-the-point advice on how to run a business. Instead of focusing on fast growth, Rework encourages entrepreneurs to start small, stay agile, and focus on what's essential.

Abílio Azevedo
Abílio Azevedo

NewsLetter

I will send the content posted here. No Spam =)