Wow that is so spot on, as a "generic" programmer asking $150K versus a "generic" programmer asking $75K ? Easy choice, we'll get two and double our productivity and halve the sick days! I noted that in the medical profession "General Practitioners" made the least, while specialists made the most. They were all doctors.
Specialist software categories:
Embedded Software - bringing up code without an OS, understanding hardware function and tools.
Graphics Programmer - these days understanding 3D programming with Shaders and other features common in todays GPUs
Kernel programmer - understanding the insides of the kernel and how to write code that works there.
Networking software - understanding all of the intricacies of how packets get from point A to point B, and what interferes with that and what facilitates that.
Security specialist - someone who understands what makes programs and systems break and can program fixes for them or ways to spot attempts at exploiting them.
Storage specialist - someone who understands file systems and disk drives and getting data to and from programs reliably.