This is a critical issue, and I’m glad you write about it.
I, for one, was permitted to work with a Business Analyst [or even alone] with an end user for a long time. However, when I asked to have a role assignment to Business Analyst, the response was:
Year 1: You are too valuable as a software developer.
Year 2 [after the same firm established a department of Business Analysts, including a few who were more stylishly dressed and issue-simplifying [even when the issue didn’t warrant simplification]: I can’t make you a Business Analyst. Could you imagine walking into a room like [other guy with nice outfit and haircut] does? I’d promote you to the Mad Scientist wing for your technical wizardry if we had one, but we don’t have one.]
All of this seemed to be based on appearance and simplified presentation rather than on competency or the ability to evaluate items at a deep level.
After Year 2, I continued to have to work behind the scenes to help, really help, some of the more superficial Analysts not fail at their jobs [for which I’d get the blame] and to do Analyst work myself, just with a programmer title.
I cite the manager’s feedback only because of how inappropriate it was, not because I agree with it. Even if the manager opposed my promotion to Business Analyst, which shouldn’t be a promotion in any company — as the two are peers — , he should have found a different reason for it.
It turns out that I had been, could, and did continue to walk into a room full of business people with the confidence of someone in more expensive clothing and with a better haircut, just I didn’t get recognized for it. I got points based on how many program tasks I completed. I have learned over time to present more effectively, to create good slides, to write emails better, and to talk in meetings more effectively — none of those were so bad before to prevent me from being effective as a technofunctional person, even an Analyst. However, I have improved all of this to try to break into more of a leadership, or Analyst, role — which is infinitely more portable from company to company than developer in this world of tech-stack specialization and overfitting.
It was, and is, wrong to think of Analysts or QA as a promotion, to keep employed developers who only develop code [unless in special circumstances], to conflate being able to present or be an Analyst with a specific type of appearance [beyond the basics of professional appearance], to lock developers in coding roles because they are “too valuable” too remove from the coding roles, to fail as manager so hard that you have developers who are “too valuable” to promote.
It also manifests itself in Agile teams which are so misunderstood that documentation and coordination don’t get recognized, just developing code. If we actually lived that way, the engineers, everything would fall apart. But we don’t get recognized for it, and I have been told to leave it off of my status reports to the client!!?!?!