Eu estudei no CompSci, onde aprendemos principalmente sobre Java, mas o que aprendi é que minha paixão são sistemas, por isso sempre trabalhei no lado das operações. Sou útil em scripts, portanto, não estou procurando um site para me ensinar Ruby, mas algo para explicar mais detalhadamente o que os desenvolvedores fazem o dia todo. Quero entender melhor a cultura e como você digere o grande número de arquivos em seus projetos - os intangíveis.
Se soubesse hoje que estava sendo transferido para uma equipe de desenvolvimento na segunda-feira, o que gostaria de ler neste fim de semana?
culture
builds
methodology
software-engineering
Stephen C
fonte
fonte
Respostas:
Como você marcou essa pergunta como "cultura", presumo que você não esteja interessado em um aplicativo específico, mas nas questões mais amplas de fluxo de trabalho e gerenciamento.
Eu provavelmente começaria com "O Manual do DevOps"; é uma boa visão geral de diferentes coisas a considerar, sem mergulhar muito fundo.
"Entrega contínua", de Jez Humble, também é frequentemente mencionado; Ainda não li muito, mas abrange os conceitos de controle de origem e automação de compilações.
Se você está começando a entrar em aplicativos em escala (isso pode ser uma suposição muito grande), outro bom livro é "A Prática da Administração de Sistemas em Nuvem", de Limoncelli et al.
fonte
Não se trata de DevOps, mas de um desenvolvimento direto de software, presumo.
Bem, o importante no desenvolvimento direto (sem o ângulo "DevOps") é certamente "ágil", isto é, na maior parte do tempo, o SCRUM. Você pode fazer pior do que sentar e ler o Agile Manifesto ou uma cartilha no SCRUM ou no Kanban para os trabalhos de manutenção mais corretos do dia-a-dia.
Além disso, falar em "cultura" é, vindo do lado do desenvolvedor, principalmente uma coisa específica do DevOps. Sim, também temos nossos evangelistas, especificamente para coisas mais novas, como ruby ou golang, mas não tão extremas quanto no mundo do DevOps / Cloud, onde há mudanças de paradigma reais acontecendo.
Tendo trabalhado em aplicações rubis não triviais, isso não é nada demais. Veja, esses arquivos não estão apenas espalhados por toda parte, mas há uma hierarquia, convenções e tudo mais. Você nunca precisa ter todos esses arquivos em sua cabeça em um único momento, para um projeto bem projetado. Se você trabalha em uma área específica, geralmente fica bem claro onde estão os arquivos relevantes e é possível fazer zoom neles com bastante facilidade. O mesmo deve acontecer com outros ambientes de programação modernos.
Em aplicações ruins, isso é diferente, mas o desenvolvedor não "digerirá" nada, apenas tropeçará em frenesi o dia inteiro até que saia. ;)
fonte