Cross-functional, proactive, user focused: you do not want somebody who will stop if he does not have a wireframe to work from or who will not plan for common error messages just because that was not in the specs that were given to him. You need someone who loves the product you are building and not just someone who can write good code.
The ideal candidate should be able to look at the big picture. If the candidates are new, their prior projects should always be considered in hiring. I've hired many developers who promise the world, but do not deliver. The finger often gets pointed back at you, and sometimes, their right. Good developers are easy going and take the hits with you. Communication is also paramount.
It depends on the stage of the startup. If you're talking about a green field project, then it's super important for the developer to have strong analytical skills and somewhat of a business sense (if they're going to be taking requirements from non-technical sources and trying to develop something from scratch).
If the startup is a bit more mature, then finding someone who has the 'fire in the belly' and deeply believes in what the company is trying to achieve is one of the most powerful things you can hope for in a developer (assuming they also have the technical ability to perform).
Flexibility is always something sought after as well. Startups often pivot and change directions often, so startup developers need to have thick skin when a project they're working on doesn't pan out, or the company needs to pivot in a new direction. This is why I always look for developers who understand that business needs drive development, not vice versa.
Ahh a topic very close to my heart. Attitude is the number 1 attribute to look for. The developer needs be able to problem solve, be prepared to work long hours, is either single or has a partner that understands what it takes to succeed in a start up. Likes to be part of a team and either has business nouse or at least understands there are business imperatives not just coding ones. Ideally their ambition is to code or at most manage good coders and to be part of team that runs a successful business. Finally, good solid coding experience that is well designed, commented and documented. Oh one more thing. You need to get on with them as a start up partnership is fun, tumultuous and rewarding as a marriage.
Well, I'm an app developer myself and worked with many startups (as developer for hire) and also run my own app agency, so this is what I believe:-
1. A startup developer should be aware of the real implication of his code and also the target user group; he must know the sensitivity of rolling quality builds quickly; and its direct impact on business.
2. He should be an "engineering" mind and not just "coder" who can't think beyond their technology stack. He should always be concerned about the next generation of technologies and be ready to take the challenge for staying on edge of competition.
3. A little entrepreneurial attitude (at least ownership, accountability, time management) is always important.
And that's it, rest can be managed or fine tuned if attitude and approach is right.
I've personally experimented with my developers and figured that if you just change the "approach" with which they take the work and give them little more sense of "ownership" (combined with offering tangible incentives of success) their whole efficiency goes to another level and also the outcome product becomes better.
Btw, anyone looking for a developer right now can contact me and I can get them in touch with real vetted developers (and not freelancing site kind of guys) on my responsibility and professional image.