If your work is even a bit I/O sensitive, avoid mounting OSX folders and use named volume mounts. They are much faster as they don't cross the virtualisation boundary but you need to be careful to not destroy them if they contain data you wanted to keep
For me personally, disable the new virtualization framework and gfuse options. I hope they're working better for others, but I'm not seeing any benefits yet and CPU usage dropped significantly after disabling these
The biggest problem seems to be the slow disk performance when working with volumes. At least in personal projects I could make this fast by making use of Docker's caching in creative ways. E.g. first copying the package deps, installing them and afterwards copying the (often changing) source. Also sometimes when a volume is needed it can be enough to make it a single file volume.
I just put linux on the MBP in the end. Much better docker experience. I can't believe companies elect to pay for Docker Desktop only to have it be so crappy.