A humble personality and healthy, mature sense of humor will go a looooooooong way. ;)
Me, as developer valorate more the passion, effort and the interest in do nice things more than technical skills.
Technical skills are important, but i think with a lot of motivation and passion you can learn a lot and become better programmer, and understand better the applications you are developing.
If you know a lot of programming but don't understand the way to apply to your code, or don't understand things globaly i think is harder to evolve in this world.
Both are very important, but unless the developer has technical skills it will be difficult to over the initial steps of a selection process. Only passion will not make someone successful on a strong competition position. What is very interesting is that when someone has passion over a subject the technical skills are usually also developed.
balancing savant-like pragmatic innovation with social skills that make most politicians jealous.
End of the day, you're only going to be employed if you make money for your boss. No-one is going to hire you to loose money, and if they are your self worth and success are being harmed for it.
Be pragmatic, but innovative... mostly pragmatic though.
Communicating isn't enough. Saying the words that make up the english language... that's the expected bare minimum. If you can't socialise your ideas in the team, if you can't help the team discover your idea, if they feel at any stage that you're trying to run a fascist dictatorship, then it doesn't matter how smart or enthusiastic you are. You'll be excluded.
Be socially likeable, encourage and applaud growth in team members, put up with those who defiantly stagnate. Have finesse in your approach.
MartinThePanda
I build things that go *splonk*
I'd say it's a 60/40 or 70/30 split (Passion/Skill). The people who are passionate are the ones that are going to want to learn, improve and show off what they can do.
I've known plent of technically skilled people that are great, but they lack that fire to really come up with ideas that take the solutions we're trying to build to the next level. The passionate ones will usually try and find the solution that not only solves the problem but do does so in a unique, fun or innovative way that the client wasn't expecting.
Here's the thing though: you really need both kinds of people; a healthy mix. You need the innovators and the stock, work horse programmers to make a well rounded team. Too many rock stars or passion filled programmers and you're going to have amazing code that runs the risk of being all over the place. Too many technically skilled work horse programmers that do the work and don't innovate and your team stagnates.
Aim for the healthiest balance for your team. Every team is different and getting the mix right is a challenge, but when you have it, magic happens.