Qual é o primeiro, o ovo ou a galinha?
Depende.
Se você é novo e não tem certeza do que faz, peça, por todos os meios, que um colega o ajude. Esta é uma revisão de código informal, mas muito séria e valiosa.
Geralmente, embora eu sugira que você faça seu próprio trabalho sujo primeiro, certifique-se de ter resolvido o código, comentado bem nos lugares certos (ou seja, os bits mais difíceis, não os óbvios), pelo menos basicamente funciona (você tem testados nos casos gerais mínimos e em alguns casos limites ou exceções). Então você leva para o seu colega.
A revisão antecipada do seu código pode resultar em um desperdício terrível do tempo de seus colegas. Revê-lo tarde demais pode resultar em um terrível desperdício de tempo. Você precisa encontrar o equilíbrio certo para obter a maior eficiência. Então, alguns testes vão primeiro, depois a revisão e mais testes. Potencialmente, você pode ter várias revisões de código, dependendo da complexidade e das iterações, com finalidades e focos diferentes.
Quanto menos você tiver mais avaliações (quando estiver na fase inicial de aprendizado, isso é normal). Quanto mais certeza você tiver, mais críticas também (nunca é bom ter muita certeza de si mesmo, o que significa que você geralmente não é tão bom como jogador de equipe e pode causar problemas a outras pessoas, você precisa garantir que seu código possa ser entendido e usado por outros). É quando você está no meio que as críticas podem ser espaçadas.
Apenas meus dois centavos.