Live data from Hacker News

Ask HN: What non-technical skills make a senior dev and how to develop them?

news.ycombinator.com

1–10 of 136 posts

Re: Ask HN: What non-technical skills make a senior dev and how to develop them?

#3
Depends on what kind of dev you are talking about. In a consulting shop (enterprise or web dev or advertising)? Big company (software, hardware or where software dev is an expense)? Game company? Silicon Valley startup?

Senior devs in each of these types of companies have some skills in common and some that are particular.

The common ones, in my opinion:

* Ability to communicate with non technical folks

* Ability to estimate relatively accurately

* Willingness to do grunt work to raise team productivity

* Ability to work self sufficiently, own a big chunk of work, possibly leading small team

* Knowing when to raise an issue to higher ups

* Willingness and ability to mentor folks more junior

* Knowledge of the general software landscape for your domain, including what is buyable vs requires building

How to acquire?

* Seek mentors

* Always be learning

* Seek out folks outside of your department and learn what problems they face

* Attend conferences, technical meetups, or other online learning opportunities

* Help out

* Focus on solving problems and not on being right

Disclaimer: I have spent some time in larger orgs, but mostly as a contractor so my advice may not be applicable for those.

Re: Ask HN: What non-technical skills make a senior dev and how to develop them?

#5
Generally, I see "senior" as mid-career, kind of based on how Google does levels. (Engineering is basically "levels" 3-9, you get the "Senior" title at 5, so there is still quite a bit of career growth left after "Senior".)

Some things that you would want to start focusing on:

1) Figuring out what projects come next, and designing them.

2) Figuring out what your team wants to work on, so you can shape future projects to be exciting to them. (We always have an infinite number of things to do, so you might as well pick the things that are most interesting!)

3) Doing detailed designs, so that work can be parcelled out to people that are gaining experience.

As you might guess, at this point you are doing more than working alone or working on engineering tasks that someone else defined. You are defining the tasks, and are starting to define the bigger projects.

Your individual contributions should be setting the standards for others that work with you. Write that extra test, clean up that documentation, don't launch a new service without monitoring. What you value will become what your team values, by your example.

How to get to this point? Hopefully the more senior members of your team are setting you up for success; allowing you to do some of these tasks until you're good enough to do them without supervision.

Re: Ask HN: What non-technical skills make a senior dev and how to develop them?

#6
Domain knowledge about the business activities that your software is supporting is powerful. Do you know why your users want what they want? Can you suggest a better approach to solve their problem, based on your deep knowledge of business needs? Do you know the impact of requested changes on other parts of the business. This, of course, is very specific to a company/industry.

Knowledge of accounting principles is often helpful for in-house developers.

Re: Ask HN: What non-technical skills make a senior dev and how to develop them?

#7
A senior developer varies between different companies. In some companies, if you are a senior developer, you start getting more client facing roles. So your communication skills becomes more crucial. In other companies, you gain a mentor kind of role where you assist your team in designing and developing projects accordingly.

Re: Ask HN: What non-technical skills make a senior dev and how to develop them?

#8
post #2

In most companies I have worked for - or I had the chance to interview with - ageing. :) So, just eat healthy, do some sports, and get older.

Haha :-) Indeed, experienced people who had that perception. No grey hair? you can't be senior.

Edit: I do not have grey hair.

Re: Ask HN: What non-technical skills make a senior dev and how to develop them?

#9
To build on the suggestions other people are making, I would say that one thing I look for in the transition from to "senior" is the ability to make the people around you better. At the junior/entry level, a lot of your focus is about consistent delivery for yourself. As you move up the ranks, its about making you and your team better.

That could be removing roadblocks by flushing out designs and specs like other people have mentioned, or finding better processes and practices to make the team more effective. Of course, there is also the proper introduction of new technology or techniques to raise the company forward as well.

Re: Ask HN: What non-technical skills make a senior dev and how to develop them?

#10
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.

Post reply on HN