Developers Benefit By Seeing What Customers See
Software engineering, and development in particular, encourages tunnel vision. For the most part, engineers receive inputs (an understanding of something to build), do some design, write some code, do some testing, and generate outputs (a product or some piece of a product.) In many cases, the inputs come from someone else in the organization, usually from a product manager, or a bug report from QA. The outputs go to someone else in the organization, frequently QA or a release team. It's easily possible for a developer to go for months or years without any exposure to actual end users. The downside is we actually build better software when we better understand the customer. So how do we get better at our jobs and understand our users better?