All it matters is the programming skills. A good software developer/programmer should have the capabilities to design and implement software according to specifications. It is not necessary to work on the same kind of application again and again, which makes them bored. However, possessing the right knowledge beforehand can improve the speed of development cycle. The trade-off of doing one thing repeatedly is the versatility of the developer.