Ex-VP de Data Science da Netflix descreve as vantagens de trabalhar com profissionais que desempenhem funções diversas, ao invés de especialistas. Dentre elas, ganhos de aprendizado e redução de custos de coordenação e tempo de espera.
Eric Colson, diretor de algoritmos da Stitch Fix e ex-VP de Data Science da Netflix, escreveu na Harvard Business Review sobre as vantagens de trabalhar com profissionais generalistas em projetos de Data Science.
Colson explica sua posição a partir do livro “A riqueza das Nações”. Na obra, Adam Smith demonstra como a divisão do trabalho é a principal fonte de ganhos de produtividade, por meio do claro exemplo da linha de montagem de uma fábrica de alfinetes, na qual uma pessoa estica o fio metálico, outra o deixa reto, uma terceira corta, uma quarta aponta e uma quinta afia. Com a especialização orientada para uma função específica, cada trabalhador se torna altamente qualificado em uma tarefa limitada, o que leva a eficiência do processo. O resultado por trabalhador aumenta muito e a fábrica se torna extremamente eficiente na produção de alfinetes.
Essa divisão de trabalho por função está tão arraigada que até hoje organizamos nossas equipes dessa maneira e Data Science não é uma exceção. Recursos de negócios que utilizam algoritmos de ponta a ponta requerem muitas funções e, portanto, as empresas geralmente criam equipes de especialistas: pesquisadores, engenheiros de dados, engenheiros de Machine Learning, estatísticos e por aí vai. O trabalho desses especialistas é coordenado por um gerente de produto e as funções são distribuídas de uma maneira semelhante à fábrica de alfinetes. Uma pessoa obtém os dados, outra modela, um terceiro implementa, um quarto mensura e assim por diante. .
No entanto, equipes de Data Science não devem ser otimizadas com o mero intuito de obter ganhos de produtividade. Isso acontece quando se sabe o que está sendo produzido – como alfinetes – e o que se busca é eficiência incremental. O objetivo de uma linha de montagem é a execução. Isso se dá com alfinetes ou qualquer produto/serviço nos quais as necessidades envolvidas na produção contemplem todos os aspectos do produto e seu comportamento. O papel dos trabalhadores é, então, atender essas necessidades da maneira mais eficiente possível.
Mas o objetivo de Data Science não é executar. Ao invés disso, o objetivo é aprender e desenvolver novas capacidades profundas de negócios. Não é possível projetar antecipadamente algoritmos como sistemas de recomendação, engajamento do cliente, classificação de preferências, correspondência de tamanho, sistemas de design de moda, otimizadores de logística, detecção de tendências sazonais e muitos outros. Eles precisam ser aprendidos. Não há esquemas a serem seguidos, pois esses são novos recursos, com incertezas inerentes. Modelos aprendem por meio de experimentação, tentativa e erro, repetição. Com alfinetes, o aprendizado e o design são resolvidos antecipadamente. Com Data Science, o aprendizado se dá na medida em que se avança, não antes da partida.
Na fábrica de alfinetes, não é esperado que os trabalhadores improvisem em nenhum aspecto do produto, a não ser que seja para produzi-lo com mais eficiência. Nesse caso, a organização por função faz sentido, uma vez que a especialização de tarefas leva a um processo eficiente e uma produção consistente, sem variabilidade no produto final. Mas quando o produto ainda está evoluindo e o objetivo é aprender, a especialização dificulta esses objetivos de várias maneiras:
1. Aumenta os custos de coordenação. Esses são os custos acumulados por conta de tempo gasto na comunicação, discussão, justificação e priorização do trabalho a ser feito. Esses custos são escalonados de acordo com o número de pessoas envolvidas na operação. Quando os cientistas de dados são organizados por função, os custos de coordenação aumentam com os diferentes especialistas necessários a cada etapa, mudança ou transferência de trabalho.
Por exemplo, os especialistas em modelagem estatística que desejarem experimentar novos recursos terão que coordenar com os engenheiros de dados um incremento do dataset sempre que quiserem tentar algo novo. Da mesma forma, treinar um novo modelo significa que o estatístico precisará de alguém para coordenar a implementação. Os custos de coordenação atuam como um imposto sobre as repetições necessárias para projetos de Data Science (iterações), o que os torna mais difíceis, caros e menos exploratórios. Tudo isso dificulta os aprendizados da máquina.
2. Agrava o tempo de espera. Ainda mais nefasto do que os custos de coordenação é o tempo gasto durante o trabalho. Embora os custos de coordenação normalmente possam ser medidos em horas – o tempo necessário para realizar reuniões, discussões, revisões de projeto –, os tempos de espera costumam ser medidos em dias, semanas ou até meses. Cronogramas de profissionais especializados por função são difíceis de alinhar, pois cada especialista fica sujeito a ser alocado em várias iniciativas. Uma reunião de uma hora para discutir mudanças pode levar semanas para ser realizada.
Depois disso, uma vez que as mudanças do projeto estejam alinhadas, o trabalho em si também precisa ser programado segundo vários outros projetos que disputam o tempo dos especialistas. Alterações de código ou pesquisas que seriam concluídas em poucas horas podem ser interrompidas por muito tempo, até que os profissionais estejam disponíveis, o que faz com que a repetição e o aprendizado definhem.
3. Restringe o contexto mais amplo. A divisão do trabalho pode limitar o aprendizado ao recompensar as pessoas por permanecerem no papel para qual foram designadas. Por exemplo, um pesquisador especializado em otimizar algoritmos, relegado a permanecer dentro de sua função, concentrará sua energia em experimentar diferentes tipos de algoritmos: regressão, rede neural, floresta aleatória (random forest) e assim por diante. No entanto, embora boas escolhas de algoritmos possam levar a melhorias incrementais, há outras atividades que geralmente levam a maiores ganhos, como a integração de novas fontes de dados.
Da mesma forma, esse pesquisador poderia desenvolver um modelo que esgota todo o poder explicativo de seus dados. Porém, talvez a maior oportunidade estivesse na mudança da função objetiva ou na diminuição de certas restrições. Tudo isso é difícil de ser observado ou executado quando a função de trabalho é limitada. Um cientista especializado em otimizar algoritmos tem menor probabilidade de buscar qualquer outra coisa, mesmo quando que ela possa trazer benefícios desproporcionalmente maiores.
Alguns sintomas são aparentes quando as equipes de Data Science trabalham como fábricas de alfinetes. Por exemplo, em atualizações de status que funcionam como bloqueadores, tais como “aguardando alterações no pipeline de dados” e “aguardando recursos da engenharia de Machine Learning”. No entanto, Eric Colson afirma que o impacto mais prejudicial está naquilo que não é evidente, porque não é possível lamentar sobre o que ainda não foi aprendido. A execução perfeita e a complacência que acompanham a eficiência do processo podem mascarar o delicado fato de que a organização não tem consciência do aprendizado valioso que está perdendo.
Qual é a solução?
A solução é, evidentemente, livrar-se da fábrica de alfinetes. Para incentivar o aprendizado e a iteração, os cargos de Data Science precisam se tornar mais generalistas e detentores de responsabilidades amplas. Ou seja, os cientistas de dados precisam ser organizados de maneira que eles sejam otimizados para aprender.
Isso significa contratar cientistas de dados completos (ou full stack), que possam executar funções diversas: concepção, modelagem, implementação, mensuração. Isso não sugere que menos pessoas sejam contratadas. Ao invés disso, a sugestão é que a organização eficiente melhora o alinhamento entre ganhos de aprendizado versus eficiência. Por exemplo, digamos que uma equipe de três pessoas esteja criando três recursos de negócios. Na fábrica de alfinetes, cada especialista será dedicado a um terço de cada recurso. No modelo full stack, cada profissional será dedicado integralmente a somente um projeto, o que aumentará a escala e o aprendizado.
Com menos pessoas no circuito, os custos de coordenação despencam. O generalista movimenta-se de forma fluida entre funções, adiciona mais dados no pipeline, testa novos recursos no modelo, implementa novas versões para mensuração de causalidade e repete as etapas na velocidade em que tem novas ideias. É claro que o generalista executa essas diferentes funções em seqüência, e não em paralelo – afinal, ele é apenas uma pessoa. No entanto, o trabalho normalmente leva apenas uma fração do tempo de espera que seria necessário até que outro especialista fosse disponibilizado. Logo, o tempo de iteração diminui.
Esse generalista pode não ser tão perito quanto alguém que é especialista em apenas uma função. Mas a busca não é por excelência funcional ou pequenas melhorias incrementais. No lugar disso, procura-se aprender e descobrir recursos completamente novos, que tenham verdadeiro impacto nos negócios. Com uma visão ampla do contexto geral, esse profissional vê oportunidades que um especialista limitado não conseguiria. Ele tem mais ideias e tenta mais. Ele também falha mais. No entanto, o custo do fracasso é baixo e os benefícios do aprendizado são altos.
Desafios
Há considerações importantes que podem tornar a abordagem generalista mais ou menos sustentável em algumas empresas. Esse processo de iteração pressupõe baixo custo de tentativa e erro. Se o custo do erro é alto, talvez não seja a melhor opção. Por exemplo, em aplicações médicas ou fábricas. Isso também ocorre com organizações que trabalham com quantidades massivas de dados (petabytes ou exabytes), onde a especialização em engenharia de dados pode ser justificada.
Da mesma maneira, se manter uma capacidade comercial disponível é mais importante do que melhorá-la, a excelência funcional pode superar a vantagem do aprendizado. Por fim, o modelo de Data Science full stack depende de grandes profissionais. Eles não são unicórnios. Eles podem ser encontrados e treinados. Mas estão em alta demanda e exigem remuneração competitiva, valores organizacionais fortes e um trabalho interessante para atraí-los e retê-los. É preciso certificar-se de que a cultura da empresa pode sustentar tudo isso.
Mesmo com todos os desafios, Eric Colson acredita que esse modelo é o melhor ponto de partida. Ele sugere que o trabalho deve começar com essa abordagem e, se for claramente necessário, então deve ser feito, conscientemente, o movimento em direção a uma divisão de trabalho baseada em funções.
Por fim
Há ainda outras desvantagens na especialização por função. Ela pode levar à perda de prestação de contas e de paixão dos trabalhadores. O próprio Adam Smith critica a divisão do trabalho, pois sugere que ela leva ao obscurecimento do talento – os trabalhadores se tornam ignorantes e isolados, pois seus papéis ficam confinados a poucas tarefas repetitivas. Embora a especialização possa fornecer eficiências de processo, é menos provável que inspire os trabalhadores.
Em contrapartida, os cargos generalistas fornecem todas as características que impulsionam a satisfação no trabalho: autonomia, domínio e propósito. Autonomia, pois não há dependência de outra pessoa para o sucesso. Domínio, porque os profissionais conhecem os recursos de negócios de ponta a ponta. E propósito, pois há uma conexão direta com o impacto nos negócios. Quando as pessoas são apaixonadas por seu trabalho e causam grande impacto na empresa, o resto se encaixa naturalmente.