I started my career in a small software company that wrote Mac software (in the System 6.5, System 7 days). We had no dedicated support staff, so support calls were either handled by the sales staff or development. Talking directly to customers, hearing where they were having trouble, and learning what they wanted to do, was probably the single most valuable experience in my career. My first thought with any work became &quot;How can I completely eliminate the possibility that I will end up having to support this?&quot;<p>Of course, this backfired spectacularly a few years later at a different company, when a customer stopped paying a lucrative support contract because the software always &quot;just works&quot;. I have decidedly mixed feelings about that!