If a company seriously apply diversity to their hiring strategy then it actually means that at some point they must turn down some higher skilled candidate #1 in order to hire some lower skilled candidate #2 just because they have too few employees with the same gender which candidate #2 has.
In this case, a company put skills at the secondary role which means that they praise mediocrity, not talent.
You will be wrong if you argue, that a company don't have to prefer lower skilled candidate over higher skilled candidate just because they need to keep gender diverse teams. Because if it were possible, then highly skilled teams were already naturally gender diverse and then whole diversity talk won't exist in the first place.
Don't get me wrong, as a male, I'm sick that vast majority of software engineers are male. It really sucks! It's a biggest single thing I don't like about my profession. But unfortunately it's how it is. Let's face the truth, most women are not interested in software engineering at all. In companies where I worked we had a few female software engineers, they were just as good as male engineers, no difference at all. But they were not hired because of their gender but because of their coding skills.
Don't listen retarded third-wave feminists yelling about discrimination. Software engineering probably is the most meritocratic profession ever. Nobody cares about your degree (I don't have one!), citizenship, ethnicity or gender. Contribute to open source, participate in algorithm competitions, make your personal projects on GitHub and you will be noticed for sure whoever you are! It's because of a great shortage of good software developers in the market and companies are desperate to hire anyone who is able to solve their technical interview challenges.