its not perfect. but. 1. Main shape, sphere wit 18 sides. 2. turbo smoothed once 3. Added where the cuts would be (mostly deleting faces) and always working on 1/4 or 1/7 of the mesh 4. Rotated the copies and welded vertices. 5 minutes of work.
20 sided cylinder cut off 1/4 12 sided cylinder cut off 1/4 Small manual tweak to get the shape close to the bigger cylinder 8 sided cylinder cut off 1/4 even with manual tweak the curved shape will not be as perfect as a cylinder with correct amount of segments.
this is my formula... Count the amount of faces around the mesh where you want to create a hole is. and add 4 to it.. so 4 sided faces, needs 8 sided cylinder.. 12 sided faces need 16.. 14 sided faces need 18 sided cylinder 20 pieces needs 24 sided cylinder =)
That's not a n-gon it has 4 sides. The issue is that the edge loop has no holding edges which causes it to smooth. That is the correct way to solve it though.