Different roles in the software team map rather nicely to various types of footballer.
The player that actually achieves the goals of the project. Makes things happen, and gets the credit for a good result. Best paid.
Stops bad things happening, but nobody notices them until a bad thing happens. Any good things they do, they pass on to a striker, who will then do another good thing and take the credit.
Project Manager: Midfielder
Organises everyone around them, does lots of chasing about, convinces everyone that they're a necessary interface between the defenders and strikers to encourage a beautiful game and prevent long-ball development.
Graphic Designer: Tactician or Performance Analyst
Fully-trained expert in their field whose input and ideas are sought and ignored by the players. Because any player or coach can come up with a tactic that looks good to them on paper, and the results are hard to measure without comparisons, they're seen as optional and expendible when there's a limited budget.
Supposedly supplies content and photographs, but mainly just shouts at the other players when something has gone wrong and it's too late to do anything about it. Too often just kicks the bug right up to a striker, when they should throw it short to a tester.
Will let you know instantly if they don't like anything without suggesting a better solution, even though they know they can do a better job than just about anyone on the team. There'll be a few that are always singing no matter what, and the manager will try to please them even if it doesn't make financial sense to.