How to cut a hole in a mesh like this without using boolean I have this mesh 

I need 3 identical holes in front face. How to do this keeping good topology?

I tried to use boolean modifier, but there is terrible topology at the end and I need to apply subsurf modifier before applying boolean

P.S. I'm also used subsurf modifier
If you want big holes it can be something like that (needs one more edge though). Delete the face, create 8 vertex circle, duplicate 2 times, fill the gaps with some F: