Consultei mais de 100 empresas nos últimos 3 anos, e aqui estão algumas das minhas recomendações pessoais favoritas: (Você ficaria chocado com quantos desenvolvedores fora da bolha online precisam de ajuda.) 1. Algumas equipas não usam nenhum sistema de versionamento de código. Sei que isso é difícil de acreditar, mas tenho testemunhas. Honestamente, este não é comum, mas já vi com os meus próprios olhos. 2. A cultura de testes é rara. Uma maneira fácil de melhorar o que uma equipa faz é ensiná-los a escrever testes automatizados de unidade e integração. 3. As folhas de cálculo são a solução mais popular que vi na prática. Por exemplo, uma das minhas recomendações mais comuns é usar o MLFlow para rastrear experimentos e versionar modelos. 4. A maioria das equipas sempre quer implementar a solução tecnicamente correta para um problema. Fiquei muito bom em identificar soluções que atendem a muitas mais restrições (como orçamento, cronograma, capacidade da equipa, percepção, etc.) Chamo isso de "definição do problema", e é de grande ajuda para as empresas. 5. Sempre recomendo contêineres de desenvolvimento para aquelas equipas onde cada pessoa usa um sistema operativo diferente e tem dificuldades com configuração e portabilidade. 6. Tente escalar uma aplicação sem gastar tempo em observabilidade e rastreabilidade. Na maioria das vezes, isso é tão fácil quanto registar a informação certa. Às vezes, você pode gastar tempo configurando as ferramentas certas para uma observabilidade mais séria. 7. Em sistemas de aprendizado de máquina (90% dos projetos com os quais lido), a monitorização é sempre uma reflexão tardia. Fiquei bastante bom em ajudar equipas a integrar-se com a Evidently AI. 8. Passo muito tempo ajudando equipas a construir fluxos de trabalho de ponta a ponta, repetíveis e automatizáveis, com espaços em branco que podem completar mais tarde. Por exemplo, construir um pipeline de treinamento que começa com o processamento de dados e termina com a implementação do modelo. Muitas práticas diferentes sempre surgem com diferentes equipas: • Como implementar CI/CD • Como versionar conjuntos de dados • Como saber o que "pronto" significa • Como gerenciar segredos adequadamente • Como gerenciar configurações • Como configurar logs • Como testar em produção (testes a/b, implementações em sombra, etc) • ... As pessoas que trabalham para grandes empresas de tecnologia estão anos à frente de todos os outros, mas o mercado para esse conhecimento fora das grandes empresas de tecnologia é enorme.
Santiago
Santiago26/12, 21:45
Conheci um cara que ganha sete dígitos todos os anos fazendo isso repetidamente: • Junta-se à equipe de desenvolvimento por uma semana • Identifica de 3 a 5 melhorias potenciais para o seu processo • Escreve uma proposta curta e concreta para cada melhoria • Opcionalmente, ajuda a equipe a implementá-las • Documenta os resultados • Sai Ele aperfeiçoou isso quase como uma ciência: é um processo repetível com algumas recomendações "básicas" que quase todos poderiam usar. A alta administração adora ele. As equipes adoram ele. Você vai ficar entediado se ouvir sobre o dia a dia dele, mas ele adora.
@kelvongx *muitos
1,9K