A história do amor entre a engenharia de software e a folga

maçaria, tempo voa

em 2009, nós éramos uma pequena equipe de engenheiros de software que estava criando um massivo jogo multiplayer chamado glitch .

Começamos a usar o Chat de Relé da Internet (lembre-se do IRC?) Para se manterem coordenado. Como o trabalho do jogo progrediu, queríamos que nosso canal do IRC servisse mais do que apenas comunicação básica. Então começamos a fazer alguns ajustes, adicionamos funções e criamos novas maneiras de simplificar as tarefas.

Finalmente, o jogo não Tenha sucesso, então decidimos nos concentrar neste novo método de colaboração que nos desenvolvemos. Foi uma decisão sábia, uma vez que tínhamos um produto perfeito na mão para o mercado: um método verdadeiramente eficaz para as equipes trabalharem juntos.

Talvez seja porque não estávamos tentando “projetar” qualquer coisa. Não havia egos, nem especulações sobre possíveis usuários de um produto. Nós éramos os usuários. Assim, a folga nasceu.

Atualmente, cresceu mais do que poderíamos ter imaginado, e a principal causa é a adoção por equipes de desenvolvimento de todos os tamanhos. É verdade que a folga é usada em praticamente todos os departamentos e disciplinas, mas tudo começou com a engenharia de software. E essa ainda é a razão para uma grande parte do entusiasmo dos usuários, um entusiasmo que nos atrai um sorriso na rosa vindo ao trabalho. É muito gratificante saber que criamos uma ferramenta que tem um impacto direto no trabalho diário dos desenvolvedores.

Este guia é uma introdução rápida a algumas das maneiras pelas quais a folga ajuda os desenvolvedores. Esperamos servir para explicar a razão pela qual engenheiros de software adoram folga.

Por que a folga se adapta tão bem a engenharia de software

todos os dias, equipamento não técnico de todos os tipos usam folga. Parece que ele se adapta organicamente para o qual é usado.

No entanto, a folga é ajustada para engenharia de software como um anel de dedo. Afinal, é um tipo de trabalho muito especializado.

Se você meditar, todos os tipos de trabalho são cada vez mais semelhantes a isso, embora a engenharia de software seja o exemplo do uso ideal. Requer um tipo de colaboração que simplesmente não pode ser alcançado com e-mails e reuniões. Esse tipo de trabalho precisa de um novo tipo de colaboração.

Slack: A plataforma de correio com base em canais

pessoas que nunca usaram folga acha que é um aplicativo de mensagens, mas é muito mais do que isso . Ele se adapta à maneira como você trabalha a partir dos diferentes computadores, para sua assembléia de software atual … e também para mudar.

  • mensagens baseadas no canal

Isso permite que as equipes criem canais dedicados a tarefas, projetos ou problemas específicos. Por exemplo, um novo canal de desenvolvimento – novo no qual todos os desenvolvedores se reúnem para trabalhar em um novo site. Ou um canal # triaje-app-mobile onde as equipes colaboram para eliminar os erros de um aplicativo para dispositivos móveis.

Os canais são muito melhores do que as mensagens individuais ou conversas de e-mail privadas, uma vez que eles facilitam a participação de As pessoas apropriadas nos tópicos correspondentes e no momento certo.

  • Uma base de conhecimento para pesquisas

Conhecimento só se você puder consultar e anexos de e-mail são geralmente escondidos, você só pode ver as pessoas copiadas. Por outro lado, a folga é o único lugar onde todos podem encontrar documentos, conversas e decisões importantes, como as especificações de um produto ou discussões em torno de uma nova função.

  • uma camada de integração

com a folga, o software que seus desenvolvedores usam a maior parte do tempo (como Github, Jerkins, Jenkins e Trello) é integrado onde o trabalho é discutido todos os dias. Desta forma, as alterações entre diferentes aplicativos são reduzidas.

Nota: Quando essas três funções se encontram em um só lugar, todos se tornam muito mais eficazes. A plataforma de colaboração é muito melhor do que a soma de suas partes.

Vantagens para equipamentos de engenharia de software

A plataforma de correio apropriada baseada em canais influencia diretamente aspectos de mais importância para todas as equipes de engenharia: Um código melhor que é entregue mais rápido, maior confiança no serviço e uma melhor experiência de desenvolvedora (para que seus funcionários talentosos estejam satisfeitos). Qualquer software que ajuda você a obter tudo isso merece dar uma olhada.

“Slack é uma plataforma de documentação dinâmica, e tudo é consultado”.

idc ajudou-nos a apoiar nossas afirmações com números: Equipes de engenharia Use folga para ser mais produtiva.

Como a folga otimiza todo o processo de engenharia de software

Nossas equipes de desenvolvimento são alguns dos usuários mais avançados do SLACB sobre Desenvolvimento de software, uma vez que todas as nossas equipes de desenvolvimento usam a plataforma. Mesmo assim, descobrimos novos exemplos de uso e aplicativos e integrações interessantes que estão usando equipamentos de software.

Vamos analisar alguns deles, organizados de acordo Para o palco no ciclo de desenvolvimento de software.

Plano

Slack ajuda os gerentes de produtos, os designers e os engenheiros a alcançar acordos s Obra o que eles vão criar e por quê.

Detalhes do canal slack
thread slack no formulário de comentários para usuários no

  • inicie todo o processo com um único canal para uma nova função ou produto

Talvez você possa chamá-lo # Função-New- App. Assim, todas as partes têm um local específico para definir o projeto, reunir as funções de funções, discutir alternativas e fazer chamadas importantes sobre a funcionalidade e experiência do usuário.

  • ao compartilhar documentos aqui, permita que todos Consulte

Slack é integrado à perfeição com os documentos do Google, para que todos os documentos sejam clicados para parceiros e novos membros.

  • Você tem algum questões? Envie-o para o canal

iniciar uma discussão e atingir acordos que todos possam ver. Agora há um registro permanente.

Código

Slack Ajuda Os desenvolvedores a organizar todas as partes de uma base de código grande, para que o desenvolvimento seja simplificado e a qualidade seja melhorada. Quando chega a hora do programa, a folga garante que o computador inteiro funcione junto:

  • um nome de desenvolvimento de canal # do canal é o ponto de partida para todos

Aqui você inclui as tarefas diárias de engenharia e controle de qualidade, solicitações de tração, combinações de código, revisões de design, reuniões diárias, discussões e muito mais.

  • Uma plataforma central para a li code

Slack é compatível com todos os métodos para ramificações, combinar, revisar e publicar código, independentemente de você estar se desenvolvendo em ramos de versões, ramos de função ou um professor combinado (ou “Mestre”).

git integrações (com o GitHub, Bitbucket ou o repositório de sua escolha) Envie todos os alertas de alterações para folga.

  • Um novo tipo de reunião

As reuniões são uma parte importante do desenvolvimento ágil, embora não seja necessário estar pessoalmente. As equipes de desenvolvedor usam folga para reuniões, todas as manhãs ou todas as semanas, e só têm reuniões síncronas ou chamadas de vídeo quando é realmente necessário (e para a maioria dos desenvolvedores, as melhores reuniões são canceladas).

Integras com software Tais como posteriormente enviar relatórios de resumo de folga automaticamente para que as equipes possam compartilhar objetivos e tarefas, analisar os parâmetros de negócios, publicar notas sobre a reunião e supervisionar o progresso e satisfação do equipamento.

integração de ponto de verificação na folga postando uma solicitação de tração no canal

incentiva a reutilização de códigos: a reutilização do código É um princípio básico de equipes eficazes de engenharia, mas se torna um desafio quando você tem centenas de desenvolvedores colaborando em muitos produtos diferentes. Antes de escrever um novo código, os desenvolvedores podem pesquisar todos os canais de folga para ver se alguém já criou algo semelhante. Próxima etapa: Pergunte os canais certos: “Alguém já tem um seletor de datas?” Não é necessário reverter a roda novamente.

Criar e compartilhar código via fragmentos: os fragmentos de código facilitam a tarefa de compartilhamento de código, arquivos de configuração e arquivos de log diretamente na folga. Seus colegas podem baixar os arquivos, consulte suas versões não formatadas e adicionar comentários.

folga em ação

espírito de extensibilidade

Slack não tenta fazer o trabalho de O software que sua equipe já usa, como PagerDuty, Github ou Jenkins.

Em vez disso, a folga simplesmente reúne todos os aplicativos diferentes e transmite as informações relevantes desses aplicativos, onde você está falando sobre o trabalho (e convida você a realizar ações nesses aplicativos diretamente da folga).

“Toda vez que vejo uma integração de folga, o ativo contribui com muita valor e nos permite salvar muitas etapas extras no processo”.

Essas integrações ajudam os desenvolvedores fazem o que amam: criar sistemas que simplesmente funcionam. Os exemplos que compartilhamos neste guia que não são nada mais do que que: exemplos. Existem muitas maneiras de usar folga como equipamento de software que o usam.

Teste

Os testes são integrados no processo de desenvolvimento e implementação atual. Slack oferece uma dinâmica Abordagem de teste colaborativa e transparente.

Integração contínua executa o pacote de teste em cada c Ombinação com cada fragmento de novo código. A folga otimiza o processo de muitas formas, grandes e pequenas:

  • uma função de teste de canal # coordena o controle de qualidade

permite a equipe ao controle de qualidade Colabore com desenvolvedores em um fórum aberto.

  • Integração com JIRA automatiza fluxos de teste de testes

Capturar incidentes da folga e incorporá-los ao processo automaticamente. Envie notificações personalizáveis de JIRA para os canais. Atribua rapidamente os incidentes a seus funcionários e tenha a certeza de que eles foram gravados no lugar certo.

Algumas equipes usam folga para transferir automaticamente as solicitações de alterações em um novo canal, que atualiza o mesmo tempo.

  • Crie um canal para cada cliente

com canais de teste dedicados para iOS, Android e Web.

Comando de barragonal jira na folga

trabalho com jenkins

muitas equipes usam Jenkins como seu servidor de integração contínua. Em pouco tempo, essas equipes inventaram novas maneiras de integrar o Jenkins com a folga para automatizar todos os tipos de tarefas de desenvolvimento de rotina.

Exemplo: Uma equipe de software criou uma integração de folga personalizada que inicia um servidor Jenkins na execução do Jenkins. Um grande pacote de teste toda vez que um desenvolvedor abre uma solicitação de tração.

Uma vez que os testes forem executados, as notificações são enviadas para o canal de folga correspondente. Se o código não passar no teste, uma notificação é enviada para o desenvolvedor.

Publicação

A entrega contínua sempre requer que publicações de código pequenas que sejam implementadas periodicamente. Slack ajuda as equipes de engenharia otimizam uma parte desse processo automatizando fluxos de trabalho e notificações.

Exemplo: Uma das nossas equipes escreveu um aplicativo chamado de implantação do assistente que é integrado às operações e comunicam o status do código em um canal. Comece com um estágio de “valor controlado” (uma versão pequena para detectar erros repentinos) e, em seguida, é implementado por 10%, 25%, 75% e 100% da comunidade de usuários.

Integração do assistente de implante em atualizações de teste de publicação de folga

Deploy assistente Alert A alerta os desenvolvedores e Canais adequados de folga como a implementação progride. Todo o processo está realizando os gerentes de implementação de serviços (engenheiros especializados que trabalham em turnos de três horas).

Se os desenvolvedores quiserem testar seu código no ambiente de teste, eles especificam na solicitação de combinação. A implementação irá parar no estágio de teste até um desenvolvedor de relatórios, no canal #implemations, que já tentou o código.

Algumas equipes de desenvolvimento usam comandos da barra diagonal (como / implementar_nameproduct_enSay) para acionar uma implementação diretamente de folga. Relatório de mensagens automatizadas se foram feitas corretamente e incluem um link para verificar (ou um botão para passá-lo para a produção).

Operações

Desenvolvedor Equipes usam folga para priorizar os troublemarkets, detectar incidentes em um tempo de registro e discutem os problemas.

  • Todos os problemas passam pelo canal #Triáje nome do produto

Isso inclui o serviço ao cliente de relatórios (ambos os manuais e Integrações com ferramentas como o Zendesk).

  • Integrações atender a todos os alertas em um só lugar

Em vez de esperar que os desenvolvedores revise os painéis de e-mail ou informativos, a folga se torna no local central onde todos os alertas recebem Resposta de profissionais adequados.

Coletando os eventos PagerDuty ou os bilhetes da Asana, e publicá-los nos canais relevantes, diminuem os tempos de resolução e criam um registro de priorização. Os membros da equipe podem colaborar ao ativar, visualizar, confirmar e resolver os incidentes diretamente da folga.

Similarmente, a folga pode recuperar todos os alertas, transações, servidores e telefones celulares da Web, e enviá-los para um Canal de folga para uma resposta mais rápida. Qualquer um que esteja curioso sobre a incidência pode entrar no canal e aprender sobre isso. Desta forma, os gerentes são impedidos de interromper os responsáveis por resolver incidentes para obter nações constantes em cada tópico. Ya todo está en el canal.

Los emojis y las reacciones emoji ayudan a priorizar los problemas ya activar flujos de trabajo

Las reacciones emoji son una forma eficaz de recopilar las respuestas de los membros da equipe; Além disso, eles são uma maneira de ativar fluxos de trabalho automatizados. Um aplicativo os coleta para adicioná-los, marcá-los e executar as ações pertinentes. Os incidentes abertos (com o emoji dos olhos, mas sem marca de seleção) são mostrados em PagerDuty.

Um canal automatizado #Decisões: Algumas equipes usam o emoji do martelo para indicar que uma decisão foi tomada. Depois, um bot envia todas estas decisões para o canal #Decision, no qual a administração pode ver o fluxo de decisões e membros da equipe pode pesquisar facilmente.

Criamos um bot que coleta essas marcas e relatamos Em um canal dedicado.

O lado humano

Há uma grande demanda por engenheiros de software. Para preservar seus profissionais talentosos, você deve oferecer a melhor experiência de funcionários possível. Ferramentas adequadas podem ser um elemento crucial para alcançá-lo: ajudar a reduzir os desentendimentos do trabalho, incentivar a transparência, automatizar tarefas de rotina e facilitar a colaboração entre equipamentos.

Converse com qualquer um dos equipamentos de engenharia de software usando a folga. Peça-lhes para mostrar como os canais, aplicativos e integrações usam. Então, pergunte a eles o que eles fariam sem eles.

Incorporação de novos desenvolvedores

Dois novos desenvolvedores se juntam à equipe. Como você acelera seu processo de incorporação?

Método anterior: muitas reuniões de incorporação e muitos encadeamentos de correio que devem tentar descriptografar.

Novo método: Convide-os ao canal # Desenvolvimento de desenvolvimento para revisar as publicações definidas com um pino, tais como:

  • especificações do produto
  • especificações técnicas
  • desenhos

Se você for google, onedrive ou dropbox documentam arquivos, eles sempre estarão atualizados. Eles também podem consultar todas as conversas e decisões anteriores, bem como as pessoas envolvidas. É assim que é incorporado em um novo desenvolvedor.

para usar engenheiros de software slack

Este foi o nosso passeio rápido sobre como a folga ajuda as equipes de software a otimizar, automatizar e acelerar o seu trabalho . Esperamos ter explicado bem os pontos mais importantes:

  • é algo novo: Slack ajuda os engenheiros a trabalhar por novas maneiras. É muito mais do que um aplicativo de mensagens.
  • é muito flexível: permite que suas equipes se adaptassem a canais, aplicativos e integrações de sabor que refletem seus hábitos de trabalho.
  • Ajuda a tomar Melhor vantagem do software existente: do GitHub para Bitbucket, passando por Jenkins, Jira, PagerDuty, Nova relíquia, Zendesk. Não importa qual seja o seu equipamento de desenvolvimento, produtos, controle de qualidade e uso do serviço ao cliente, você usará essas ferramentas de forma mais eficaz, colaborando em folga. Atualmente, existem mais de 2200 aplicativos no diretório de nossos aplicativos.
  • Adiciona valor a todas as etapas do ciclo de desenvolvimento: desde o planejamento para o desenvolvimento, passando pela aplicação de testes, implementação e operação.

para engenheiros de software amor: isso significa que eles adotam a ferramenta e estendem seu uso ao longo do tempo.

“temos O que gostamos de chamar de uma ‘canalização de entrega do começo ao fim’, que começa com o código-fonte e viaja todo o processo para a implementação de produção. E agora integramos folga em todos os principais estágios desse processo “.

Se você quiser saber mais, programe uma demonstração ou perguntar a um de nossos desenvolvedores para fazer um tour da nossa instância de folga. Estamos orgulhosos dela.

Deixe uma resposta

O seu endereço de email não será publicado. Campos obrigatórios marcados com *