Atomic Design na prática com React em um projeto real da RD StationLink externo, abre em uma nova aba
Um caso real onde utilizamos o modelo mental do Atomic Design para construir componentes React.
Como podemos utilizar o Atomic Design para administrar a complexidade, favorecendo a legibilidade, escalabilidade e flexibilidade do código.
Na minha última publicação sobre como fizemos a descoberta dos domínios (DDD) do RD Station Marketing através do EventStorming, eu mencionei como a decisão de utilizar Outcomes foi crucial para dividir o negócio em domínios.
Em meados de 2020, quando a RD Station ainda se chamava Resultados Digitais, a área de engenharia e produto já possuía aproximadamente 40 times distintos, resultado de um crescimento acelerado.

A mudança é inerente à carreira que escolhemos. Engenharia de software é uma área movida por inovação, e isso significa passar boa parte do tempo aprendendo, questionando o que já sabemos e, muitas vezes, nos sentindo novamente como iniciantes diante de algo pouco familiar.
Este blog é uma das formas que encontrei de organizar meus aprendizados, compartilhar experiências e trocar conhecimento sobre os desafios que encontro pelo caminho.
As reuniões diárias, conhecidas no XP como “Reuniões em Pé” (Stand Up Mettings) e no Scrum como “Scrum Diário” (Daily Scrum) são práticas bem simples e comumente adotadas, mas o que mais presenciei nas empresas foram monólogos entediantes feitos por um grupo de pessoas, sem valor nenhum, apenas mais um ritual burocrático sem sentido. Neste artigo vou dar sugestões de como trazer os benefícios prometidos, deixando o Daily mais produtivo.
Escrever uma user story é muito mais do que descrever uma tarefa usando uma receita, ela é a base para construção e evolução de um produto usando metodologia ágil (Scrum, Kanban, etc), então saber criá-la da maneira certa é fundamental para a criação de valor na sua entrega.
Recentemente o David Heinemeier Hansson (DHH) publicou um post com o polêmico título “TDD is dead. Long live testing.” (TDD está morto. Longa vida ao teste) que teve grande repercussão e a comunidade tem falado só sobre isso ultimamente. E isso não poderia ter acontecido em melhor hora, pois eu estou exatamente preparando um treinamento de TDD e BDD, então estou com muita informação para debater o assunto.
Resumo das palestras que assisti no Agile Brazil 2013:
Para resolver um problema é preciso saber onde focar para obter melhores soluções. Quando se foca no problema, você pode achar uma solução, mas esta solução pode gerar novos problemas, mantendo este foco, pode acabar criando uma cascata infinita de problemas. Ao focar na solução do problema, você pode resolver o problema sem efeitos colaterais e ficar livre para dar atenção ao que interessa.
Para quem ainda não se familiarizou com o Git, fica a dica de um ótimo curso grátis: