Live data from Hacker News

What Makes a Great Software Engineer? [pdf]

faculty.washington.edu

1–10 of 134 posts

Re: What Makes a Great Software Engineer? [pdf]

#2
Seems to boil down to the same old tropes that apply to every kind of work, and every kind of person. A good {worker} works hard, works well in a team, is self-reliant(!) blah blah. A good person is honest, forthright, etc.

Outside of very specific fields I haven't seen anyone come up with specific qualities that identify great workers. And the useful attributes will be specific to a field. For height for basketball players, chances created for soccer players, on-base percentage for baseball, etc.

We don't like to say it, but maybe there's something similar in Software Engineering, like "Can code FizzBuzz in under 5 minutes". At the same time I recognise that coding quizzes are not the latest word on what makes a guy good at coding.

Re: What Makes a Great Software Engineer? [pdf]

#3
People skills. Empathy is hugely underrated and profoundly important. Whoever said "software is meant for other people to read, and only incidentally to be executed by machines" was on to something. All meaningful projects require cooperation and collaboration with other people. Most of the time, a solid coder with exceptional EQ will have more impact and effectiveness than an exceptional coder with indifferent (let alone subpar) people skills.

Re: What Makes a Great Software Engineer? [pdf]

#5

Seems to boil down to the same old tropes that apply to every kind of work, and every kind of person. A good {worker} works hard, works well in a team, is self-reliant(!) blah blah. A good person is honest, forthright, etc. Outside of very specific fields I haven't seen anyone come up with specific qualities that identify great workers. And the useful attributes will be specific to a field. For height for basketball…

It is definitely "ability to stay on task".

The difference between a great engineer and a mediocre one is the latter will just get distracted, stop working the problem and decide to go for good enough.

The great ones will work the problem, try multiple angles until something doesn't just work but offers the right balance of simplicity, elegance, future proofing and does the job well. You can't get there if every 5 minutes you take a facebook break, or can't grind through technical documentation and make experiments.

Re: What Makes a Great Software Engineer? [pdf]

#6

Seems to boil down to the same old tropes that apply to every kind of work, and every kind of person. A good {worker} works hard, works well in a team, is self-reliant(!) blah blah. A good person is honest, forthright, etc. Outside of very specific fields I haven't seen anyone come up with specific qualities that identify great workers. And the useful attributes will be specific to a field. For height for basketball…

It's a two-way street though. Some engineers work really well in management environments that others despise, some companies only want to hire engineers that don't need much training in their particular domain while others don't care as much, etc.

In order to establish criteria for universally assessing software development talent, we first have to decide what the perfect engineer looks like, and a lot of companies disagree on what that is.

Re: What Makes a Great Software Engineer? [pdf]

#8

Seems to boil down to the same old tropes that apply to every kind of work, and every kind of person. A good {worker} works hard, works well in a team, is self-reliant(!) blah blah. A good person is honest, forthright, etc. Outside of very specific fields I haven't seen anyone come up with specific qualities that identify great workers. And the useful attributes will be specific to a field. For height for basketball…

It is definitely "ability to stay on task". The difference between a great engineer and a mediocre one is the latter will just get distracted, stop working the problem and decide to go for good enough. The great ones will work the problem, try multiple angles until something doesn't just work but offers the right balance of simplicity, elegance, future proofing and does the job well. You can't get there if every 5 mi…

[deleted]

Re: What Makes a Great Software Engineer? [pdf]

#9
"Great" is in the eye of the beholder - to a large extent.

An engineer that is great in a startup ("hacker", "moves fast and breaks things") may be pretty bad in a well-established product that just needs maintenance. And the opposite is also true - a very thoughtful engineer that takes time to create thoughtful, simple & extensible designs may just move too slow when the idea was bad to begin with, and just needed to be invalidated. Also - who is "great", a generalist or a specialist? Depends a lot on what you need...

It is true that some engineers are simply better than others (I'll take Peter Norvig any day over someone who fails at fizzbuzz, regardless of the context/problem that needs being solved) - but it is also equally true that people need the right context to really shine. E.g. I bet Peter Norvig would't have done his best work working for, say, Accenture.

Re: What Makes a Great Software Engineer? [pdf]

#10
Homer doesn't spent time describing Helen in the Iliad. He knew one thing or two about describing an ideal I guess. Of course beauty is orders of magnitude harder to define. The baseline principle is the same though: The moment you restrain what a good engineer is/looks like your argument starts loosing ground.
Post reply on HN