a good job (of / in / at) doing something

Are the following sentences correct? If so, which is the most common?

1) You did a good job raising your children.
2) You did a good job of raising your children.
3) You did a good job in raising your children.
4) You did a good job at raising your children.


Solution 1:

1) You did a good job raising your children.
2) You did a good job of raising your children.
3) You did a good job in raising your children.
4) You did a good job at raising your children.

All are correct, and all are used frequently. The form I have most often heard is

You did a good job raising your children.

The form I would use is

You did a good job of raising your children.

Per The Cambridge Dictionary: do/make a good/bad job of something: to do something well/badly.

The only way I can explain my preference is by inverting the phrases and finding what sounds best:

Raising your children, you did a good job.
In raising your children, you did a good job.
Of raising your children, you did a good job.
At raising your children, you did a good job.

The first and the fourth sound awkward to me. Inverted, I prefer the second sentence or third.

Perhaps an expert at grammar can give you a more definite answer.