How to Model a Keyboard key? Keyboard keys sound easy but their particular shape is really weird, and keeps tripping me up. Specifically my keyboard keys, but I'm pretty sure they are similar to other keyboard keys.

A few photos for reference:

The corners are rounded and the top is sloped inward.


But we can't forget that the top (that is already slopped inward) is also slopped downhill.


I've tried starting with the rounded corners, but I can't add the slopped top without some horrible triangle topology. I've also tried starting with the slopped top, but then I have no idea how to add the corners.
In short, start from a cube. (in the gif I have a mirror modifier to save time)
Delete the bottom face.
Add loop cuts for the rounded top.
Position the top correctly, by simply G grabing, and R rotating and S sclaing the top geometry.
Use proportional editing O to create the dip in the top.
CtrlB to bevel the vertical sides.
(optional) Remove the Ngons in the top, that beveling the sides created.
Bevel the top ridge to make it smother and more realistic.