If I had to pick one trait, it would be the ability to be comfortable with “the struggle”. That part of the day/hour/minute where the code isn’t doing what you expected, things aren’t looking like they should, or where things are going wrong and you don’t know why. The times where you’ve planned out a system, realised you’ve screwed it up and missed something crucial, again. The times where you swear at the screen, let out a massive sigh or
hitrest your head on the desk in exasperation.