Preheat oven to 350°F (175°C). Line an 8-inch square baking pan with parchment paper.
For the brownie base, melt butter and chocolate together in a heatproof bowl set over simmering water, stirring until smooth.
Remove from heat and whisk in sugar. Add eggs one at a time, then vanilla, mixing well after each addition.
Fold in flour, cocoa powder, and salt until just combined. Pour batter into prepared pan and smooth the top.
For the sticky toffee layer, combine chopped dates, hot water, and baking soda in a bowl. Let stand for 10 minutes until dates are soft.
In a separate bowl, cream together butter and brown sugar until light and fluffy. Add eggs one at a time, then vanilla, beating well.
Fold in the flour, baking powder, and salt, alternating with the date mixture, beginning and ending with flour.
Gently pour this batter over the brownie base and smooth the top. Bake for 35-40 minutes until a toothpick inserted comes out with a few moist crumbs
For the toffee sauce, combine all sauce ingredients in a saucepan over medium heat. Bring to a simmer and cook for 5 minutes, stirring occasionally, until thickened slightly.
When the cake is done, poke holes all over the top with a skewer and pour about half the warm sauce over it, allowing it to soak in.