Usually, the engine starts after pushback. but if the pilot requsests two(both) engines startup before pushback, can the controller approve it?
This can be done, and can be approved when needed.
The most common case would be an inoperative APU, requiring the use of external high pressure air to start an engine. Once one engine is started, you can push back and perform a "crossbleed" start for the other engine, using bleed air from the operating engine to start the other one. That does require power above idle on the operating engine, and sometimes it's easier to just use the external air to start both engines at the gate before pushback.
It's important to keep vehicles, especially large, high profile vehicles like catering trucks, away from the tail while the engines are running; that's accomplished with marshallers with lighted wands. ATC would protect the area behind the aircraft from light aircraft for the same reason; on a big airline ramp, that isn't so much concern, but at a smaller airport with a taxiway close behind the gate, it could be.
So you tell Ground Control what you need to do, they wait for (or create) a break in traffic flow behind you, and then they approve it. And when the engines are started, you request clearance for pushback as normal, and go on with your day.