Ask HN: What non-technical skills make a senior dev and how to develop them?
Empathy is the key skill. Yes, it's learned.The ability to walk in somebody else's shoes for a while makes you a better developer. Why?* You acquire the habit of imagining what it's like to use the stuff you develop.* You have a feel for the daily experience of your colleagues, suppliers, executives and other stakeholders.These things give you the sort of spidey-sense that lets you function independently. They also give you the ability to enlist other people to get things done.How can you learn empathy? Like any skill, it takes practice.--Listen to strangers. The question "what are you doing this afternoon" asked at lunch will usually get an interesting response.  Interject "wow" - like sounds to keep them talking.--Seek opportunities to meet end-users of your stuff. (Ask sales people to take you along on calls if that's appropriate). Observe their work.--Ask your executives and project managers questions like, "what keeps you awake at night?" And listen to the answers.--Teach. It doesn't matter whether you teach short courses or get a night job as an adjunct professor at your local CoCo. Your interactions with students will help develop your empathy.People love to talk about themselves. You can take advantage of that to practice empathy.