The former (e.g. a data scientist) will be good solving a problem but bad building a big architecture. The latter, the other way around.
I guess the question is which kind of programmer you are and which skills to look for.