Adapted from David Lebovitz recipe


For cream cheese frosting

Cream cheese - 1 pound , at room temperature
Unsalted butter- 4 oz , at room temperature 
Powdered sugar, sifted - 2cups
Vanilla extract - 1/2 teaspoons
Chopped walnuts - For decoration

Preheat the oven to 350°F . Butter and flour two 8- or 9-inch cake pans and line the bottoms with parchment paper.
To make the cake layers, sift together the flour, sugar, cinnamon, baking soda, and salt. Set aside. With a  stand mixer , beat in the eggs until they are frothy . While the mixer is running,add in the oil and melted butter, then the vanilla. 
Add  the sifted dry ingredients to the eggs and mix carefully until everything is combined. Fold in the carrots and chopped walnuts, then divide the batter between the two pans. 
Bake 30-35 minutes, until a fork inserted comes clean. Cool the cakes completely on a wire rack before frosting.
To make the frosting, beat the cream cheese and butter together until smooth. Reduce the mixer speed and now slowly add the powdered sugar. Beat everything until you get a soft creamy mixture. Add in the vanilla extract. Spread this mixture on the cake. Decorate on top with chopped walnuts.

Notes: I made the cake with half the measurements as my cake had only one layer . The measurements given in the above recipe is for a two layer cake.