From my experience at small medium startups, some dev gets higher pay because he/she is attractive and socially well adjusted and not nerdy. Not necessarily better coder.
Nope but they tend to serve other needs like keeping a good social structure within the company and being presentable to investors or doing client facing pre-sale / post-sale work besides coding.
There are allot of ways that a company can monetize their employees and allot of factors that end up being calculated to come up with the figure they end up paying for them, being socially well adjusted and attractive can have a good effect on your salary as people both tend to equate intelligence to good looks oddly enough and that they could use you for other things as well.
In some cases it also might be ticking a box kind of thing I've seen companies recruit attractive females before to both tick the diversity box and to keep some of the more social awkward coders working harder (this came directly from the mouth of a female headhunter that even boasted she specializes in hiring office eye candy that can do some coding on the side).
The thing is none of the coders at old job were needed in customer interaction. Think it was more of eye candy, cool guy to have around, founder had common hobbies like football etc.
Not saying they were needed, however your old employer still might have had a couple of boxes that said "can be presented to investors?" "can be used for pre-sale?" which the hire manager had to tick off at the time they hired them.
Many people at the end tend to do other things than the basis they were hired on, how many times have you seen some "X guru" or "Y expert" and "Z evangelist" being hired at a premium only to end up doing the same crap as everyone else once that specific project fell through?
Salaries can be quite "arbitrary" mostly because that while there is some fine tuned formula behind it on many occasions it doesn't really survives it's with meeting reality, the more traditional "old school" enterprises are probably the best at actually maintaining some logical relationship between experience, responsibilities and salary while the newer tech companies tend to be more erratic and considerably dislike rocking the boat even in cases when an employee does no longer deserve their initial starting salary.
I know that happens but it sucks. We pay everyone based on merit. The quietest, nerdiest person is paid the same as the most attractive, outgoing person with the same skills.