Preheat oven to 350°F (175°C). Line the bottom of your springform with baking paper and butter the sides.
Whisk the eggs and sugar together in a large mixing bowl until pale and fluffy. You can use an electric mixer or whisk by hand.
Add the flour, baking powder, milk, almond extract (if using), and butter and carefully stir until smooth (don't stir more than necessary).
Pour the batter into the springform and bake in the lower part of the oven for about 20 minutes. The edges should release a bit from the form when it's ready for the topping.
Almond topping
Melt the butter in a saucepan over medium heat. Add the sugar, almonds, milk and flour and reduce to medium/low heat. Stir occasionally until the mixture starts to bubble. Let it bubble for two minutes and then reduce to the lowest heat, continuing to stir until the cake is ready.
Take the cake out of the oven and pour the almond topping on top, spreading it evenly across the cake. Return the cake to the oven, this time on the middle rack and bake for another 20 minutes, until the top is a rich golden brown (but not burnt).
Let the cake cool for a few minutes and then remove the sides of the springform. You can use a knife to gently release the almond topping from the edges if it sticks.