Afonso Acauan (*)
Há 4 anos, quando trabalhava para a Bain & Company, entendi que a transformação digital tinha vindo para ficar. Se quisesse realizar meu sonho de criar algo transformador de verdade, precisaria aprender mais sobre tecnologia.
Não muito tempo depois, vim para Yaman, uma empresa jovem, em franco crescimento e com a qual compartilhava a determinação de transformar a vida das pessoas através da tecnologia.
Desde então, meu propósito se tornou um só: ajudar empresas brasileiras a vencerem na nova economia contribuindo com a transformação do Brasil e da vida dos brasileiros. Este propósito, mais do que nunca, é relevante, pois as empresas que vencerão são aquelas que verdadeiramente colocam a experiência dos clientes no centro e são competentes na materialização de seus insights e ideias em experiências digitais.
Diariamente faço reuniões para apoiar os principais líderes de seus setores no Brasil e vejo que as empresas vivem na busca de se tornarem disruptivas, como Uber, Airbnb, Netflix e Spotify, e querem competir com gigantes como Amazon e Facebook. Muitas falham porque não conseguiram construir o melhor software e, consequentemente, entregar a melhor experiência para o mercado, que é a receita dos vencedores.
Infelizmente, muitas delas nunca enxergaram o desenvolvimento de software como uma competência crítica e fundamental para seu core business. Elas contam com pacotes de programas vendidos por fornecedores de software independentes e contratam consultores para customizá-los. O grande problema está no fato de que os programas empacotados não podem ser muito customizados.
Além disso, o cuidado com a qualidade de software é muitas vezes negligenciado em troca de uma economia no curto prazo, que acaba se revelando contraproducente. Em diversas oportunidades percebo a seguinte distribuição do foco esperado pelas empresas: 80% custo, 20% expertise e experiência do time de consultores. Só que tecnologia não é código; é sobre as pessoas que criam o código e garantem sua qualidade.
Portanto, esta visão míope impede que estas empresas consigam ser competitivas frente àquelas que realmente focam na qualidade da experiência digital entregue a seus clientes, da ideia até a execução. Utilizar soluções de prateleira funciona para sistemas de back-office, como marketing e finanças, não para as áreas do negócio voltadas aos clientes. Como você pode se diferenciar e obter vantagem competitiva se estiver usando a mesma solução que todos os outros? Nesta parte do seu negócio, sua escolha não é “build or buy” mas “build or die”!
As empresas têm que construir seus próprios times de desenvolvimento e criar uma cultura que transforme seus desenvolvedores em “resolvedores” de problemas, criativos e focados na qualidade do que estão programando.
Por isso, defendo um processo de reskilling do time de tecnologia nas empresas. Estas pessoas estão entre os recursos mais valiosos e, geralmente, inexplorados. São valiosos por conhecerem profundamente o negócio, bem como os sistemas “legados” existentes.
No entanto, é importante também recrutar e reter engenheiros de desenvolvimento e qualidade de software de primeira linha. Você já parou para pensar como uma empresa não-tecnológica atrai grandes profissionais da área? A resposta é mais simples do que parece. Basta mudar a maneira como vê os desenvolvedores e engenheiros de desenvolvimento e qualidade de software. Os melhores profissionais não vão trabalhar para uma empresa que os trata como “macacos de código” – presos em algum espaço, produzindo sob comando.
Os principais desenvolvedores e engenheiros de qualidade de software querem participar da resolução de problemas estratégicos e na tomada de decisões. Dê-lhes voz na definição do futuro da empresa e autonomia para serem criativos. Eles precisam estar no processo desde a concepção do produto ou funcionalidade e definição de requisitos funcionais e não funcionais para aquele sistema. Elevar o papel dos desenvolvedores envolve uma mudança nem sempre sutil de poder e às vezes gera reação em áreas da organização que se sentem ameaçadas pela crescente influência dos tecnólogos.
Para isso funcionar, é necessário mudar a mentalidade de toda a organização. E o compromisso deve começar no topo. Empresas tradicionais do mercado nacional geralmente querem responder à competição digital adotando metodologias como a Ágil e colocam milhares de pessoas em treinamento. Ou criam “centros de inovação” apartados da empresa controladora, adquirem startups na esperança de disseminar seu DNA por toda a organização ou terceirizam o desenvolvimento de aplicativos para empresas de consultoria.
A maioria delas descobre que nada realmente mudou – empresas inovadoras progridem mais rápido pela simples razão que construir software é a maior parte do DNA delas. Isto pode piorar se o processo de terceirização dos aplicativos seguir a regra de foco no custo. Corrigir tais problemas depende de uma leitura mais realista do cenário competitivo em que tais empresas se inserem no que diz respeito à transformação digital e à necessidade de software.
Atualmente, desenvolver softwares que permitam experiências incríveis se tornou bem mais fácil do que há dez anos. Por exemplo: o advento de microsserviços – pequenos programas que fornecem recursos específicos, como comunicação e cobrança – viabilizou a entrega de sistemas de forma muito mais ágil porque não há necessidade de se construir algo do zero.
Adicionalmente, existem processos e ferramentas de garantia de qualidade automatizada que, se aplicados desde o início do processo de desenvolvimento, cortam em até 10 vezes o gasto com retrabalho para correções de bugs e quintuplicam o tempo de entrega de um software. Veja 4 princípios para ajudar a adotar uma mentalidade de software:
• Foque em problemas, não tarefas – Tradicionalmente, a área de negócios apresenta ideias e as entregam aos desenvolvedores para transformá-las em código. Deixe os desenvolvedores contribuírem para solução de problemas de negócio. Quem sabe melhor como aplicar software ao seu negócio do que pessoas que entendem profundamente de tecnologia?
• Qualidade é inegociável – De nada adianta ter uma ideia perfeita para se diferenciar dos seus competidores e não conseguir executá-la com agilidade e qualidade. Você como cliente gosta de utilizar um aplicativo/site que não funciona bem? Que fica fora do ar quando mais precisa usar? Com problemas de vazamento de dados ou sendo canal aberto para crimes cibernéticos? Se você não priorizar isso, alguma startup vai fazê-lo e você perderá a batalha.
• Adote a cultura de experimentação – Experimentar é pré-requisito para inovação. Crie um ambiente onde os desenvolvedores executam muitos experimentos e onde o fracasso é celebrado em vez de punido. Promova sessões de aprendizado e faça autópsias sem culpa para descobrir por que um experimento falhou e o que você pode aprender com isso.
• Seja obcecado por velocidade e adote modelos de entrega ágil: As startups implementam novos códigos todos os dias. Não dá mais para gastar meses desenvolvendo programas cheios de bugs. Procure sempre formas de reduzir o tempo que leva entre uma “grande ideia” e um código de produção funcional. Trabalhe com pequenas entregas, testando-as com seus clientes, colhendo feedbacks rápidos e implementando ajustes no caminho.
(*) – É CMO e sócio-diretor da Yaman Tecnologia – uma das principais consultorias de engenharia e qualidade de software e segurança cibernética do Brasil, especializada no uso da filosofia Lean (www.yaman.com.br).