Device driver writers possess a special blend of software and hardware skills (among other things). They need to write highly structured and elegant code as well as debug down to the register level of the hardware. They have to do their tasks with less then optimal debug hardware. They often make do without JTAG or Ethernet debug tools and fix tough problems with just their wit and a GPIO line. If you have the tenacity to write device drivers read on.