I've also spent time in our sandblast units and our loading docks and sales team.
How can I architect and build good software if I don't have a good understanding of the domain and you can only get that by immersing yourself in it head first.
I'm lucky in that my boss cottoned onto the fact we get better software when I see the problem in the raw and not just his interpretation of the problem.
Wouldn't work for everyone, we are a small production/import company so it's possible for me to get the basics of each users role (and I can physically go ask them if need be) but it's a huge win imo if it's possible.