My Perspective on the OS:
MacOS philosophy is to hide/remove all or most settings and hope that the default ones will work for you out of the box. I love to tweak everything and MacOS feels too packaged for me. There is not enough freedom for the advanced user to change things. Also, The OS feels so commercial and made for the masses. this is a personal feeling but I cannot help it.
They do a very good job for the normal user that only wants to use a couple well defined apps though.
As a developper:
I mostly develop Linux infrastructure code (backend and low level). As such, using MacOS means that I'm constantly into a VirtualBox VM (which sucks compared to KVM or anything else) or trying to build stuff over SSH. I spend hours opening SSH tunnels, or mangling with port forwarding inside my VMs.
Then, I like to run containers. Docker support for Mac is pretty much basic (or I should call it horrible).
So at the end of the day I am using MacOS as a glorified web browser and SSH terminal. I never took the time to learn the low level working of MacOS, and I also hate that every standard linux tool has been slightly altered to make it almost unusable if you are used to the Linux version. (netstat, lsof, ... are a couple examples)
Basically I want to get control back on My OS.