Set oven to 350°F (175°C). Grease and flour three 9-inch round cake pans.
In a large bowl, beat softened butter with granulated sugar on medium speed for 3–4 minutes until light and fluffy.
Beat in eggs one at a time, mixing well after each. Stir in vanilla extract.
In another bowl, whisk together flour, baking powder, baking soda, and salt.
Add dry mixture to the butter mixture in three parts, alternating with milk. Start and end with dry ingredients. Mix just until combined.
Stir in chopped pecans with a spatula. The batter should be thick and smooth.
Divide batter evenly between pans. Bake for 25–30 minutes, or until a toothpick comes out clean.
Let cakes cool in pans for 10 minutes, then transfer to wire racks to cool completely.
In a saucepan over medium heat, melt butter. Stir in brown sugar and milk. Bring to a boil, then remove from heat and cool for 10 minutes.
Gradually beat in powdered sugar and vanilla until smooth. If too thick, add 1 tablespoon milk at a time.
Spread frosting between cake layers, then cover top and sides. Garnish with extra pecans if desired.