In a slightly different universe you'd have to have a certificate to be a "software engineer".
In this one there is no standard to meet to get into the industry. Some people have a CS education or the equivalent, other people really understand HTML and CSS and are valuable for that.
There are distinct communities of practice.
I've worked at some places that have a MSDN subscription and the world revolves around Microsoft products, some excellent, some junk. They thought "Linux is not ready for prime time".
I've also worked with Linux users who think "MS = shit" and are just as indiscriminate when it comes to open source.
I worked at a library that felt threatened by the electronic revolution (e.g. I went to the stacks recently to get a copy of the Tale of Genji and got personal service because I might have been the first person to use the stacks in a year) and faced a "glass ceiling" because I didn't have an MLS degree. Many devs work in situations like that, supervised by people who might not really get software, and that too is a source of conflict.
Sometimes I take it personally when I use systems that have bad user interfaces because it reminds me of times when I wasn't taken so seriously. (e.g. at least when I am involved a bad UI is not a failure of empathy on my part, but it might be a failure of understanding -- compounded by production pressures that don't let me revisit it.)
Given all those stresses and people looking at it from their personal points of view it is no wonder people are snobbish.