Generalist vs. specialist developer