I may be a strange one but I never have trouble finding work for immigrants. I limit my cap to 100 and of those
3 work in the kitchen, with maybe 2-3 apprentices training up when stocks are high
2 work on crafting, including bone, rock, leather, cloth and wood - they produce trade goods from day one until I need bolts
2 are skilled masons for building nice quality tables/chairs/doors for my dwarves to enjoy
2 are miners - it starts out slow but 2 legendary miners are fine for me
1 mechanic - after the first immigrant wave or so I deliberately get someone to start churning out mechanisms for bridges/traps/other
1 quartermaster
assorted nobles
1 carpenter - he makes bins and beds etc
1 smith - I embark with a weapon/armor smith and keep him nice and safe tidying up the fort until later
1 woodcutter with 1 apprentice, sometimes, depending on how dangerous a life he has
1 doctor to look after all my injured dwarves
The other many dwarves are either military, hauler or jacks. My military can consist of up to around 20 dwarves depending on the danger I'm in. Jacks are a team of dwarves I use for anything and everything I need that isn't hauling. Helping mechanics rig up bridges, helping build walls/floors, assisting the hauling, processing things for moods, etc. Haulers are just that - haulers. I recently made a point of giving all of my haulers a little skill in weapon or armor smithing and as a result I now have a legendary weapon smith and armor smith from their ranks.
As a guide, with 115 dwarves I have 20 children, 30 haulers, 10 jacks and 16 dwarves in the military. If a dwarf goes moody and becomes legendary, I keep him nice and safe as needed (current fort has two legendary gem setters

)
Also, incase anyone things I have an inefficient fort, I don't. I keep my haulers busy in pump gyms, large scale masonry or specialised hauling (such as gathering a stream ores for the smithy or moving all the blue rocks near my next construction).