System software is complex. Developing system software correctly requires focus, intensity and specialization.
Kernel-mode software has unique requirements by virtue of its essential nature, a component of the operating system. Kernel software has the inherent capability to change the behavior of the host operating system in both desirable and undesirable ways. System software developers must simultaneously maintain system stability, security and performance, while extending the operating system with the new features of their software products.