I'm surprised at these answers! Sure DF interface is clunky, but organizing dwarf labors has always seemed easy to me. I used Therapist for awhile, but eventually fell out of the habit for lack of value-added. I'm REALLY surprised to see people making spreadsheets - how does this help?
When an industry needs another worker, I just find a dwarf in the list that has an appropriate skill (they're color-coded), turn on the needed labor and turn off unrelated hauling labors, give the dwarf a custom name and profession tag, and then usually never touch that dwarf again. When I need to specialize another dwarf, I just look though the list for one that doesn't already have a custom name and is in the correct color category. It's really easy.
For one dwarf it is easy. For 50 or 100? Not so much. I also don't want to name my dwarves after their skills, if that is what you are suggesting?
The bottom line is that even a few small changes to the user list combined with labor/profession would make DF pretty efficient at managing dwarves. Simple things like returning to where you were in the user list would alone save me an insane amount of clicks.
But it is what it is, and Toady probably knows this already. I will simply use DT when I get too frustrated and hope for an improvement in a later version
All my dwarves have unique names once they've been specialized. Here's an example to clarify:
My init file is set to have immigrants arrive with all non-hauling labors turned off, so everyone is just a hauler unless told otherwise. Now, let's say my refuse pile is getting full of discarded animal hair. It's time to spin it into thread for the doctors! If I have no dedicated Spinner yet, it's time to assign one. While screening immigrants for vampires, I may have noticed one that had some Spinning skill. If so, I'll probably choose that dwarf; he or she will be easy to find since they'll be a nameless (i.e. default dwarvish name) dark-yellow dwarf. If I haven't noticed a Spinner then no big deal, skill matters little for that labor, so I'll just choose a random skilless dwarf.
I select that dwarf, and turn on his Spinning labor. I'll also probably turn off Refuse Hauling, so that he doesn't go carrying hair around when he could be spinning it. Spinning is a low-priority job, so he can keep his other hauling labors. In fact, Spinning is so low-priority that I may go ahead and turn on Weaving for this guy, since it's thematically similar and also not time-critical.
To record my changes, I'll give that dwarf a custom profession name. In this case, probably "Spin/weave," so I can tell at a glance what he has assigned. He also gets a custom name that suits his profession. I take dwarf names from fiction, video games, movies, etc., and re-use them game to game. Since this guy is kinda into spinning, I'll name him "Rumple," short for "Rumplestiltskin" from the fairy tale.
Now that Rumple has a specialized role, I never have to touch him again.
That's a lot of text, but it really only takes about 15 seconds per dwarf.