Good question!
Well, the most important skill is being familiar with how Steem works, how to get the blockchain running and how to securely run a node.
And most of this is simply experience. The more often you setup steemd, the easier it gets and the faster you can react to changes or even extreme scenarios as yesterday.
Which programming languages do you need to know for being a witness? I heard someone said C+.