Como se tornar um Agile Coach?

Nesse mês de maio completo 6 meses na minha nova função como Agile Coach no banco Agibank. Relembrando agora minha trajetória com métodos ágeis desde 2010, talvez eu nunca tenha sido apenas um Scrum Master, uma vez que sempre estive atento a outras práticas e frameworks, adotando o que melhor se adequava à cada necessidade das empresas em que trabalhei (e fundei) desde então. E afinal, essa é a essência de um Agile Coach!

Neste post tento trazer uma luz a um tópico que tanto me deixava receoso no final do ano passado: afinal, o que é preciso para se tornar um Agile Coach de sucesso ou ao menos como se tornar um Agile Coach de verdade? Além das skills básicas de Scrum Master, tal qual as descritas no Scrum Guide, o que mais eu precisaria?

Segundo o Agile Coaching Institute, 8 são as competências necessárias que todo Agile Coach deve possuir para que possa desempenhar a sua função com maestria, e é nessas 8 competências que estruturei o artigo de hoje, explicando o que é cada uma delas e citando referências bibliográficas onde você pode se aprofundar.

Framework de Competências do Agile Coach
Framework de Competências do Agile Coach

Em uma tradução/adaptação livre, temos as seguintes competências:

Cultura Ágil e Lean

Independente do framework ágil de sua preferência, um Agile Coach deve ter um mindset ágil, um foco nas raízes do Lean da Toyota (berço de boa parte das práticas ágeis) e uma cultura de agilidade tal qual descrita no Agile Manifesto. Essa base lhe propiciará um discernimento do que é ser ágil não apenas a nível de prática, mas a nível de princípios e entendimento realmente profundo.

Algumas referências de estudo nessa linha incluem (com links para a Amazon):

Desenvolvimento de Software com Scrum: Aplicando Métodos Ágeis com Sucesso, de Mike Cohn, cujo título original em Inglês faz mais sentido: Succeeding with Agile.

Coaching Profissional

Como o próprio nome da função sugere, o Agile Coach é em essência um treinador e deve ter habilidade para atuar como tal, com um grande foco em orientar os times e os indivíduos a alcançarem a máxima performance, explorando todo o seu potencial. O interesse do seu cliente é o seu norteador e, baseado nele, o Agile Coach deve ser capaz de aplicar as técnicas e métodos mais adequados a cada situação independente da sua opinião ou até mesmo da sua expertise, indo muitas vezes além do técnico dos métodos ágeis e partindo para uma transformação de mindset dos envolvidos (Programação Neuro-Linguística ajuda muito aqui).

Para desenvolver tais habilidades, além de muita empatia e prática, existem cursos específicos para se tornar um coach (como os oferecidos pelo IBC) e algumas leituras recomendadas, tais como o Poder sem Limites do Tony Robbins, o meu autor de PNL favorito.

Facilitação

O Agile Coach guarda nas suas raízes como Scrum Master o perfil de facilitador: um indivíduo neutro, guardião de técnicas, que guia a organização rumo à descoberta de seus processos e ao sucesso de seus projetos.

O fantástico Game Storming de Dave Gray (que aliás é imenso e eu tenho na minha estante) é um prato cheio de jogos para inovar, mudar o rumo de reuniões e ajudar as pessoas a irem muito além de brainstormings já “amarelados”.

Mentoria

Mentoria é a capacidade de transmitir a experiência, o conhecimento e a orientação de uma pessoa para ajudar no crescimento de outra pessoa nos mesmos domínios de conhecimento ou semelhantes. Resumindo: a capacidade de formar outros Agile Coaches dentro da organização.

Obviamente que você só vai querer fazer isso após ter o mínimo de confiança de que você mesmo é um Agile Coach, mas uma maneira de ir se aperfeiçoando enquanto mentor é se focando em leituras sobre liderança, como o excelente O Monge e o Executivo, e sobre trabalho em equipe como As 17 Incontestáveis Leis do Trabalho em Equipe. Ambos livros te darão um norte de como líderes empoderam times vencedores.

Ensino

Um bom professor é aquele que possui a capacidade de oferecer o conhecimento certo, no momento certo, ensinado da maneira correta, para que indivíduos, equipes e organizações metabolizem o conhecimento para o seu melhor benefício.

Diferente da mentoria, que possui um foco em passar a sua experiência para que outro indivíduo assuma posição semelhante à sua, o ensino foca na passagem de conhecimentos específicos, dadas as circunstâncias de um indivíduo, usando ferramental apropriado.

O clássico Coaching Agile Teams (somente em Inglês), da Lyssa Adkins, que é a “bíblia” do Agile Coaching, tem muitas lições acerca de como ser um bom professor de métodos ágeis, além de um mentor e coach.

Maestria Técnica

Essa competência resume-se a saber “botar a mão na massa” quando necessário, ou seja, não ser apenas um profissional teórico, mas saber como a coisa funciona na prática, a ponto de você conseguir executar ou propor atividades técnicas pontuais no dia-a-dia.

Um Agile Coach sem conhecimento técnico (mesmo que superficial) vai depender e muito de membros técnicos de confiança nos times em que atua para conseguir bons resultados, uma vez que muitas transformações em processos exigem mudanças técnicas nos times como testes, arquitetura, CI, CD, refactoring, código-limpo e muito mais.

É obrigatório o Agile Coach entender o que é Continuous Delivery e ajudar o time a enxergar neste conceito a agilidade técnica de que tanto precisam. Neste ponto, o excelente Entrega Contínua de Jez Humble cumpre bem o seu papel como um guia no assunto.

Já o compilado eXtreme Programming do Daniel Wildt e cia. lhe dará um overview de técnicas e práticas do XP para complementar as lacunas deixadas por uma formação pautada apenas com Scrum (como a minha).

Maestria de Negócios

Além de skills técnicas, cabe ao Agile Coach ter skills de negócio também, principalmente aquelas vinculadas a concepção de novos produtos, validação de hipóteses, personas e muito mais, uma vez que não tem como ser ágil se as áreas de negócio da empresa não são.

Um Agile Coach sem conhecimento de negócio (mesmo que superficial) dependerá de Product Owners extremamente experientes dentro dos times, uma vez que não conseguirá auxiliá-los em etapas extremamente difíceis da jornada de cada time como descoberta de novos negócios, priorizações difíceis, etc.

Leituras neste sentido não faltam, mas seguem duas referências:

Capacidade de Transformar

Um Agile Coach é um agente de mudança e, como tal, deve ser capaz de provocar mudanças culturais e organizacionais dentro da empresa em que atua. Muitas vezes ele deve liderar esta transformação, evangelizando a cultura ágil em todas as esferas da empresa para garantir que a mesma não seja um movimento isolado e que morra com o passar do tempo.

O livro Os 5 Desafios das Equipes (Dysfunctions no original de Patrick Lencioni) trata muito deste assunto, bem como o Virando a Própria Mesa do brasileiro Ricardo Semler, um ícone de transformação organizacional e cultural moderno. Outros títulos famosos, estes que eu não conheço ainda, são Emergência: A Dinâmica de Rede das Formigas, Cérebros, Cidades e Software, de Steven Johnson e o Inteligência Emocional de Daniel Goleman.

E aí, o que achou deste framework de competências? Concorda ou discorda? Use a área de comentários abaixo para discutirmos nossas percepções sobre esse importante papel nas empresas ágeis.

Quer saber mais sobre desenvolvimento ágil de software? Clique no banner abaixo e conheça o meu livro.

Lançamento do meu livro de MongoDB


Foi em 2015 que conheci MongoDB. Sim, eu estava bem atrasado considerando que a tecnologia havia sido lançada em 2009 e desde 2010 já existiam grandes projetos usando-a. Como sempre gostei de criar aplicações com massas grandes de dados, como meus mecanismos de busca, logo me interessei pelo approach baseado em documentos do Mongo e facilidade de consultar. E pela performance, é claro.

Assim como fiz em 2012, conforme ia iniciando meus estudos de Android, fui documentando tudo o que aprendia e testava sobre MongoDB, ao mesmo tempo que estudava e aplicava outra tecnologia em meus projetos: Node.js.

Obviamente não comecei meus estudos partindo do zero, uma vez que já trabalho com sistemas que usam bancos de dados há cerca de 10 anos. Todo o meu conhecimento de banco de dados (que engloba muito SQL Server e um pouco de outros bancos), aliado às boas práticas de Engenharia de Software, Gestão de Projetos, Testes de Software, etc formaram o profissional que sou hoje.

No uso de MongoDB eu tenho experiência de mais de dois anos na data que escrevo este post e uma meia dúzia de projetos entregues e funcionando.

Pois então que há alguns meses decidi escrever um novo livro. O segundo de 2017 (o primeiro foi sobre Node.js), justamente sobre todo esse conhecimento de MongoDB que possuo que já me renderam algumas ofertas de emprego bem interessantes e alguns milhares de reais em projetos entregues usando este banco de dados.

Esse livro chama-se MongoDB para Iniciantes, e está à venda desde essa semana na Amazon.

Apesar do seu tamanho, 120 páginas, é um livro bem completo. Ele não se limita a listar e explicar comandos para consultar e manipular o MongoDB. Ele parte do princípio que você quer entender como funciona a orientação à documentos, que quer saber como se gerencia minimamente um servidor Mongo. Com uma didática clara e objetiva, como todos livros de minha autoria (quem já leu os demais sabe do que estou falando), e que pega o leitor pela mão e ensina desde os conceitos mais básicos até tudo que é necessário para ter um banco modelado corretamente e rodando, pronto para suas aplicações se conectarem. Inclusive ensina como usar MongoDB com Node.js, ASP.NET Core e PHP, sem entrar em muitos detalhes destas linguagens.

Do primeiro insert até comandos mais elaborados para manipulação de campos multi-valorados, índices, relatórios de performance e subdocumentos, MongoDB para Iniciantes é para quem está começando a trabalhar com MongoDB e bancos relacionais e está completamente confuso com a quantidade de tutoriais, informações conflitantes e artigos fora de ordem. Nele, ensino a usar tudo o que deu certo em meus projetos com MongoDB nos últimos anos, um banco não-relacional que é bom, confiável e que possui grande mercado.

Neste livro você vai aprender:

  • introdução aos bancos não-relacionais e NOSQL;
  • execução do servidor MongoDB;
  • conexão usando o client nativo Mongo;
  • quando usar e quando não usar MongoDB;
  • comandos básicos e intermediários para consultas;
  • comandos básicos e intermediários para inserção, atualização e exclusão de documentos;
  • como extrair relatório de performance de suas queries;
  • criação de índices;
  • gerenciamento mínimo de servidor (backup, restore, import);
  • como modelar os seus documentos usando o paradigma do MongoDB;
  • como criar aplicações reais usando Node.js, PHP e ASP.NET Core;
  • dezenas de boas práticas com MongoDB;

Novamente, devido às atualizações constantes, optei apenas por ter somente versão digital, que você pode ler no Kindle, no PC usando o ler.amazon.com e no smartphone/tablet usando o app Kindle Cloud Reader. Livros de tecnologia impressos tendem a ficar obsoletos rapidamente, coisa que eu detesto.

Além disso, caso assine o Kindle Unlimited (primeiro mês grátis e depois R$20/mês), você pode ler o meu livro e milhares de outros títulos gratuitamente.

Se ainda não é cliente da Amazon, esta é uma excelente oportunidade de começar com o pé direito. Modéstia à parte. 😉

Leia a amostra grátis do livro abaixo e tire suas próprias conclusões:

Curso Node.js e MongoDB
Curso Node.js e MongoDB

Lançamento do meu livro de Node.js

Faz tempo desde meus primeiros estudos com Node.js, quase concomitantemente às minhas primeiras postagens sobre o assunto aqui no blog.

Assim como fiz em 2012, conforme ia iniciando meus estudos de Android, fui documentando tudo o que aprendia e testava sobre Node.js e todo o ecossistema de tecnologias ao redor dele.

Obviamente não comecei meus estudos partindo do zero, uma vez que já trabalho com desenvolvimento web há cerca de 10 anos. Todo o meu conhecimento de front-end (que se resume a JQuery e Bootstrap) e de banco de dados (que se resume a SQL Server e MongoDB), aliado às boas práticas de Engenharia de Software, Gestão de Projetos, Testes de Software, etc formaram o profissional Node.js que sou hoje.

Puramente com Node eu tenho experiência de quase um ano na data que escrevo este post e uma meia dúzia de projetos entregues e funcionando.

Pois então que há alguns meses decidi escrever um novo livro. O primeiro de 2017, justamente sobre todo esse conhecimento de programação web que possuo e que já me renderam o cargo de docente de disciplinas como Programação para Internet e Serviço para Web em faculdades do RS durante alguns anos.

Esse livro chama-se Programação Web com Node.js, e está à venda desde essa semana na Amazon.

É um livro completo. Mesmo. São 355 páginas, o maior livro que já escrevi na minha curta carreira de escritor. Uma monstruosidade que pode assustar pelo tamanho, mas que possui uma didática clara e objetiva, como todos livros de minha autoria (quem já leu os demais sabe do que estou falando), e que pega o leitor pela mão e ensina desde os conceitos mais básicos até tudo que é necessário para ter uma aplicação rodando.

Do front-end ao back-end, passando por banco de dados e com muito Node.js, Programação Web com Node.js é para quem está começando a trabalhar com web e está completamente confuso com a quantidade de frameworks, bibliotecas e tecnologias disponíveis. Nele, ensino a usar tudo o que deu certo em meus projetos nos últimos anos, não necessariamente as stacks mais badaladas da atualidade, mas o que é bom, confiável e que possui grande mercado.

Neste livro você vai aprender:

  • o básico de algoritmos e programação com JavaScript;
  • tecnologias básicas da web: HTML+CSS+JS;
  • construção de back-end de aplicações e serviços com Node.js;
  • como usar o web framework ExpressJS e diversos outros módulos famosos do Node;
  • como sistemas web funcionam e, principalmente, o protocolo HTTP;
  • como criar interfaces web atraentes com Bootstrap;
  • como criar scripts poderosos e interações real-time com Ajax em JQuery;
  • como usar o banco de dados MongoDB;
  • dezenas de boas práticas de programação com Node.js;

Novamente, devido às atualizações constantes e ao tamanho do livro, optei apenas por ter versão digital, que você pode ler no Kindle, no PC usando o ler.amazon.com e no smartphone/tablet usando o app Kindle Cloud Reader. Um livro desse tamanho impresso não custaria menos de R$100 e rapidamente ficaria desatualizado, coisa que eu detesto.

Além disso, caso assine o Kindle Unlimited (primeiro mês grátis e depois R$20/mês), você ler o meu livro e milhares de outros títulos gratuitamente.

Se ainda não é cliente da Amazon, esta é uma excelente oportunidade de começar com o pé direito. Modéstia à parte. 😉

 

Curso Node.js e MongoDB
Curso Node.js e MongoDB