In the bowl of a stand mixer, stir together warm milk and yeast by hand; let stand until foamy, about 5 minutes. Add granulated sugar, egg, and cardamom; using the paddle attachment, beat at low speed until combined.
In a medium bowl, whisk together flour, baking powder, and salt. Add 1 cup (125 grams) flour mixture to yeast mixture; beat on low speed until combined, stopping to scrape bottom and sides of bowl. Gradually add remaining fl our mixture to yeast mixture, beating on low until a shaggy dough forms. With mixer on medium-low speed, add butter, one cube at a time, beating until fully incorporated after each addition. Scrape down paddle and bottom and sides of bowl.
Switch to the dough hook attachment. Beat at low speed until a smooth, soft, slightly tacky dough forms, about 20 minutes, stopping to scrape bottom and sides of bowl and dough hook. Cover and let stand for 10 minutes.
Line baking sheets with parchment paper.
Turn out dough onto a lightly floured surface; divide dough into 9 portions (about 75 grams each). Using floured hands, cup your hand around each dough portion on surface, and shape in a circular motion until a smooth, shiny ball forms. Place about 3 inches apart on prepared pans. Loosely cover and let rise in a warm, draft-free place (75°F/24°C) until doubled in size, 2 to 2½ hours.
Preheat oven to 400°F (200°C).
On a small rimmed baking sheet, spread almonds in single layer.
Bake until lightly browned and fragrant, 8 to 10 minutes. Let cool completely. Increase oven temperature to 450°F (225°C).
Bake buns until golden brown, 8 to 10 minutes. Remove from pans, and let cool completely on a wire rack.