In your inital circuit there is a base resistor missing for Q2.
The base resistor isn't missing. If you limit collector-to-emitter current by putting a resistor on the emitter as shown here, because base current must also flow out of the emitter, you get base current limiting for free. The ratio between base and collector current tends to be set by the gain of the transistor. For example, if the gain is 200x, and the resistor permits 10mA to flow from collector-emitter when the transistor is turned on, base current will automagically be limited to about 10/200=0.05mA.
Plus you get something else for free too. Without a base resistor getting in the way, the MCU can quickly turn off Q2 when it pulls the pin low. Probably not an issue in this circuit, but in others where speed is required, it eliminates the need for the extra resistors/capacitors/diodes to assist in turn-off.
The diode would seem to be superfluous? Unless you have another good reason for it.
Looks like it's there to keep power from flowing back through the MOSFET's body diode, should the power supply be turned off when the battery under charge is still connected.
Whether this will be sufficient at 10kHz depends on load current, supply voltage, and how well heatsinked the transistor is.
[yashrk], you should really post these stats. Otherwise any answer you receive as to whether a one-transistor gate drive is sufficient, will be only a guess!