Different Types of Software Developers