The product development process is complex and difficult. But to me, that is why it can be so rewarding. Great products pass through a gauntlet of challenges. To satisfy the myriad needs requires skill as well as patience. It requires a combination of high technical skills, great business skills, and a large amount of personal social skills for interacting with the many other groups that are involved, all of whom have their own agendas, all of which believe their requirements to be critical.