In a big bowl, with a hand mixer, beat the eggs, oil, both types of sugar and vanilla together until fully intergrated.
In another bowl, sift together the flour, baking soda, salt, cinnamon, ginger and nutmeg, and mix.
Add the flour mixture into the eggs mixture, and mix until fully incorporated.
Now stir in the carrots and nuts using a rubber spatula.
Pour the mixture into two separate 7.5-10 inches (20-25 cm) diameter cake pans previously greased, and bake for 40 min. or until a toothpick comes out clean.
Once the cakes are ready, take them out of the oven and let them cool completely on a wire rack.
For the frosting and assembling:
For the frosting, in a big bowl beat the butter and cream cheese together with a hand mixer until fluffy.
Now beat in the sugar, vanilla and milk, and mix again. Refrigerate before using.
To assemble the cake, put one of the pieces on a big plate and spread a generous aomunt of frosting. Then place the other piece of cake on top and frost with a thin layer which won´t be the last one. Refrigerate the cake for 30 min. to make it easier for us to spread the second and final layer.
Frost the cake again using a spatula and decorate with some ground cinnamon on top.