<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0" xmlns:cc="http://cyber.law.harvard.edu/rss/creativeCommonsRssModule.html">
    <channel>
        <title><![CDATA[Stories by Jones Roberto Nuzzi on Medium]]></title>
        <description><![CDATA[Stories by Jones Roberto Nuzzi on Medium]]></description>
        <link>https://medium.com/@jonesroberto?source=rss-2f67c06f20de------2</link>
        <image>
            <url>https://cdn-images-1.medium.com/fit/c/150/150/1*uz_sAUBX8gOYmxM5J9cdDQ@2x.jpeg</url>
            <title>Stories by Jones Roberto Nuzzi on Medium</title>
            <link>https://medium.com/@jonesroberto?source=rss-2f67c06f20de------2</link>
        </image>
        <generator>Medium</generator>
        <lastBuildDate>Sun, 15 Nov 2026 17:44:43 GMT</lastBuildDate>
        <atom:link href="https://medium.com/@jonesroberto/feed" rel="self" type="application/rss+xml"/>
        <webMaster><![CDATA[yourfriends@medium.com]]></webMaster>
        <atom:link href="http://medium.superfeedr.com/" rel="hub"/>
        <item>
            <title><![CDATA[Por que escolhemos Google Cloud Como nuvem primária mesmo usando .NET como base das apis]]></title>
            <link>https://medium.com/@jonesroberto/por-que-escolhemos-google-cloud-como-nuvem-prim%C3%A1ria-mesmo-usando-net-como-base-das-apis-faaf14be22c0?source=rss-2f67c06f20de------2</link>
            <guid isPermaLink="false">https://medium.com/p/faaf14be22c0</guid>
            <category><![CDATA[dotnet]]></category>
            <category><![CDATA[c-sharp-programming]]></category>
            <category><![CDATA[google-cloud-platform]]></category>
            <category><![CDATA[dotnet-core]]></category>
            <dc:creator><![CDATA[Jones Roberto Nuzzi]]></dc:creator>
            <pubDate>Wed, 04 Feb 2026 13:13:42 GMT</pubDate>
            <atom:updated>2026-02-10T18:15:04.825Z</atom:updated>
            <content:encoded><![CDATA[<h3>Por que escolhemos Google Cloud Como nuvem primária mesmo usando .NET como base das apis</h3><p>Construir um SaaS não é apenas sobre funcionalidade; é sobre onde o seu código “mora” e como ele sobrevive ao crescimento. Quando desenhamos a arquitetura do Kyva — passando pelas nossas APIs, o ecossistema Web e o processamento de nossa caixa de cobranças escolha do provedor de nuvem foi estratégica. Optamos pelo <strong>Google Cloud (GCP)</strong>.</p><p>Aqui não tem “papo de vendedor”. Vou direto aos pontos que realmente impactam o Kyva e o crescimento do negócio:</p><h3>1. Performance de Infraestrutura (GKE e Cloud Run)</h3><p>Nossas Solutions e o precisam de respostas em milissegundos. O GCP nos permite orquestrar containers com uma agilidade que outros provedores não entregam a mesma experiência . Seja via Kubernetes ou instâncias gerenciadas, o deploy é fluido e a latência é mínima. Se o Kyva demora para processar, o cliente perde tempo. No GCP, isso não tem acontecido.</p><h3>2. Segurança e Gestão de Segredos</h3><p>Trabalhamos com dados sensíveis. A camada Infra se integra nativamente ao <strong>Secret Manager</strong> do Google. Não existem chaves de API ou strings de conexão &quot;soltas&quot; no código. Tudo é criptografado e injetado em tempo de execução. Segurança para nosso time e para o cliente confiar seus dados.</p><h3>3. Armazenamento Inteligente (Cloud Storage)</h3><p>Documentos, notas fiscais e comprovantes. O volume de arquivos no Kyva cresce exponencialmente. A integração direta da nossa camada de Infra com os Buckets do GCP nos garante que o custo de armazenamento não vai engolir a margem de lucro, mantendo a alta disponibilidade, ao mesmo tempo garantindo segurança e disponibilidade ao cliente.</p><h3>4. Otimização de Processos com Dados</h3><p>A integração com o ecossistema de dados do Google foi a maior supresa, sinto estar pronto para o próximo passo: inteligência sobre os dados. O Kyva não é apenas um repositório; ele deve ser o cérebro financeiro da empresa. O GCP facilita o uso de ferramentas de análise que transformam dados brutos em insights reais dentro do nosso módulo de Relatórios.</p><h3>5. Inteligência Artificial e Gemini: Otimização com Gems Especializados</h3><p>Não usamos IA de forma genérica. Integramos o <strong>Gemini</strong> profundamente no ciclo de vida do Kyva. O diferencial aqui é o uso estratégico de <strong>Gems especializados</strong> para cada um dos nossos repositórios: Kyva API, Web e Cobranças.</p><ul><li><strong>Desenvolvimento Assistido:</strong> Cada repositório tem seu próprio “contexto de IA”. Isso significa que nossos Gems entendem as particularidades da camadas do aplicativo independente de qual arquitetura escolhida para cada serviço, acelerando a escrita de código limpo e seguindo rigorosamente os nossos padrões arquiteturais. Ele também nos ajuda na escrita de testes e validação de Pull Requests diretamente nos repositórios.</li><li><strong>OCR e Extração de Dados:</strong> Em nossa caixa de cobranças (Um leitor que ajuda a receber os emails dos seus fornecedores), o Google ADK é o motor por trás da leitura de documentos. Substituímos o OCR tradicional por uma abordagem de IA generativa especializada , que não apenas lê o texto, mas interpreta o contexto de notas fiscais e faturas com uma precisão que métodos antigos não alcançam. Isso ajuda no dia a dia dos nossos clientes a não terem que ficar lendo nota por nota um redução de até 95% do tempo.</li><li><strong>Agentes de Decisão:</strong> O Google ADK nos ajuda a transformar dados brutos em decisões. Ele atua como uma fonte de leitura inteligente, saneando dados e garantindo que o que chega no banco de dados já passou por uma camada de validação cognitiva, hoje “gasto” tempo em criar agentes especializados em cada tema do Kyva, isso garante que no tempo nossos agentes aprendam com o uso de nossos clientes e aprimorem cada vez mais a leitura de dados.</li></ul><h3>O veredito</h3><p>Fechar parceria com o Google Cloud foi uma decisão de <strong>escala</strong>. Queríamos uma infraestrutura que não fosse um gargalo, mas sim um acelerador. Hoje, o Kyva roda em uma base sólida, permitindo que o time de engenharia foque no que realmente importa: entregar valor para quem usa o Produto.</p><p>Se você está construindo um SaaS e ainda perde tempo configurando servidor, você está perdendo o jogo da escala.</p><p>Você precisa escolher a melhor ferramenta para cada cenário, e garantir o bom uso do tempo do seu time, eu sei, tenho experiência de longa data em criar times de alta performance, mas é diferente quando ao mesmo tempo você está criando um produto do 0 e não usando um crachá de uma grande corporação consolidada.</p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=faaf14be22c0" width="1" height="1" alt="">]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Minhas lições ao empreender em Tech]]></title>
            <link>https://medium.com/@jonesroberto/minhas-li%C3%A7%C3%B5es-ao-empreender-em-tech-324271dd9ad6?source=rss-2f67c06f20de------2</link>
            <guid isPermaLink="false">https://medium.com/p/324271dd9ad6</guid>
            <category><![CDATA[kyva]]></category>
            <category><![CDATA[startup]]></category>
            <category><![CDATA[fintech]]></category>
            <dc:creator><![CDATA[Jones Roberto Nuzzi]]></dc:creator>
            <pubDate>Thu, 27 Nov 2025 12:37:21 GMT</pubDate>
            <atom:updated>2025-11-27T12:37:21.554Z</atom:updated>
            <content:encoded><![CDATA[<p>É desafiador criar uma empresa do zero. Sem time, sem produto apenas uma convicção de onde quer chegar. Quase um ano depois da ideia penso em 5 coisas que aprendi.</p><p>1- Não é sobre ser rápido, e sim consistente.<br>Um dia de cada vez, um tiljolo de cada vez. Sem romantizar, a jornada não é fácil. Depois de muitos anos tocando empresas desde a base até atuar junto a diretoria, tudo muda quando o capital é seu e não de terceiros. O grande desafio e a responsabilidade de criar algo que será de fato utilizado por seus clientes.<br>O jeito mais simples de pensar, não é uma corrida de 30 minutos, é um prova de resistência.</p><p>2. Pensar simples, sempre..<br>É o normal querer criar um produto com tudo oq os clientes pedem. Mas, ao aumentar a complexidade, gera-se problemas na execução. Inspirado por uma dor vivida em minhas passagens anteriores em empresas do ramo financeiro, percebi que o verdadeiro desafio é a simplificação. Como resolver a dor do cliente com o menor número de cliques possível? Simplificar, escondendo uma engenharia complexa nos bastidores. Se o usuário não percebe a complexidade do processo, então nosso trabalho foi bem feito.</p><p>3. Criar processos nem sempre é burocracia, é clareza de onde se quer ir.<br>No início, eu achava: “vamos burocratizar” criando processos e vamos matar a agilidade de nossa empresa. Na prática, aprendi aconteceu o oposto. Quando você lida com dinheiro, não existe margem para falhas. Estruturar seus processos de forma clara desde o dia 0 é o que lhe dá clareza para acelerar no desenvolvimento do produto. Os processos são os trilhos: se eles forem sólidos, o trem pode andar igual a um trem bala sem descarrilar.</p><p>4. Construa para a dor, não para o seu ego<br>No modelo do kyva, o foco é economizar o dinheiro e o tempo do cliente. Ao fundar a empresa, a tentação é construir o que achamos legal. Tivemos que exercitar a humildade de validar cada etapa. Estamos construindo um produto financeiro, o que significa que a confiança é a nossa moeda principal. Não adianta ter a interface mais bonita do mundo se não resolvemos a ineficiência real do dia a dia das empresas.</p><p>5. O “Skin in the Game” afia sua visão<br>Existe uma clareza assustadora que surge quando você financia o próprio sonho. Você não gasta tempo com métricas de vaidade, mas foca obsessivamente no que traz valor real e retorno. Essa “pressão” nos forçou a sermos eficientes de uma maneira que talvez não fôssemos se tivéssemos milhões sobrando no caixa.</p><p>Os próximos capítulos dessa história estão sendo escritos por um time totalmente capaz, exercitando a escuta ativa, focando no cliente e em resolver uma dor real, simplificar processos financeiros complexos. O foco é a redução de custo/tempo em algo que hoje o mercado gasta os tubos para tentar solucionar. A real é que o backoffice das empresas é muitas vezes subestimado (ou pior, esquecido completamente), e ficou claro para mim ao longo dos anos que é onde se deveria focar para crescer com inteligência.</p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=324271dd9ad6" width="1" height="1" alt="">]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Padrões de documentação para Times de tecnologia]]></title>
            <link>https://medium.com/@jonesroberto/padr%C3%B5es-de-documenta%C3%A7%C3%A3o-para-times-de-tecnologia-d9bf5234337f?source=rss-2f67c06f20de------2</link>
            <guid isPermaLink="false">https://medium.com/p/d9bf5234337f</guid>
            <category><![CDATA[rds]]></category>
            <category><![CDATA[rfc]]></category>
            <category><![CDATA[page-one]]></category>
            <category><![CDATA[documentação]]></category>
            <category><![CDATA[hla]]></category>
            <dc:creator><![CDATA[Jones Roberto Nuzzi]]></dc:creator>
            <pubDate>Fri, 22 Mar 2024 16:39:59 GMT</pubDate>
            <atom:updated>2024-03-22T16:39:59.338Z</atom:updated>
            <content:encoded><![CDATA[<figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*6L5-0EaYyRcFNEvS-TWTBg.png" /></figure><p>Hoje irei falar sobre alguns padrões e tipos de documentos que podemos usar para organizar melhor nosso dia a dia na área de tecnologia, não vou focar em falar de ferramentas mas sim sobre modelos, porém fica a dica de que eu gosto bastante de utilizar o notion para armazenar minhas documentações pessoais, na empresa vai muito de acordo com a switch de ferramentas utilizadas, a Microsoft oferece bons recursos para isso por exemplo Microsoft Loop;</p><h3>RFC</h3><p>A Request for Comment (RFC) é um documento usado para solicitar comentários e feedback sobre uma ideia, proposta ou projeto antes de ser implementado. Ele é comumente usado em ambientes de desenvolvimento de software, mas também pode ser usado em outras áreas como engenharia, negócios e governo.</p><p>Os RFCs são criados para fornecer uma descrição detalhada do problema ou proposta e são destinados a ser lidos e comentados por um grupo de pessoas interessadas, como desenvolvedores, especialistas em segurança, usuários finais e outros stakeholders.</p><p>O processo de RFC geralmente inclui as seguintes etapas:</p><ol><li>Criação: Um indivíduo ou equipe cria um documento RFC descrevendo a proposta ou ideia.</li><li>Revisão: O documento é revisado por especialistas relevantes para garantir que esteja completo e preciso.</li><li>Publicação: O documento é publicado em um local acessível para comentários, como um fórum ou lista de discussão.</li><li>Comentários: As pessoas são convidadas a ler e comentar o documento.</li><li>Revisão final: As sugestões e comentários são revisados e considerados para fazer mudanças no documento.</li><li>Aprovação: Se a proposta ou ideia é aprovada, ela é implementada.</li></ol><p>Em resumo, um Request for Comment (RFC) é um documento usado para solicitar comentários e feedback sobre uma ideia, proposta ou projeto antes de ser implementado. Ele é criado para fornecer uma descrição detalhada do problema ou proposta e é destinado a ser lido e comentado por um grupo de pessoas interessadas, incluindo especialistas em áreas relevantes. O processo inclui etapas de criação, revisão, publicação, comentários, revisão final e aprovação.</p><h3>DR</h3><p>Um documento de Decision Record é um tipo de documento utilizado para registrar e rastrear as decisões tomadas em um projeto ou empresa. Ele é geralmente usado para garantir que as decisões são tomadas de forma consciente, baseada em fatos e que possam ser revisadas e rastreadas posteriormente.</p><p>O documento de Decision Record normalmente contém informações como:</p><ul><li>Data e hora da decisão</li><li>Pessoas envolvidas na decisão</li><li>Descrição da decisão tomada</li><li>Motivo para a decisão</li><li>Alternativas consideradas</li><li>Impacto esperado da decisão</li><li>Data para revisão da decisão</li></ul><p>Ele é criado para garantir que as decisões sejam tomadas de forma consciente, baseadas em fatos e que possam ser revisadas e rastreadas posteriormente. Além disso, ele permite que as pessoas envolvidas na decisão possam entender e se lembrar do contexto e motivação da decisão, e que outras pessoas possam entender e seguir as decisões tomadas.</p><p>Os documentos de Decision Record podem ser usados em várias áreas, como gerenciamento de projetos, gerenciamento de negócios, desenvolvimento de software e outras áreas onde as decisões precisam ser documentadas e rastreadas. Eles são geralmente criados e mantidos por líderes de projetos, gerentes de negócios ou outros indivíduos responsáveis pela tomada de decisão.</p><h3>One Page</h3><p>Um documento de “one page” é um tipo de documento que se concentra em fornecer informações essenciais sobre um determinado assunto em uma única página. Eles são geralmente utilizados para comunicar de forma clara e concisa, resumindo informações importantes e fornecendo uma visão geral do assunto.</p><p>Os documentos de “one page” podem ser utilizados para várias finalidades, como:</p><ul><li>Resumos de projetos, planos de negócios e propostas</li><li>Sumários executivos de relatórios e pesquisas</li><li>Apresentações de vendas e de marketing</li><li>Planos de ação e metas</li></ul><p>Eles são projetados para serem fáceis de ler e compreender, com informações organizadas de forma clara e concisa e usando gráficos e imagens para ilustrar as informações. Além disso, eles são geralmente escritos com uma linguagem simples e direta, para que possam ser lidos e compreendidos rapidamente.</p><p>Os documentos de “one page” são geralmente criados e mantidos por líderes de projetos, gerentes de negócios, vendedores, profissionais de marketing e outros indivíduos responsáveis por comunicar informações importantes de forma clara e concisa. Eles podem ser facilmente compartilhados e distribuídos, seja por email, anexando-o em uma apresentação ou postando-o em uma rede interna ou site da empresa.</p><h3>HLA</h3><p>O High-level architecture (HLA) é um documento que descreve a estrutura geral de um sistema, incluindo sua organização, componentes e interfaces. Ele é geralmente utilizado para comunicar a estrutura geral do sistema a outros desenvolvedores, equipes de projeto, gerentes de projeto e outros interessados.</p><p>O HLA geralmente inclui uma descrição geral do sistema, incluindo seus objetivos, requisitos e principais características. Ele também descreve a organização lógica do sistema, incluindo seus componentes principais, como módulos, sub-sistemas e interfaces. Ele também pode incluir diagramas de arquitetura, que ilustram como os componentes se relacionam entre si.</p><p>O HLA é geralmente escrito em um nível abstrato, sem entrar em detalhes técnicos. Ele é utilizado para comunicar a visão geral da arquitetura do sistema e fornecer uma compreensão básica dos principais componentes e suas interações. Ele é um documento importante para a comunicação entre as equipes de desenvolvimento, garantindo que todos estejam alinhados e entendam a estrutura geral do sistema.</p><p>Além disso, o HLA também é útil como um documento de referência durante o desenvolvimento do sistema, pois fornece uma visão geral da estrutura do sistema, permitindo que os desenvolvedores entendam como seus componentes se relacionam com o sistema como um todo.</p><h3>Modelo C4</h3><p>O modelo C4 é uma metodologia para documentação de arquitetura de software que é baseada em diagramas de contexto, container, componente e code (ou seja, C4). Ele foi criado para tornar a documentação de arquitetura de software mais fácil de entender e mais útil para as equipes de desenvolvimento e outros interessados.</p><p>O modelo C4 se divide em quatro níveis, cada um representado por um tipo de diagrama:</p><ol><li>Diagrama de contexto: Este diagrama mostra a visão geral do sistema e seu ambiente, incluindo os principais atores, processos e sistemas com os quais ele se relaciona.</li><li>Diagrama de container: Este diagrama mostra como os sistemas e aplicativos são organizados e distribuídos em uma rede de computadores. Ele mostra os principais sistemas e aplicativos, bem como suas dependências e como eles se comunicam.</li><li>Diagrama de componente: Este diagrama mostra como os sistemas e aplicativos são divididos em componentes e como esses componentes se relacionam. Ele mostra os principais componentes, bem como suas dependências e como eles se comunicam.</li><li>Diagrama de code: Este diagrama mostra como os componentes são implementados em código. Ele mostra os principais pacotes, classes e métodos, bem como suas dependências e como eles se comunicam.</li></ol><p>A vantagem do modelo C4 é que ele fornece uma visão geral do sistema, desde uma visão geral do ambiente até a implementação de código, permitindo que os desenvolvedores entendam como os componentes do sistema se relacionam entre si e com o ambiente externo. Além disso, o modelo C4 é fácil de entender e usar para todos os interessados, desde gerentes de projeto até desenvolvedores de código.</p><p>Essas são apenas algumas ferramentas utilizadas por mim ao longo dos anos em que trabalhei com gerente de times de tecnologia, obviamente existem outras, mas foquei nas principais que eu utilizei.</p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=d9bf5234337f" width="1" height="1" alt="">]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Organização de times de Tecnologia Salesforce]]></title>
            <link>https://medium.com/@jonesroberto/organiza%C3%A7%C3%A3o-de-times-de-tecnologia-salesforce-f9c5778a442f?source=rss-2f67c06f20de------2</link>
            <guid isPermaLink="false">https://medium.com/p/f9c5778a442f</guid>
            <category><![CDATA[salesforce]]></category>
            <category><![CDATA[modelo-spotify]]></category>
            <category><![CDATA[trailhead]]></category>
            <category><![CDATA[crm]]></category>
            <dc:creator><![CDATA[Jones Roberto Nuzzi]]></dc:creator>
            <pubDate>Fri, 22 Mar 2024 16:34:29 GMT</pubDate>
            <atom:updated>2024-03-24T17:55:19.046Z</atom:updated>
            <content:encoded><![CDATA[<figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*K5XUT0A9k3li99wieat48A.png" /></figure><p>Existe um grande desafio quando estamos focando em procurar pessoas focadas na tecnoligia salesforce, vou tentar descrever um processo simplificado para buscar profissionais, capacitar em engajar.</p><h3>Especialidades Salesforce</h3><p>A plataforma Salesforce oferece uma variedade de papéis e funções diferentes para seus usuários, cada um com suas próprias responsabilidades e níveis de acesso. Alguns exemplos incluem:</p><ul><li>Administrador de sistemas: este papel é responsável por configurar e gerenciar a plataforma Salesforce, incluindo a criação de usuários, configuração de segurança e definição de regras de negócios. Eles também são responsáveis por manter a integridade dos dados e garantir que a plataforma esteja funcionando corretamente.</li><li>Desenvolvedor: este papel é responsável por desenvolver e personalizar aplicativos e funcionalidades na plataforma Salesforce. Eles usam linguagens de programação como Apex e Visualforce para criar novas funcionalidades e integrações com outras ferramentas.</li><li>Gerente de Produto: Este papel é responsável por garantir que a plataforma Salesforce atenda às necessidades do negócio e dos usuários. Eles trabalham com equipes de desenvolvimento, design e operações para planejar, priorizar e entregar novos recursos e funcionalidades.</li><li>Analista de negócios: Este papel é responsável por entender as necessidades dos usuários e do negócio e traduzi-las em requisitos para a plataforma Salesforce. Eles trabalham com os administradores de sistemas e desenvolvedores para garantir que a plataforma esteja configurada corretamente e atenda às necessidades do negócio.</li><li>Consultor: Este papel é responsável por ajudar as organizações a implementar e usar a plataforma Salesforce. Eles fornecem orientação sobre a configuração e personalização da plataforma, bem como treinamento e suporte para os usuários.</li></ul><p>Esses são apenas alguns exemplos, e a plataforma Salesforce oferece uma variedade de outros papéis e funções, dependendo das necessidades específicas de cada organização.</p><h3>Capacitação de times</h3><p>Existem várias maneiras de capacitar times Salesforce, incluindo:</p><ol><li>Treinamento: A Salesforce oferece uma variedade de treinamentos, tanto on-line quanto presenciais, para ajudar os usuários a se familiarizar com a plataforma. Esses treinamentos incluem cursos básicos e avançados, bem como certificações específicas para diferentes papéis e funções.</li><li>Comunidade de desenvolvedores: A Salesforce tem uma comunidade ativa de desenvolvedores que compartilham conhecimentos, códigos e melhores práticas. Participar dessa comunidade pode ajudar os desenvolvedores a aprender novas técnicas e soluções para problemas comuns.</li><li>Mentoria: Designe um mentor dentro da equipe, que é um especialista em Salesforce e peça-lhes para orientar e ensinar novos membros da equipe.</li><li>Prática: A prática é fundamental para dominar qualquer habilidade, incluindo o uso da plataforma Salesforce. Encourage os usuários a experimentar com diferentes recursos e configurações, e forneça-lhes tempo e espaço para praticar e se familiarizar com a plataforma.</li><li>Customização de treinamento: Customize o treinamento de acordo com as necessidades específicas do seu time, considerando os objetivos, os desafios e as necessidades do negócio.</li><li>Atualização: Continuar a aprender sobre novos recursos e atualizações da plataforma Salesforce é essencial para garantir que o time esteja sempre atualizado e capaz de tirar o máximo proveito da plataforma.</li></ol><p>Uma outra abordagem da qual eu falei anteriormente é construir um PDI, e ter metas claras para o time.</p><p>Postagem PDI: <a href="https://medium.com/@jonesroberto/pdi-plano-de-desenvolvimento-individual-b01bc04e37a6">https://medium.com/@jonesroberto/pdi-plano-de-desenvolvimento-individual-b01bc04e37a6</a></p><h3>TrailHead</h3><p>Trailhead é uma plataforma de aprendizado online da Salesforce que ajuda os usuários a aprender sobre a plataforma Salesforce de maneira interativa e divertida. Ele oferece uma variedade de recursos de aprendizado, incluindo:</p><ol><li>Trilhas: São conjuntos de módulos de aprendizado que cobrem tópicos específicos, como administração de vendas, administração de serviços, desenvolvimento de aplicativos e muito mais. Cada trilha é composta por módulos de aprendizado que incluem lições, exercícios e desafios para ajudar os usuários a praticar e testar suas habilidades.</li><li>Projetos: São desafios práticos que os usuários podem completar para aplicar o que eles aprenderam em trilhas. Os projetos incluem instruções passo a passo e verificações de progresso para garantir que os usuários estejam no caminho certo.</li><li>Certificações: Os usuários podem se preparar e fazer exames de certificação para provar suas habilidades e conhecimentos na plataforma Salesforce. Certificações incluem certificações de administrador, de desenvolvedor, de arquiteto de soluções e muito mais.</li><li>Comunidade: A comunidade Trailhead é composta por usuários de todo o mundo, incluindo desenvolvedores, administradores e especialistas em negócios. Os usuários podem se conectar, compartilhar conhecimentos e colaborar uns com os outros.</li><li>Gamification: Trailhead usa uma abordagem de jogo para tornar o aprendizado divertido e interativo. Os usuários ganham pontos, conquistas e badges ao completar trilhas, projetos e certificações, e podem competir com outros usuários para ver quem tem mais pontos e conquistas.</li></ol><p>Pontuação na plataforma</p><p>A pontuação no Trailhead funciona da seguinte maneira:</p><ol><li>Cada trilha, módulo, projeto e certificação tem um valor de pontos específico. Quando um usuário completa esses recursos, eles ganham esses pontos.</li><li>Os usuários podem ver a pontuação total atual em sua página de perfil.</li><li>Os usuários também podem ver como eles se comparam com outros usuários na comunidade Trailhead, verificando o leaderboard.</li><li>Os usuários também podem ganhar badges para mostrar suas conquistas.</li><li>Os usuários também podem ganhar reconhecimento e reconhecimento interno na sua organização.</li><li>Além disso, os usuários podem adquirir pontos extras completando atividades adicionais, como criando conteúdo, ajudando outros usuários e muito mais.</li><li>A pontuação do Trailhead pode ser usada como uma forma de medir o progresso dos usuários e sua capacidade de usar a plataforma Salesforce e também pode ser usada como critério para seleção de profissionais em empresas que utilizam a plataforma Salesforce.</li></ol><p>Quais a badges na plataforma trailhead?</p><p>Os badges na plataforma Trailhead incluem:</p><ol><li>Conquistas: são badges que reconhecem seus esforços ao completar módulos, projetos e desafios específicos.</li><li>Certificações: são badges que reconhecem suas habilidades e conhecimentos em áreas específicas, como administração de Salesforce, desenvolvimento de aplicativos, marketing digital, etc.</li><li>Superbadges: são badges avançados que testam suas habilidades em uma variedade de tarefas e cenários de negócios.</li><li>Projetos de Comunidade: são badges que reconhecem sua contribuição para a comunidade Trailhead, como ajudar outros usuários a completar módulos ou projetos.</li></ol><h3>Certificações</h3><p>A Salesforce oferece vários tipos de certificações para reconhecer a habilidade e conhecimento dos profissionais em sua plataforma. Alguns tipos de certificação Salesforce incluem:</p><ol><li>Administrador de Salesforce: certificação que reconhece sua capacidade de configurar, gerenciar e personalizar a plataforma Salesforce.</li><li>Desenvolvedor de Salesforce: certificação que reconhece sua capacidade de desenvolver soluções personalizadas usando Apex, Visualforce e outras ferramentas de desenvolvimento.</li><li>Consultor de Vendas: certificação que reconhece sua capacidade de configurar e personalizar a plataforma Salesforce para atender às necessidades de vendas de uma empresa.</li><li>Consultor de Service Cloud: certificação que reconhece sua capacidade de configurar e personalizar a plataforma Salesforce para gerenciar o atendimento ao cliente.</li><li>Consultor de Marketing: certificação que reconhece sua capacidade de configurar e personalizar a plataforma Salesforce para gerenciar campanhas de marketing e análise de dados.</li></ol><p>Para obter uma certificação Salesforce, é necessário passar em um exame de certificação. Cada exame é projetado para testar seus conhecimentos e habilidades em uma área específica. Os exames podem ser feitos online e são cobrados taxas de inscrição.</p><p>Os próximos passos são focados em um bom trabalho de gestão de equipes, e acompanhamento próximo;</p><h3>ESPECIAL &gt; Modelo Spotify</h3><p>O Spotify usa o modelo de “tribos” para organizar sua estrutura de equipe. O modelo de tribos é uma abordagem baseada em equipe que organiza as equipes em torno de áreas de negócios específicas, como música, podcasts, plataforma, etc. Cada tribo é composta por equipes autônomas e cross-funcionais que trabalham juntas para entregar valor aos usuários e ao negócio.</p><p>Cada tribo é liderada por um líder de tribo, que é responsável por garantir que a tribo esteja alinhada com a estratégia geral do negócio e que as equipes estejam trabalhando de forma colaborativa e eficaz. As equipes dentro de cada tribo são responsáveis por seus próprios produtos e funcionalidades, e trabalham de forma colaborativa com outras equipes dentro da tribo e com outras tribos.</p><p>Além disso, o Spotify também tem equipes de suporte técnico e operações que trabalham em conjunto com as tribos para garantir que as necessidades do negócio sejam atendidas e que os usuários tenham uma boa experiência.</p><p>Esse modelo permite que as equipes sejam mais flexíveis e ágeis, pois elas são organizadas em torno de áreas específicas do negócio e têm a autonomia para tomar decisões e entregar valor rapidamente. Além disso, isso também permite que as equipes sejam mais engajadas e motivadas, pois elas têm uma visão clara do impacto do seu trabalho no negócio e na experiência do usuário.</p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=f9c5778a442f" width="1" height="1" alt="">]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Design Thinking]]></title>
            <link>https://medium.com/@jonesroberto/design-thinking-734a3035cb94?source=rss-2f67c06f20de------2</link>
            <guid isPermaLink="false">https://medium.com/p/734a3035cb94</guid>
            <category><![CDATA[design-thinking]]></category>
            <dc:creator><![CDATA[Jones Roberto Nuzzi]]></dc:creator>
            <pubDate>Fri, 22 Mar 2024 16:26:20 GMT</pubDate>
            <atom:updated>2024-03-22T16:26:20.334Z</atom:updated>
            <content:encoded><![CDATA[<figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*seVgqK1zccOvGF4GNP9VGg.png" /></figure><p>Design Thinking é um processo criativo e iterativo que busca entender e resolver problemas de uma forma humana-centrada. Ele é baseado na ideia de que, para desenvolver soluções inovadoras e eficazes, é necessário entender profundamente as necessidades e desejos dos usuários.</p><p>O Design Thinking segue geralmente cinco etapas:</p><ol><li>Compreensão: Nesta etapa, o objetivo é entender o problema e as necessidades dos usuários. Isso pode incluir entrevistas, pesquisas e outros métodos de coleta de dados.</li><li>Definição: Com as informações coletadas na etapa anterior, é possível definir o problema de forma clara e objetiva.</li><li>Ideiação: Nesta etapa, o objetivo é gerar ideias para resolver o problema. Isso pode ser feito por meio de brainstorming, mind mapping e outros métodos criativos.</li><li>Prototipagem: Com as ideias geradas, é possível criar protótipos para testar e validar as soluções propostas.</li><li>Teste: Por fim, é importante testar as soluções com os usuários para coletar feedback e fazer ajustes antes de implementar a solução final.</li></ol><p>O Design Thinking é uma metodologia amplamente utilizada em empresas e organizações para desenvolver produtos, serviços e soluções inovadoras. Ele é aplicado em diversos setores, como tecnologia, saúde, educação, entre outros.</p><h3>Compreensão</h3><p>A etapa de compreensão do Design Thinking é a primeira etapa do processo e tem como objetivo entender o problema e as necessidades dos usuários. É nessa etapa que se coleta informações e se compreende o contexto em que o problema está inserido. Algumas das atividades comuns nessa etapa incluem:</p><ol><li>Entrevistas: Entrevistar pessoas que possam fornecer informações valiosas sobre o problema, como usuários, especialistas e stakeholders.</li><li>Pesquisas: Realizar pesquisas com usuários e outras partes interessadas para obter informações sobre necessidades, desejos e comportamentos.</li><li>Estudo de caso: Analisar casos existentes de problemas similares para obter insights e inspiração.</li><li>Observação: Observar usuários em seu ambiente natural para entender como eles interagem com o problema.</li><li>Análise de dados: Analisar dados quantitativos e qualitativos para entender o problema e as necessidades dos usuários.</li></ol><p>Essas atividades são importantes para coletar informações valiosas e compreender a complexidade do problema. É importante lembrar que essa etapa é iterativa, ou seja, pode ser necessário realizar mais de uma vez para se obter todas as informações necessárias.</p><h3>Definição</h3><p>A etapa de Definição do Design Thinking vem logo após a etapa de Compreensão e tem como objetivo definir o problema de forma clara e objetiva. Esta etapa é importante para garantir que todos os envolvidos na solução do problema tenham uma compreensão comum do problema. Algumas das atividades comuns nessa etapa incluem:</p><ol><li>Síntese: Sintetizar as informações coletadas na etapa anterior para identificar os problemas e necessidades dos usuários.</li><li>Identificação de oportunidades: Identificar oportunidades para resolver o problema de forma inovadora.</li><li>Definição de objetivos: Definir objetivos claros para a solução do problema.</li><li>Criação de um point of view (POV): Criar um point of view (POV) que resume a compreensão do problema e as necessidades dos usuários.</li><li>Elaboração de hipóteses: Elaborar hipóteses sobre como a solução do problema pode atender as necessidades dos usuários.</li></ol><p>Essa etapa é importante para garantir que todos os envolvidos tenham uma compreensão clara do problema e do que precisa ser alcançado com a solução. A definição do problema também é uma base para as etapas seguintes do Design Thinking.</p><h3>Ideiação</h3><p>A etapa de ideiação do Design Thinking é a terceira etapa do processo e tem como objetivo gerar ideias para resolver o problema. Esta etapa é importante para criar soluções inovadoras e diferentes. Algumas das atividades comuns nessa etapa incluem:</p><ol><li>Brainstorming: Reunir um grupo de pessoas para gerar ideias de forma colaborativa.</li><li>Mind mapping: Criar um mapa mental para organizar ideias e identificar conexões entre elas.</li><li>Sketching: Esboçar ideias de forma rápida e informal para explorar diferentes possibilidades.</li><li>Role-playing: Encenar cenários para visualizar como as ideias funcionariam na prática.</li><li>Prototipagem rápida: Criar protótipos rápidos para testar ideias e obter feedback.</li></ol><p>Essa etapa é importante para gerar uma grande quantidade de ideias e explorar diferentes possibilidades. É importante lembrar que nessa etapa todas as ideias são bem-vindas, independentemente de sua viabilidade ou complexidade. As ideias geradas na etapa de ideiação servem como base para as etapas seguintes do Design Thinking.</p><h3>Prototipagem</h3><p>A etapa de prototipagem do Design Thinking vem logo após a etapa de ideiação e tem como objetivo transformar as ideias geradas em soluções tangíveis. Esta etapa é importante para testar as soluções e obter feedback dos usuários. Algumas das atividades comuns nessa etapa incluem:</p><ol><li>Criação de protótipos: Criar protótipos de diferentes níveis de detalhes para testar as ideias geradas na etapa anterior.</li><li>Testes com usuários: Realizar testes com usuários para obter feedback sobre as soluções.</li><li>Análise de feedback: Analisar o feedback obtido para identificar pontos fortes e fracos das soluções.</li><li>Iteração: Realizar iterações para aprimorar as soluções baseadas no feedback obtido.</li></ol><p>A prototipagem é importante para testar as soluções e obter feedback dos usuários. É importante lembrar que essa etapa é iterativa, ou seja, é necessário realizar mais de uma vez para se obter a solução final. A prototipagem permite verificar se a solução atende as necessidades dos usuários e se ela é viável antes de ser implementada.</p><h3>Teste</h3><p>A etapa de teste do Design Thinking é a quinta etapa do processo e tem como objetivo validar a solução prototipada com os usuários. Essa etapa é importante para garantir que a solução atende as necessidades dos usuários e é viável antes de ser implementada. Algumas das atividades comuns nessa etapa incluem:</p><ol><li>Testes de usabilidade: Realizar testes com usuários para verificar se a solução é fácil de usar e atende às suas necessidades.</li><li>Testes de aceitação: Realizar testes com usuários para verificar se eles estão dispostos a usar a solução.</li><li>Análise de feedback: Analisar o feedback obtido para identificar pontos fortes e fracos da solução.</li><li>Iteração: Realizar iterações para aprimorar a solução baseada no feedback obtido.</li></ol><p>Essa etapa é importante para garantir que a solução atende as necessidades dos usuários e é viável antes de ser implementada. É importante lembrar que essa etapa também é iterativa, ou seja, pode ser necessário realizar mais de uma vez para se obter a solução final e adequada.</p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=734a3035cb94" width="1" height="1" alt="">]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Lean Inception]]></title>
            <link>https://medium.com/@jonesroberto/lean-inception-28728ce736fd?source=rss-2f67c06f20de------2</link>
            <guid isPermaLink="false">https://medium.com/p/28728ce736fd</guid>
            <category><![CDATA[lean-inception]]></category>
            <category><![CDATA[pbb]]></category>
            <category><![CDATA[agilidade]]></category>
            <category><![CDATA[agile]]></category>
            <dc:creator><![CDATA[Jones Roberto Nuzzi]]></dc:creator>
            <pubDate>Fri, 22 Mar 2024 16:21:37 GMT</pubDate>
            <atom:updated>2024-03-22T16:21:37.540Z</atom:updated>
            <content:encoded><![CDATA[<figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/0*my_tDcNpkNz_7j2v.png" /></figure><p>Lean Inception é uma abordagem para o planejamento ágil de projetos que combina princípios de Lean Startup e Scrum. Ela foi desenvolvida pela ThoughtWorks e é usada para ajudar equipes a entender melhor o problema a ser resolvido e definir o escopo do projeto.</p><figure><img alt="" src="https://cdn-images-1.medium.com/max/860/1*Tut2CDeNYWCY730sObzbjg.png" /></figure><p>A Lean Inception começa com a formação de uma equipe multidisciplinar, composta por desenvolvedores, gerentes de projeto, gerentes de produto e stakeholders. Em seguida, é realizada uma série de atividades para entender melhor o problema e definir o escopo do projeto. Essas atividades incluem:</p><ul><li>Mapeamento do problema: a equipe identifica os problemas e desafios enfrentados pelos stakeholders e define o objetivo do projeto.</li><li>Identificação de hipóteses: a equipe formula hipóteses sobre como resolver o problema e os desafios identificados.</li><li>Validação de hipóteses: a equipe valida as hipóteses com os stakeholders e clientes para garantir que estão no caminho certo.</li><li>Definição do escopo: a equipe define o escopo do projeto com base nas hipóteses validadas.</li><li>Criação do backlog: a equipe cria um backlog com as tarefas necessárias para alcançar o objetivo do projeto.</li></ul><p>Uma vez que o escopo e o backlog são definidos, o projeto pode ser gerenciado usando o framework Scrum. A equipe trabalha em sprints curtos e se comunica constantemente para garantir que o projeto está no caminho certo e para fazer ajustes se necessário.</p><p>A Lean Inception é uma abordagem útil para projetos complexos, onde é importante entender melhor o problema e definir o escopo antes de começar a desenvolver uma solução. Ajuda a equipe a se concentrar nas necessidades dos clientes e garantir que o projeto está alinhado com as expectativas.</p><p>Não iremos focar na execução completa da Lean Inception, pois temos uma referência excelente no livro <a href="https://amzn.to/40N5DEA"><strong>Lean Inception: Como alinhar pessoas e construir o produto certo</strong></a>, escrito por Paulo Caroli.</p><p>Referências&gt; <a href="https://caroli.org/livro/lean-inception-como-alinhar-pessoas-e-construir-o-produto-certo/">https://caroli.org/livro/lean-inception-como-alinhar-pessoas-e-construir-o-produto-certo/</a></p><p>Livro:</p><p><a href="https://www.amazon.com.br/Lean-Inception-Alinhar-Pessoas-Construir/dp/8594377061">https://www.amazon.com.br/Lean-Inception-Alinhar-Pessoas-Construir/dp/8594377061</a></p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=28728ce736fd" width="1" height="1" alt="">]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[O Que É 5W2H?]]></title>
            <link>https://medium.com/@jonesroberto/o-que-%C3%A9-5w2h-408a20a7a848?source=rss-2f67c06f20de------2</link>
            <guid isPermaLink="false">https://medium.com/p/408a20a7a848</guid>
            <category><![CDATA[negócios]]></category>
            <category><![CDATA[5w2h]]></category>
            <category><![CDATA[agile]]></category>
            <category><![CDATA[gestão-de-pessoas]]></category>
            <dc:creator><![CDATA[Jones Roberto Nuzzi]]></dc:creator>
            <pubDate>Fri, 22 Mar 2024 15:56:15 GMT</pubDate>
            <atom:updated>2024-03-22T15:56:15.249Z</atom:updated>
            <content:encoded><![CDATA[<figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/0*35Y-0M4n9rHk1YFC.png" /></figure><p>5W2H é uma ferramenta de planejamento e gerenciamento de projetos que ajuda a identificar e definir os detalhes de uma tarefa ou projeto. A sigla representa as sete perguntas a serem respondidas:</p><ol><li>O que (What) — Qual é a tarefa ou projeto?</li><li>Por quê (Why) — Qual é o objetivo ou motivo para realizar a tarefa?</li><li>Quem (Who) — Quem será responsável por realizar a tarefa ou quem será afetado?</li><li>Onde (Where) — Onde a tarefa será realizada?</li><li>Quando (When) — Quando a tarefa será realizada?</li><li>Como (How) — Como a tarefa será realizada?</li><li>Quanto (How Much) — Qual é o orçamento ou recursos necessários para realizar a tarefa?</li></ol><p>Essas perguntas ajudam a garantir que todos os detalhes importantes sejam considerados antes de iniciar um projeto ou tarefa, o que aumenta as chances de sucesso.</p><p>A maneira certa de usar a ferramenta 5W2H depende do contexto específico de cada projeto ou tarefa, mas geralmente, o processo é o seguinte:</p><ol><li>Identificar a tarefa ou projeto: Comece respondendo à pergunta “o que” (what). Defina claramente a tarefa ou projeto que precisa ser realizado.</li><li>Definir o objetivo: Responda à pergunta “por quê” (why). Por que a tarefa ou projeto é importante? Qual é o objetivo final?</li><li>Identificar as pessoas envolvidas: Responda à pergunta “quem” (who). Quem será responsável por realizar a tarefa? Quem será afetado pelo projeto?</li><li>Definir o local: Responda à pergunta “onde” (where). Onde a tarefa ou projeto será realizado?</li><li>Estabelecer um cronograma: Responda à pergunta “quando” (when). Quando a tarefa ou projeto será iniciado e concluído?</li><li>Identificar os recursos necessários: Responda à pergunta “como” (how). Como a tarefa ou projeto será realizado? Quais recursos serão necessários?</li><li>Estabelecer um orçamento: Responda à pergunta “quanto” (how much). Qual é o orçamento ou recursos necessários para realizar a tarefa ou projeto?</li></ol><p>Após responder essas perguntas, é importante revisar e atualizar as respostas regularmente para garantir que o projeto ou tarefa esteja no caminho certo. A ferramenta 5W2H é uma ótima maneira de garantir que todos os aspectos importantes de um projeto ou tarefa sejam considerados antes de iniciar, e de acompanhar o progresso ao longo do tempo.</p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=408a20a7a848" width="1" height="1" alt="">]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[Design Patterns mais usados atualmente]]></title>
            <link>https://medium.com/@jonesroberto/design-patterns-mais-usados-atualmente-83b58a1811f4?source=rss-2f67c06f20de------2</link>
            <guid isPermaLink="false">https://medium.com/p/83b58a1811f4</guid>
            <category><![CDATA[engenharia-de-software]]></category>
            <category><![CDATA[arquitetura-de-software]]></category>
            <category><![CDATA[design-patterns]]></category>
            <dc:creator><![CDATA[Jones Roberto Nuzzi]]></dc:creator>
            <pubDate>Fri, 22 Mar 2024 15:54:29 GMT</pubDate>
            <atom:updated>2024-03-22T15:54:29.574Z</atom:updated>
            <content:encoded><![CDATA[<figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/0*xuHAvoDK2Z-75zSv.png" /></figure><p>Olá, nesse post irei falar dos Design patterns mais usado atualmente,</p><p>Anteriomente eu fiz uma postagem falando de todos os padrões do GOF, que você pode acessar pelo link abaixo:</p><p><a href="https://medium.com/@jonesroberto/design-patterns-34257406b136">https://medium.com/@jonesroberto/design-patterns-34257406b136</a></p><h3>Padrões Criacionais (Creational Patterns)</h3><p>Singleton — <a href="https://www.virtualbase.com.br/design-patterns-parte-5-singleton-324c6effab6f/">https://medium.com/xp-inc/desing-patterns-parte-5-singleton-324c6effab6f</a></p><p><em>Factory Method- </em><a href="https://medium.com/xp-inc/desing-patterns-factory-method-a7496ae071aa"><em>https://medium.com/xp-inc/desing-patterns-factory-method-a7496ae071aa</em></a></p><h3>Padrões estruturais (Structural Design Patterns)</h3><p>Adapter — <a href="https://medium.com/xp-inc/desing-patterns-parte-8-adapter-21ed67ceb9ed">https://medium.com/xp-inc/desing-patterns-parte-8-adapter-21ed67ceb9ed</a></p><p>Facade — <a href="https://medium.com/xp-inc/desing-patterns-parte-12-facade-ff66c68f5784">https://medium.com/xp-inc/desing-patterns-parte-12-facade-ff66c68f5784</a></p><p>Decorator- <a href="https://medium.com/xp-inc/desing-patterns-parte-11-decorator-ba348f44142f">https://medium.com/xp-inc/desing-patterns-parte-11-decorator-ba348f44142f</a></p><p>Proxy — <a href="https://medium.com/xp-inc/design-patterns-parte-14-proxy-9f72c15a2ee1">https://medium.com/xp-inc/design-patterns-parte-14-proxy-9f72c15a2ee1</a></p><h3>Padrões Comportamentais (Behavioral Design Patterns)</h3><p>Command — <a href="https://medium.com/xp-inc/design-patterns-parte-16-command-9c73af726c9c">https://medium.com/xp-inc/design-patterns-parte-16-command-9c73af726c9c</a></p><p>Template method — <a href="https://medium.com/xp-inc/design-patterns-parte-24-template-method-69e3a7927dcd">https://medium.com/xp-inc/design-patterns-parte-24-template-method-69e3a7927dcd</a></p><p>Strategy — <a href="https://medium.com/xp-inc/design-patterns-parte-23-strategy-50a18ccbd1de">https://medium.com/xp-inc/design-patterns-parte-23-strategy-50a18ccbd1de</a></p><p>Observer — <a href="https://medium.com/xp-inc/design-patterns-parte-21-observer-e2260412011a">https://medium.com/xp-inc/design-patterns-parte-21-observer-e2260412011a</a></p><p>Mediator — <a href="https://medium.com/xp-inc/design-patterns-parte-19-mediator-a35af116eef1">https://medium.com/xp-inc/design-patterns-parte-19-mediator-a35af116eef1</a></p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=83b58a1811f4" width="1" height="1" alt="">]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[9 Métodos de requisição HTTP]]></title>
            <link>https://medium.com/@jonesroberto/9-m%C3%A9todos-de-requisi%C3%A7%C3%A3o-http-20159bd6ee6c?source=rss-2f67c06f20de------2</link>
            <guid isPermaLink="false">https://medium.com/p/20159bd6ee6c</guid>
            <category><![CDATA[arquitetura-de-software]]></category>
            <category><![CDATA[engenharia-de-software]]></category>
            <category><![CDATA[microservices]]></category>
            <dc:creator><![CDATA[Jones Roberto Nuzzi]]></dc:creator>
            <pubDate>Fri, 22 Mar 2024 15:53:39 GMT</pubDate>
            <atom:updated>2026-07-29T14:03:46.057Z</atom:updated>
            <content:encoded><![CDATA[<figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/0*_7VCkcFtCoDm4a2l.png" /></figure><p>Hoje irei falar sobre os nove métodos HTTP normalmente associado ao desenvolvimento web Restful e ao protocolo de transferência de hipertexto e que são mais comuns ao desenvolver APIs RESTful</p><h3>Métodos de solicitação HTTP</h3><p>Os métodos de solicitação são diferenciados por meio de vários fatores, primeiro pelo <em>verbo</em>, mas também pelas seguintes características:</p><ul><li>Um método de solicitação será <strong><em>idempotente</em></strong> se puder ser processado com êxito várias vezes sem alterar o resultado. Para obter mais informações, confira <a href="https://www.rfc-editor.org/rfc/rfc9110.html#name-idempotent-methods">RFC 9110: 9.2.2. Métodos idempotentes</a>.</li><li>Um método de solicitação pode ser <strong><em>armazenável em cache</em></strong> quando sua resposta correspondente pode ser armazenada para reutilização. Para obter mais informações, consulte <a href="https://www.rfc-editor.org/rfc/rfc9110.html#name-methods-and-caching">RFC 9110: Seção 9.2.3. Métodos e cache</a>.</li><li>Um método de solicitação será considerado um <strong><em>método seguro</em></strong> se ele não modifica o estado de um recurso. Todos os <em>métodos seguros</em> também são <em>idempotentes</em>, mas nem todos os métodos <em>idempotentes</em> são considerados <em>seguros</em>. Para obter mais informações, confira <a href="https://www.rfc-editor.org/rfc/rfc9110.html#name-safe-methods">RFC 9110: Seção 9.2.1. Métodos seguros</a>.</li></ul><figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/1*2dTl8JF2HFLpzjOSE-mILg.png" /></figure><p>**O método POST só pode ser armazenado em cache quando os cabeçalhos apropriados Cache-Control ou Expires de resposta estiverem presentes. Isso é muito incomum na prática.</p><h3>Finalidade de cada método HTTP</h3><p>A <a href="https://datatracker.ietf.org/doc/html/rfc1945">versão 1.0</a> do Hypertext Transfer Protocol, lançada em 1996, definia apenas três verbos HTTP: GET, POST e HEAD.</p><h3>Método GET</h3><figure><img alt="" src="https://cdn-images-1.medium.com/max/404/0*HDjDHy7vkz8nD8qw.png" /></figure><p>O método HTTP mais comumente usado é GET.</p><p>O objetivo do método GET é simplesmente recuperar dados do servidor. O método GET é usado para solicitar qualquer um dos seguintes recursos:</p><ul><li>Uma página da web ou arquivo HTML.</li><li>Uma imagem ou vídeo.</li><li>Um documento JSON.</li><li>Um arquivo CSS ou arquivo JavaScript.</li><li>Um arquivo XML.</li></ul><p>O método de solicitação GET é considerado uma operação segura, o que significa que não deve alterar o estado de nenhum recurso no servidor.</p><h3>Método POST</h3><figure><img alt="" src="https://cdn-images-1.medium.com/max/399/0*3kzsAMxQlMZG60eI.png" /></figure><p>O método de solicitação POST HTTP envia dados ao servidor para processamento.</p><p>Os dados enviados ao servidor normalmente estão no seguinte formato:</p><ul><li>Campos de entrada de formulários online.</li><li>Dados XML ou JSON.</li><li>Dados de texto de parâmetros de consulta.</li></ul><p>A especificação HTTP permite ao desenvolvedor decidir o tipo de processamento dos dados enviados através de um método HTTP POST. Os usos prototípicos do método POST incluem o seguinte:</p><ul><li>Poste uma mensagem em um quadro de avisos.</li><li>Salve dados de formulários HTML em um banco de dados.</li><li>Calcule um resultado com base nos dados enviados.</li></ul><p>Uma operação POST não é considerada uma operação segura, pois tem o poder de atualizar o estado do servidor e causar possíveis efeitos colaterais no estado do servidor quando executada.</p><p>O método HTTP POST também não precisa ser idempotente, o que significa que ele pode deixar dados e recursos no servidor em um estado diferente cada vez que é invocado.</p><h3>Método PUT</h3><figure><img alt="" src="https://cdn-images-1.medium.com/max/407/0*U8mbQuc-zYnB9mjZ.png" /></figure><p>O método HTTP PUT é usado para substituir completamente um recurso identificado por uma determinada URL.</p><p>O método de solicitação HTTP PUT inclui duas regras:</p><ol><li>Uma operação PUT sempre inclui uma carga útil que descreve uma definição de recurso completamente nova a ser salva pelo servidor.</li><li>A operação PUT usa a URL exata do recurso de destino.</li></ol><p>Se existir um recurso na URL fornecida por uma operação PUT, a representação do recurso será completamente substituída. Se não existir um recurso nesse URL, um novo recurso será criado.</p><p>A carga útil de uma operação PUT pode ser qualquer coisa que o servidor entenda, embora JSON e XML sejam os formatos de troca de dados mais comuns para webservices e microsserviços RESTful.</p><h3>Método DELETE</h3><figure><img alt="" src="https://cdn-images-1.medium.com/max/405/0*GuoY6VS2a1TVob0j.png" /></figure><p>O método HTTP DELETE é autoexplicativo. Após a execução, o recurso para o qual uma operação DELETE aponta é removido do servidor.Tal como acontece com as operações PUT, o método HTTP DELETE é idempotente e inseguro.</p><h3>Método PATCH</h3><figure><img alt="" src="https://cdn-images-1.medium.com/max/400/0*Hzu2aOxPMVqvAXHP.png" /></figure><p>Às vezes, as representações de objetos ficam muito grandes. A exigência de que uma operação PUT sempre envie uma representação completa de recursos ao servidor é um desperdício se apenas uma pequena alteração for necessária em um recurso grande.</p><p>O método PATH HTTP, adicionado ao Protocolo de Transferência de Hipertexto de forma independente como parte da <a href="https://www.rfc-editor.org/rfc/rfc5789">RFC 5789</a> , permite atualizações de recursos existentes. É significativamente mais eficiente, por exemplo, enviar uma pequena carga útil em vez de uma representação completa de recursos para o servidor.</p><h3>Método HEAD</h3><figure><img alt="" src="https://cdn-images-1.medium.com/max/414/0*KD2fybs5FXV-OAa1.png" /></figure><p>O método HTTP HEAD simplesmente retorna metadados sobre um recurso no servidor. Este método de solicitação HTTP retorna todos os cabeçalhos associados a um recurso em uma determinada URL, mas na verdade não retorna o recurso.</p><p>O método HTTP HEAD é comumente usado para verificar as seguintes condições:</p><ul><li>O tamanho de um recurso no servidor.</li><li>Se existe um recurso no servidor ou não.</li><li>A data da última modificação de um recurso.</li><li>Validade de um recurso armazenado em cache no servidor.</li></ul><h3>Método CONNECT</h3><figure><img alt="" src="https://cdn-images-1.medium.com/max/402/0*5JKx74Tc9Ipj9Ncv.png" /></figure><p>A operação connect é usada para criar uma conexão com um recurso do lado do servidor. O alvo mais comum do método HTTP CONNECT é um servidor proxy, que um cliente deve acessar para sair da rede local.</p><p>Os designers de API RESTful raramente interagem com o método de solicitação CONNECT HTTP.</p><h3>Método OPTIONS</h3><figure><img alt="" src="https://cdn-images-1.medium.com/max/398/0*vRpIGOQSNVrj9b4d.png" /></figure><p>O servidor não precisa oferecer suporte a todos os métodos HTTP para todos os recursos que gerencia.</p><p>Alguns recursos suportam as operações PUT e POST. Outros recursos suportam apenas operações GET.</p><p>O método HTTP OPTIONS retorna uma lista de quais métodos HTTP são suportados e permitidos.</p><h3>Método TRACE</h3><figure><img alt="" src="https://cdn-images-1.medium.com/max/406/0*Zl9FPD4tgLTXGDTd.png" /></figure><p>O método TRACE HTTP é usado para diagnóstico, depuração e solução de problemas. Ele simplesmente retorna um rastreamento de diagnóstico que registra dados do ciclo de solicitação-resposta.</p><p>O conteúdo de um rastreamento geralmente é apenas um eco do servidor dos vários cabeçalhos de solicitação enviados pelo cliente.</p><p>Existem mais de 30 métodos HTTP, em breve irei abordar em um novo post, espero que tenha ficado bem claro.</p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=20159bd6ee6c" width="1" height="1" alt="">]]></content:encoded>
        </item>
        <item>
            <title><![CDATA[5 Estratégias de Implantação de Software]]></title>
            <link>https://medium.com/@jonesroberto/5-estrat%C3%A9gias-de-implanta%C3%A7%C3%A3o-de-software-2e4dd2ea0c98?source=rss-2f67c06f20de------2</link>
            <guid isPermaLink="false">https://medium.com/p/2e4dd2ea0c98</guid>
            <category><![CDATA[engenharia-de-software]]></category>
            <category><![CDATA[arquitetura-de-software]]></category>
            <category><![CDATA[devops]]></category>
            <dc:creator><![CDATA[Jones Roberto Nuzzi]]></dc:creator>
            <pubDate>Fri, 22 Mar 2024 15:52:14 GMT</pubDate>
            <atom:updated>2024-03-28T10:58:09.076Z</atom:updated>
            <content:encoded><![CDATA[<figure><img alt="" src="https://cdn-images-1.medium.com/max/1024/0*PCO2lytJLA46w2ZC.png" /></figure><p>Em um mundo cada vez mais orientado pela tecnologia, a implantação rápida e segura de software tornou-se uma prioridade para empresas que buscam se manter competitivas. Nesse cenário, estratégias de implantação eficientes ganham destaque, e hoje exploraremos cinco abordagens essenciais: Canary Releases, Blue-Green Deployment, Feature Toggles, A/B Testing e Dark Launches.</p><h3>1. Canary Releases</h3><figure><img alt="" src="https://cdn-images-1.medium.com/max/528/0*5s10EIibOsVgLCBk.png" /></figure><p>As Canary Releases, ou “liberações canárias”, são uma estratégia ousada, mas eficaz, para implementar novas funcionalidades de software de maneira gradual. Funciona da seguinte forma: uma pequena parcela dos usuários (a “canária”) recebe a atualização mais recente. Se não houver problemas detectados, a liberação é expandida gradualmente para um público maior. Isso permite identificar e corrigir problemas antes que atinjam a totalidade dos usuários.</p><h3>2. Blue-Green Deployment</h3><figure><img alt="" src="https://cdn-images-1.medium.com/max/533/0*Z7-S98FPSoLKVacw.png" /></figure><p>A estratégia Blue-Green Deployment envolve a criação de dois ambientes idênticos: um “azul” (em produção) e outro “verde” (um clone). A transição entre os ambientes é suave: o tráfego é redirecionado do ambiente azul para o verde. Se surgirem problemas, a reversão para o ambiente azul é simples e rápida. Essa abordagem elimina praticamente qualquer tempo de inatividade durante as atualizações, garantindo uma experiência contínua para os usuários.</p><h3>3. Feature Toggles</h3><figure><img alt="" src="https://cdn-images-1.medium.com/max/538/0*Vbe21TDTQILgX6Xc.png" /></figure><p>As Feature Toggles, ou “interruptores de funcionalidades”, permitem ativar ou desativar determinadas funcionalidades em tempo real. Isso oferece flexibilidade e controle, permitindo que equipes liberem código inacabado ou recursos experimentais sem impactar negativamente os usuários. Os desenvolvedores podem, assim, realizar testes de funcionalidades no ambiente de produção antes de uma implantação completa.</p><h3>4. A/B Testing</h3><figure><img alt="" src="https://cdn-images-1.medium.com/max/538/0*H3lgiArsafgdkrka.png" /></figure><p>O A/B Testing, também conhecido como teste de divisão, envolve a apresentação simultânea de duas versões de uma página, recurso ou fluxo de trabalho para diferentes grupos de usuários. Isso possibilita a análise de métricas de desempenho e a coleta de feedback em tempo real, permitindo que as equipes tomem decisões informadas sobre qual versão oferece a melhor experiência para os usuários.</p><h3>5. Dark Launches</h3><figure><img alt="" src="https://cdn-images-1.medium.com/max/541/0*V7xEnAqoxO0Yga0f.png" /></figure><p>As Dark Launches, ou “liberações ocultas”, são uma estratégia que permite lançar novos recursos sem que os usuários os vejam inicialmente. Isso é alcançado ao direcionar tráfego para os novos recursos apenas internamente, permitindo testes extensivos antes da exposição ao público. Essa abordagem minimiza os riscos associados a novas implementações, garantindo uma transição suave para os usuários finais quando os recursos são totalmente revelados.</p><p>Em conclusão, as estratégias de implantação mencionadas oferecem diversas abordagens para otimizar o processo de entrega de software, maximizando a eficiência e minimizando os riscos. Ao incorporar essas práticas em seu fluxo de trabalho de desenvolvimento, as equipes podem alcançar uma implementação mais suave e uma experiência do usuário aprimorada.</p><p>Espero que tenham gostado, vejam todo meu conteúdo aqui no medium:</p><p>Https://medium.com/@jonesroberto</p><img src="https://medium.com/_/stat?event=post.clientViewed&referrerSource=full_rss&postId=2e4dd2ea0c98" width="1" height="1" alt="">]]></content:encoded>
        </item>
    </channel>
</rss>