Não se esqueça de entender bem a regra de negócio do seu cliente.
Fazer um código funcionar qualquer programador faz, mas se a regra de negócio estiver errada, seu código vai fazer registros errados que talvez só se note quando o problema for maior.