Hockey, soccer, baseball – every sport has its superstars that contribute to the success of the team, but the wins come from a team effort. Custom software development teams operate the same way, but with different positions: Project Manager, Requirements Analyst, Software System Architect, Software Developer, Tester, and Trainer.