Skip to main content

In this article

Cultura de engenharia na Snyk: os valores que apoiam e impulsionam nossas equipes

Escrito por
Headshot of Sergey Vasilkov

Sergey Vasilkov

8 de maio de 2023

0 minutos de leitura

A Snyk sempre teve uma cultura incrível e muito bem definida. À medida que crescemos, queremos compartilhar e disseminar nossos valores fundamentais de forma intencional, abrindo espaço para que diferentes departamentos e divisões também contribuam. Isso ajuda a Snyk a preservar o que faz dela a Snyk e também facilita a integração de novas pessoas à empresa.

A cultura de engenharia se apoia nos valores da empresa, acrescentando crenças e valores que influenciam as decisões e ações dos nossos engenheiros de software no trabalho. Nesse contexto, podemos transformar todas as motivações, normas, boas práticas, escolhas de ferramentas e assim por diante em uma cultura de engenharia bem definida. Isso nos ajuda a preservar e disseminar essa cultura entre todos os nossos colegas engenheiros.

Queremos que a cultura de engenharia da Snyk oriente a forma como nossos engenheiros de software abordam a resolução de problemas, a inovação e a colaboração. Ela ajuda a criar um ambiente que apoia os engenheiros para que alcancem todo o seu potencial e impulsiona o sucesso da organização como um todo. Na Snyk, acreditamos que nossa cultura de engenharia é um aspecto fundamental dos valores gerais da empresa, que se baseiam em nossos valores e prioridades e nos ajudam a atrair e reter os melhores talentos.

Além disso, acreditamos que uma cultura de engenharia bem documentada nos ajuda a trabalhar com mais eficiência ao:

  • Evidenciar inconsistências e promover as conversas necessárias.

  • Tornar a cultura mais previsível.

  • Dar autonomia às pessoas para agir (se estou alinhado à cultura e tenho boas intenções, não vou me meter em grandes problemas).

  • Fazer com que os engenheiros remem na mesma direção.

  • Reduzir atritos entre as pessoas.

  • Atrair candidatos alinhados à cultura (e afastar quem não está).

  • Ajudar na integração de novos engenheiros e no estabelecimento de valores e expectativas compartilhados.

Como definimos a cultura de engenharia da Snyk

A Snyk tem uma cultura forte e bem definida em toda a organização. Quando conversamos, usamos nossos valores para nos alinhar e direcionar nossa atenção.

  • One Team - Celebramos a força da nossa comunidade e colaboramos com entusiasmo e propósito para realizar grandes coisas.

  • Care Deeply - Temos orgulho de liderar com paixão uns pelos outros, pelos nossos clientes, pelo planeta e pelas comunidades onde vivemos e trabalhamos.

  • Ship It - Trabalhamos com agilidade e abraçamos a inovação contínua para gerar resultados para nossos clientes, aprendendo, iterando e melhorando sempre.

  • Think Bigger - Celebramos a força da nossa comunidade e colaboramos com entusiasmo e propósito para realizar grandes coisas.

  • Learn Always - Acreditamos que sempre há algo novo a aprender e que o aprendizado é essencial para nosso crescimento, como pessoas e como empresa. Nunca pare de aprender.

Cada um desses valores fundamentais pode ser aplicado em diferentes situações. Percebemos que nos concentrar neles nos ajuda a ter sucesso. Mas como podemos ampliar esses valores e ajudar todos os nossos engenheiros a estarem alinhados e a terem sucesso?

Reunimos líderes de todas as áreas de Engenharia, apresentamos nossos valores e conversamos sobre tudo o que torna a engenharia incrível na Snyk. Ao alinhar nossos valores fundamentais às práticas de Engenharia, criamos o documento Cultura de Engenharia da Snyk, que serve de base para este artigo.

One Team

Celebramos a força da nossa comunidade e colaboramos com entusiasmo e propósito para realizar grandes coisas.

Exageramos na comunicação

Como somos uma empresa distribuída, compartilhamos com detalhes nosso progresso, processos, problemas e muito mais. Isso inclui comunicação, documentação e boas práticas para compartilhar informações. Por exemplo:

  • Compartilhamos regularmente o andamento e as atualizações dos projetos, sem que ninguém precise pedir.

  • Apresentamos novos recursos e aqueles ainda em desenvolvimento.

  • Gravamos e compartilhamos vídeos regularmente para que todos possam assistir.

  • Temos um grupo de documentação técnica que promove boas práticas para produzir documentação e conteúdo técnico de qualidade.

Damos e recebemos feedback regularmente

Incentivamos as pessoas a fazer revisões com frequência e a pedir feedback aos colegas e à liderança. Também sabemos como aplicar o feedback e tirar proveito dele. Feedback é um presente, e sempre o oferecemos e recebemos com isso em mente. Para incentivar essa prática, fazemos avaliações anuais, trimestrais e pontuais, conversas individuais privadas sobre feedback e mantemos um canal público de reconhecimento no Slack.

Nunca trabalhamos sozinhos

Na tomada de decisões, na resolução de tarefas simples ou complexas e no tratamento de incidentes, sempre temos alguém para nos apoiar. As pessoas não têm medo nem vergonha de pedir a colaboração dos outros. Priorizamos a colaboração e incentivamos todos a se apoiar no nosso valor One Team.

Por exemplo, muitas equipes praticam programação em dupla, programação em modo colaborativo ou programação em grupo para se apoiar, manter o foco e encontrar as melhores soluções.

Nossa cultura não busca culpados

Todos fazem parte do que fazemos, e a forma como respondemos, crescemos e aprendemos é mais importante do que investigar quem foi o responsável. Ao discutir problemas, nosso foco está sempre em melhorar e em como lidar com eles no futuro.

Fazemos questão de reconhecer o trabalho das outras pessoas

Sempre expressamos nosso reconhecimento nos canais públicos de comunicação, inclusive em um canal dedicado a isso no Slack: #appreciation.

Care deeply

Temos orgulho de liderar com paixão uns pelos outros, pelos nossos clientes, pelo planeta e pelas comunidades onde vivemos e trabalhamos.

Consideramos os requisitos de qualidade e os não funcionais

Ao gerar valor para os clientes, levamos em conta até mesmo requisitos implícitos, como usabilidade, confiabilidade, testabilidade, eficiência e prontidão geral para produção. Nós:

  • Resolvemos os problemas em vez de escondê-los.

  • Cobrimos os recursos com uma quantidade adequada de testes.

  • Disponibilizamos as métricas, os painéis e os alertas adequados.

  • Usamos internamente os produtos e recursos que desenvolvemos (ou seja, praticamos dogfooding).

Consideramos as implicações éticas do nosso trabalho

Ao realizar nosso trabalho, temos consciência das nossas responsabilidades éticas perante a sociedade e buscamos incorporar considerações éticas aos requisitos.

  • Consideramos requisitos que geram valor para comunidades em situação de vulnerabilidade, como os requisitos de acessibilidade na experiência do usuário.

  • Tratamos os dados de acordo com as regulamentações aplicáveis e levamos a governança de dados a sério.

  • Não usamos padrões de design enganosos, como aqueles que pressionam as pessoas a se inscrever em algo ou as induzem ao erro.

  • Os engenheiros têm a responsabilidade de manifestar preocupações sobre possíveis violações éticas e devem se sentir à vontade para fazer isso sem medo de represálias ou retaliação.

Pensamos primeiro nos clientes

Todos os problemas dos clientes importam, e apoiar nossos clientes e as equipes que estão na linha de frente é uma tarefa essencial para nossas equipes.

  • Os engenheiros participam de chamadas de depuração com clientes para agilizar as correções.

  • Mantemos uma visão geral clara dos problemas e definimos prioridades para eles junto com o trabalho em novos recursos.

  • Fazemos pesquisas com usuários para todos os novos recursos e orientamos nosso design com base nas necessidades e nos casos de uso que eles relatam diretamente.

Incentivamos a conexão e a socialização, mas sem forçar ninguém

Ajudamos quem gosta de interagir a ter mais oportunidades para isso. Mas não obrigamos ninguém a socializar, pois sabemos que nem todo mundo quer. Para facilitar, oferecemos canais divertidos no Slack, canais de donut no Slack, momentos descontraídos em equipe, eventos sociais, happy hours e muito mais, presencialmente e on-line.

Levamos em conta que cada pessoa vive um dia e uma experiência diferentes

A Snyk sabe trabalhar em diferentes fusos horários e tem experiência com equipes distribuídas. Respeitamos a agenda das pessoas (cuidados com os filhos, consultas médicas etc.) e seus fusos horários (sem reuniões ou expectativa de resposta no Slack), além de oferecer uma sessão de aprendizado chamada Fusos horários para gestores e pessoas lideradas.

Tratamos diversidade, equidade e inclusão (DEI) como princípios fundamentais

Estamos fortalecendo a cultura inclusiva da Snyk, acolhendo as diferenças, mantendo nosso senso de união e dando a cada pessoa autonomia para ser autêntica no trabalho. Oferecemos vários grupos de recursos para funcionários da Snyk (SRGs), voltados a diferentes comunidades marginalizadas, e temos a iniciativa interna Mosaic@Snyk para fortalecer nossa cultura inclusiva.

Ship It

Trabalhamos com agilidade e abraçamos a inovação contínua para gerar resultados para nossos clientes, aprendendo, iterando e melhorando sempre.

Trabalhamos com entregas incrementais de ponta a ponta

Todo trabalho que fazemos começa com uma entrega clara em mente, centrada no usuário. Essas entregas devem abranger toda a pilha e ajudar a reduzir os riscos do trabalho futuro. Adotamos o desenvolvimento iterativo para receber feedback desde o início.

Leituras recomendadas: Marshmallow Challenge, Innovation Games: Creating Breakthrough Products Through Collaborative Play, Mark Finnern | Any significantly advanced work is indistinguishable from play, Visible Architectures, How Big Tech Runs Tech Projects and the Curious Absence of Scrum

Nossas equipes têm liberdade para escolher seus próprios processos

Escolha o processo que ajuda você a entregar: XP, Kanban, Shape Up, Scrum — fica a seu critério. Ao mesmo tempo, temos liberdade dentro de uma estrutura para adaptá-lo às necessidades da equipe. Ainda assim, a equipe deve estar alinhada, até certo ponto, com o grupo. As equipes de um mesmo grupo devem conseguir planejar, estabelecer dependências e se comunicar sobre objetivos de curto prazo em conjunto.

Por exemplo, algumas equipes seguem XP (por exemplo, sem sprints nem estimativas de histórias); outro grupo usa Shape Up; e a equipe de Infra usa o modelo 1-pager/6-pager para comunicação e tomada de decisões.

Nossas equipes seguem as “definições de pronto” para acompanhar quando o trabalho está realmente concluído

Concluir o trabalho vai além de colocá-lo em produção: ele precisa estar nas mãos de usuários e partes interessadas realmente engajados. Estamos sempre discutindo o que significa “definição de pronto” nos canais internos.

Valorizamos muito a experiência do desenvolvedor (DevEx) e criamos ou adquirimos ferramentas para apoiar você

Estamos sempre buscando maneiras melhores de trabalhar. Isso significa que novas ferramentas podem ser sugeridas, testadas e validadas para fazer parte do nosso conjunto padrão de ferramentas disponíveis. Por exemplo, Polaris, Jira e CircleCI estão disponíveis para nossos engenheiros. Também temos canais no Slack para dar suporte a essas ferramentas e incluir novas opções.

Think Bigger

Somos movidos pela ambição de realizar o extraordinário e superar limites para criar soluções capazes de mudar o mundo.

Automatizamos

Não desperdiçamos tempo e esforço com processos rotineiros, etapas repetitivas ou operações demoradas.

Aprimoramos os processos

Não mantemos algo só porque sempre foi feito assim. Adaptamos e corrigimos os processos para que funcionem da melhor forma para a empresa.

Pensamos além dos limites da equipe

Consideramos e evidenciamos as dependências e fazemos parte de um grupo, não apenas de uma equipe. Compartilhamos nosso progresso com os níveis acima, coletamos feedback em todo o grupo e incentivamos grandes ideias (por exemplo: “Vamos mudar a forma como X funciona”). Para promover a colaboração entre equipes de um jeito divertido, organizamos hackathons e outros eventos para reunir todo mundo.

Projetamos para o futuro e desenvolvemos para o presente

Buscamos equilibrar Think Bigger e Ship It: pensamos grande na arquitetura e no design, concentramos o trabalho em entregas incrementais de ponta a ponta e ampliamos o escopo durante a implementação.

Learn Always

Adotamos uma postura aberta e curiosa, aprendendo uns com os outros e buscando sempre maneiras de crescer.

Incentivamos e praticamos mentoria e orientação

Uma cultura sólida de mentoria entre colegas é uma vantagem competitiva para fazer uma organização crescer rapidamente. Para apoiá-la, temos os canais #miyagi-academy e #mentorship-* e gostamos tanto de pedir quanto de compartilhar conhecimento. Também oferecemos uma sessão de aprendizado sobre Como ser um educador eficaz.

Oferecemos um programa de intercâmbio entre funcionários da Snyk

Para evoluirmos a cada iteração, lançamos o programa Employee Exchange. Ele permite que profissionais de diferentes equipes de engenharia troquem de equipe durante um sprint para aprender novas tecnologias, conhecer novos processos e nos aprimorarmos como um só time.

Incentivamos os Snykers a usar seus recursos de aprendizagem

Valorizamos o conhecimento, o aprendizado e o desenvolvimento pessoal. A Snyk nos incentiva a investir mais em aprendizado, recomendando que reservemos horários na agenda para estudar (e respeitemos esses períodos), oferecendo um orçamento anual para educação e acesso a recursos de aprendizagem como Learnerbly, Udemy, O’Reilly e outros.

Fazemos retrospectivas regularmente e aprendemos com nossas experiências

Embora a maioria das equipes faça retrospectivas de sprints e projetos, também realizamos retrospectivas de novos processos e iniciativas ainda no início, para identificar o que pode ser mudado, corrigido ou aprimorado. Os processos de revisão e hackathon são todos sobre nós.

Fazemos análises de incidentes

Realizamos análises e retrospectivas após incidentes. Isso nos ajuda a melhorar de duas formas: como lidamos com os incidentes e o que podemos fazer para evitar que algo semelhante aconteça no futuro. Para isso, temos um grupo de especialistas em incidentes e um projeto dedicado a incidentes graves.

Participamos da Snyk School

A Snyk School é um fórum envolvente e interativo, conduzido por Snykers, que oferece a você a oportunidade de aprender mais sobre temas essenciais para nosso aprendizado e crescimento.

Apresentamos nosso trabalho

Gostamos de compartilhar mudanças técnicas demonstrando-as em um software funcional. Compartilhamos nossos resultados e avanços em diferentes reuniões, voltadas a públicos distintos: colegas, suporte e equipes de negócios. Isso inclui demonstrações quinzenais para toda a empresa e chamadas mensais de demonstração.

Definimos funções de engenharia

Funções bem definidas contribuem para o crescimento profissional e pessoal ao oferecer um caminho de carreira. Assim, profissionais de engenharia conseguem entender em que etapa estão e quais aspectos precisam desenvolver.

Conclusões

Agora que registramos por escrito todas as nossas convicções e práticas, podemos compartilhá-las com mais facilidade com nossos talentosos profissionais de engenharia espalhados pelo mundo. Podemos aprimorá-las à medida que aprendemos (Aprender sempre!) e ajudar as equipes de engenharia a tomar as melhores decisões possíveis. Decisões alinhadas aos nossos valores e à nossa cultura de engenharia raramente nos levam pelo caminho errado!

A cultura pode ser difícil de definir à primeira vista. É algo que você internaliza e vive. Quando você dá um passo atrás e observa, consegue perceber os valores que orientam sua forma de trabalhar e lidar com problemas. Desafiamos você a tentar! Quais valores você considera importantes para ajudar suas equipes a alcançar o melhor desempenho?

Publicado em: