There is a setting in one of the INI files that lets you turn off automatic skill allocation, so everyone arrives as a hauler.
If you get everything roaring, there is normally only need for one dwarf in any profession that makes things that have a quality modifier, with the possible exception of farmers (two will get you off the ground faster), dyers (you have to set the industry up very efficiently to get away with one), and masons (you may want to dedicate a weaker one to rock block making).
You may also want additional masons and mechanics (use q-P to keep them out of workshops) because these tasks involving running around, and for this reason you may want multiple architects.
Other skills that don't involve quality modifiers (miller, thresher, burner, various other farm labors, wood cutter, etc.) you can assign one in the hopes that he'll get fast, or share these among haulers.
The number of miners you use is a matter of taste.
I normally do:
One Mason, Carpenter, Engraver (sometimes two), Animal trainer, Farmer, Burner, Brewer, Thresher, Miller (sometimes two), Dyer (sometimes two if I get a good immigrant), Cook, Stonecrafter (this guy often doubles as a bone crafter), Leatherworker, Glasser, Weaver, Clothier, Mechanic, Architect, Weapon guy, Armor guy, Blacksmith, Metal Crafter (these last two often do other stuff).
I try to have one gem cutter and one setter, but sometimes one guy does double duty.
I have 3-5 woodcutters who also haul when there's no wood to be cut.
I have 2-5 miners going usually.
I assign medical labors as appropriate.
I tend to make immigrants who arrive with tanning into moodable laborers, to avoid tanner moods, but I keep tanning on them so this is done via gang.
I gang butchering, but a bunch of slow butchers can suck when I need a lot of butchering in a hurry.
I gang Soaping, Lye making, Shearing, Spinning, Milking, and Cheese Making since these are all rare and/or stupid.
I'm experimenting with using one smelter, but normally I have 3-5.