Em uma boa equipe, você deve ter uma fila de tarefas de desenvolvimento atribuídas a você em um rastreador de problemas .
Dessa forma, enquanto você espera por um revisor, você pode ( deve ) trabalhar na próxima tarefa que espera nessa fila. Depois de se acostumar a trabalhar dessa maneira, isso abrirá uma oportunidade para que suas alterações sejam revisadas em "lotes", diminuindo assim os atrasos.
- Se você não tiver essa "fila", discuta isso com seu gerente ou, melhor ainda, com o revisor. Se sua equipe não possui um rastreador de problemas razoavelmente conveniente para coisas assim, considere estudar os quadros de empregos ou as oportunidades internas de trabalho da empresa para encontrar uma equipe melhor (você também pode discutir isso com o gerente / revisor, mas não espera que isso ajude - falta de um bom rastreador de problemas geralmente é um sintoma de algo gravemente quebrado em uma equipe).
Eu quero ser livre ao codificar. Como eu poderia ganhar a confiança pela liberdade de desenvolvimento?
Para descobrir, você precisa primeiro entender o objetivo das revisões de código. Você mencionou confiança - essa é uma boa "aproximação", mas não totalmente precisa.
- Por exemplo, em um dos meus projetos recentes, o desenvolvimento foi realizado por uma mini equipe minha e de meu colega. Confiamos e nos respeitamos mutuamente - mas, apesar disso, revisamos 100% do código. Estávamos fazendo isso porque isso nos permitiu encontrar e corrigir rapidamente alguns bugs e, o que também é muito importante, porque as revisões não demoraram muito tempo e não bloquearam nosso trabalho.
Veja bem, seria mais preciso pensar nas revisões de código em termos de esforços investidos para evitar certos riscos . Em uma boa equipe, você pode esperar um tipo de entendimento compartilhado de como "equilibrar adequadamente" isso. Observe que não existe um equilíbrio adequado para um tamanho único, depende muito de um projeto - o risco e o impacto de bugs em um software de missão crítica diferem naturalmente daquele em um aplicativo não crítico.
Usando o seu exemplo, você pode esperar "bloquear revisões", desde que os esforços investidos pelo revisor sejam justificados por encontrar bugs e melhorias que devem ser corrigidas antes de confirmar seu código.
Eles provavelmente esperam que, com a prática e as orientações recebidas nas revisões, você melhore a codificação, para que eles encontrem cada vez menos problemas que valem a pena corrigir antes da confirmação. Assim que descobrirem que seu código ficou "seguro o suficiente" para permitir "medidas de prevenção de riscos" menos complicadas, você pode esperar que o processo mude, por exemplo, para revisar após a confirmação .
Dependendo de um projeto, em algum momento seu código pode ser considerado seguro o suficiente para ignorar as revisões, deixando a descoberta dos bugs para os testadores (mas isso não necessariamente acontecerá, veja meu exemplo acima).