Live data from Hacker News

What Makes a Great Software Engineer? [pdf]

faculty.washington.edu

41–50 of 134 posts

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

#41
post #13

I don't get the "9 to 5 wouldn't make you a great engineer" about not being passionate, some people are passionate but have other life obligations like kids or other activities. Being personable: "Can I have a beer with this guy?" is the worse in my opinion. I care about your professional skills and if you're communicating well, but you definitely don't have to be a beer buddy, we might have 15 years difference, a ve…

This. > Being personable: "Can I have a beer with this guy?" is the worse in my opinion. Social Drinking is a very western activity. In the East (India, Pakistan, China, etc...) a large majority of people are what are called "teetotalers" - never drink alcohol. Yet they socialize as much, if not more.

While I agree with you, in other industries such as hedge funds, "social drinking" is a regular thing.

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

#42
post #38

Earlier quoted context omitted.

> I don't get the "9 to 5 wouldn't make you a great engineer" about not being passionate, some people are passionate but have other life obligations like kids or other activities. I think what the engineer is trying to convey is that a great software engineer thinks about code beyond just the job. I don't think the engineer literally means being a workaholic or the literal 9am-5pm shift, but the engineer has pet proj…

I hear this sentiment a lot. I don't think it has much merit if any. Were musicians practicing scales daily 9-5 (+ occasional overtime when a customer urgently needs a modus they're not familiar with) - would you expect them to "enjoy" another 3h of fingering, possibly on some other instrument, in their spare time - because it "empowers" them and it's "a passion"?

I played a wind instrument for 10 years, ending in senior year of high school. I got quite good (if I do say so myself, lol) and had the opportunity to learn from a few excellent musicians in private instructions, chamber music, and the like. I have to say, I agree with the OP. The best musicians I knew critically listened to different pieces of music in their spare time, reflected on their performances, and so on. From what I could tell, music permeated every aspect of their lives, even if they weren't spending their free time practicing technical fundamentals. Their love of the art was such that I don't think they could stop that if they even tried to.

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

#43
post #38

Earlier quoted context omitted.

> I don't get the "9 to 5 wouldn't make you a great engineer" about not being passionate, some people are passionate but have other life obligations like kids or other activities. I think what the engineer is trying to convey is that a great software engineer thinks about code beyond just the job. I don't think the engineer literally means being a workaholic or the literal 9am-5pm shift, but the engineer has pet proj…

I hear this sentiment a lot. I don't think it has much merit if any. Were musicians practicing scales daily 9-5 (+ occasional overtime when a customer urgently needs a modus they're not familiar with) - would you expect them to "enjoy" another 3h of fingering, possibly on some other instrument, in their spare time - because it "empowers" them and it's "a passion"?

They don’t have to actually code outside work. I scratch my coding itch at my job.

But I read all sorts of technology and programming stuff just because I’m interested in it. And that knowledge ends up coming in very useful.

I’d rather have someone like me than someone who does their coding at work but never reads anything that they weren’t assigned to by their job.

To use your analogy, would you want to musician who worked 9 to 5 but never listened to any music outside of their job?

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

#44
post #13

I don't get the "9 to 5 wouldn't make you a great engineer" about not being passionate, some people are passionate but have other life obligations like kids or other activities. Being personable: "Can I have a beer with this guy?" is the worse in my opinion. I care about your professional skills and if you're communicating well, but you definitely don't have to be a beer buddy, we might have 15 years difference, a ve…

I've had coworkers who were obese, childless at a relatively advanced age (around 40), poor relationship with their significant other, etc. tell me about how they spend their downtime making sure their manager meets their deadlines and studying documentation, sometimes working til 2 in the morning. I'd rather just get laid off and collect unemployment for a few months then spend another week ruining my life like that…

I like programming and technology and reading about it and learning new things.

I’m never working 80 hours a week for someone to make them look good. No one should expect that.

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

#45
post #38

Earlier quoted context omitted.

> I don't get the "9 to 5 wouldn't make you a great engineer" about not being passionate, some people are passionate but have other life obligations like kids or other activities. I think what the engineer is trying to convey is that a great software engineer thinks about code beyond just the job. I don't think the engineer literally means being a workaholic or the literal 9am-5pm shift, but the engineer has pet proj…

I hear this sentiment a lot. I don't think it has much merit if any. Were musicians practicing scales daily 9-5 (+ occasional overtime when a customer urgently needs a modus they're not familiar with) - would you expect them to "enjoy" another 3h of fingering, possibly on some other instrument, in their spare time - because it "empowers" them and it's "a passion"?

I have been in music for some time, and this is almost exactly what great musicians do. There is definitely a time for activities that are ‘neccessary’ or ‘good practice’ to spend time on, and then there is a large amount of time they almost subconsciously spend in their field: they just enjoy having a beer with friends (at a jam session), having a chat (about music), hanging back (with their instrument), waste time on YouTube (watching poor quality phone recordings of musicians they look up to). Some don't think about anything else. Some have other interests. But I cannot think of one great musician that doesn't touch music when they're ‘off from work’.

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

#46

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…

This is one of the most objective views on "what makes a great software engineer" so far here. People who can focus generally deliver better work, even when they don't work on pet projects after work.

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

#47
post #13

I don't get the "9 to 5 wouldn't make you a great engineer" about not being passionate, some people are passionate but have other life obligations like kids or other activities. Being personable: "Can I have a beer with this guy?" is the worse in my opinion. I care about your professional skills and if you're communicating well, but you definitely don't have to be a beer buddy, we might have 15 years difference, a ve…

> Being personable: "Can I have a beer with this guy?" is the worse in my opinion I'm not going to disagree with you re: beer buddies. Really the way I read this is not as a requirement that employees participate in after-work events or in mandatory work friendships, but more of a misguided heuristic for something simpler. The general question is whether the average interaction with you is pleasant or not. If your jo…

That's a good point. Given the choice, I definitely would work with someone who's more pleasant to interact with. But my definition of "pleasant" in a professional environment is far away from my definition of "pleasant to have a beer with".

Like you can be a very friendly, chill, and fun person, but if professionally you keep overpromising, not own to your mistakes, pretend you know something when you don't (which could make you look cool outside of work but a pain at work), and other negative traits discussed in the paper, then I would avoid interact because you're not work-pleasant.

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

#49
Here is why working on your programming pet projects shouldn't become a metric.

The Japanese bullet train was redesigned by observing how nature works: https://www.vox.com/videos/2017/11/9/16628106/biomimicry-des...

"A moment of inspiration from engineer and birdwatcher Eiji Nakatsu changed all that."

Nakatsu did not become a birdwatcher to become a great engineer. So if you want to become a great engineer you follow what you want to do with your free time.

Also, I think people put too much emphasis on the degree of technicality over humanism. A unethical technical genius is not a great software engineer because there is no art in the engineering work. Great architects, chefs, and musicians view their work as arts with thoughts.

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

#50
post #49

Here is why working on your programming pet projects shouldn't become a metric. The Japanese bullet train was redesigned by observing how nature works: https://www.vox.com/videos/2017/11/9/16628106/biomimicry-des... "A moment of inspiration from engineer and birdwatcher Eiji Nakatsu changed all that." Nakatsu did not become a birdwatcher to become a great engineer. So if you want to become a great engineer you follow…

I can see both of these statements being misinterpreted, and in opposite directions, so I will offer my commentary.

(1) Metrics. Metrics tend to destroy the sort of motivation that allows a "task to be done for its own sake", where you are capable of immersing yourself fully in the details of a situation without excluding any "secondary" information (with respect to the metric or super-goal). Mastery of a task comes in part from being familiar with the fullest extent of phenomena within a domain. Pleasure proxies mastery by creating immersion, and is common for a hobby.

A master physicist knows all of physics. A civil engineer knows enough to build bridges. Only one of these people I would trust to make be able to create a new method of building bridges that wasn't incremental, or was based on a novel theoretical insight.

[building bridges might not be the best example because it's an older domain with a lot of time to be refined]

(2) I don't see technicality as being the culprit so much as an overfocus on technology. The "art" comes from either the amount of /craft/ that is put into the use of the technology or the amount of /humanity/, that is, consideration and care for how the users will perceive and receive the technology in an interpersonal manner. You mention three domains where aesthetics count but I don't think a focus on the study of aesthetics is necessary for us to apply the concept of art. These things can be done on engineering's terms.

Post reply on HN