The only buttercream you should ever make, truly. Makes enough to frost one 3-layer cake, but double the batch if you also plan on decorating the cake with buttercream rosettes.
Fill a wide pot with around 1 1/2 inches of water. MacGyver a nice 'n thick ring of crumpled aluminum foil wrapped around the base of your stand mixer bowl to keep it from touching the bottom of the pot. Place your pot o' water on high heat until it starts to reach a boil and then adjust the temp to maintain a gentle simmer.
Meanwhile, add egg whites, sugar, salt, and cream of tartar in your stand mixer bowl. Put the bowl (with tinfoil bumper) into your pot of mildly simmering water and start stirring and scraping sides down with a rubber spatula. Do this constantly for about 10 minutes, until your arm is about to fall off and egg whites are about 185°F (this process is just "cooking" the egg whites so they're safe to consume, while you continuously stir them so they don't actually cook on you. #science) If you don't have a food thermometer, then #YOLO and just stir & scrape for 10-12 minutes and assume that you won't get salmonella because you've decided it's better to risk food poisoning than bother to buy a candy thermometer.
Take off your aluminum bumper and stick your stand mixer bowl into...yep, your stand mixer fitted with a whisk attachment. Then whip it...whip it good. At high speed, for about 10 minutes until the meringue is glossy and makes stiff peaks. It should feel cool-ish to the touch.
With mixer still running, add your room-temp-ish butter, cut into 1 or 2 tablespoon chunks, one chunk at a time. Don't freak out here. The volume of the meringue will deflate and start to look soupy. But all is well! As you add the room-temp-or-slightly-cooler butter, the buttercream will begin to thicken and cool and look dangerously like something you want to swoop your fingers through and taste test. Final buttercream should be #thicc, silky, and velvety (around 72°F for you food thermometer snobs). At this point beat in the vanilla and almond extracts on low speed.
Use the buttercream right away. If you're using it within a day or two, you can just cover the stand mixer bowl with plastic wrap and leave at room temp, re-whipping day of if needed. If waiting longer, you can transfer to a large Ziploc bag, press out air, and seal. The buttercream can be refrigerated for up to 2 weeks, but really, are you going to make frosting 2 weeks ahead of time? If so, you might want to examine your control problems. Bring buttercream back to a warm room temp (72°F) and re-whip before using.
Adapted from Serious Eats' Swiss Meringue Buttercream recipe.