Live data from Hacker News

What Makes a Great Software Engineer? [pdf]

faculty.washington.edu

31–40 of 134 posts

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

#31
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 job requires interacting with others (as it often does in software teams) and you're generally unpleasant or difficult to interact with, then people might avoid interacting with you, and that's a hit on everyone's ability to do their job. On the flipside, someone who's easy to interact with can be a great resource to everyone and also learn from all the people they interact with.

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

#32

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…

> A good {worker} works hard [...]

Trustworthy, loyal, helpful, friendly, courteous, kind, obedient, cheerful, thrifty, brave, clean, and reverent!

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

#33
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…

Personally I've always hated the concept of beer buddies because if you didn't grow up with it, it's an entirely different type of interaction with different expected levels of intimacy. the people who will pass the beer buddy test will primarily be people who grow up with its culture and creates a monoculture. Perhaps not mono-racial but definitely mono-culture.

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

#34
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 tbh

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

#35
You make a great software engineer by practicing solving hard problems. There isn't any secret formula or mystique. It is thousands of hours spent solving problems of ever greater difficulty.

If you confine your practice to the 9 to 5 job then you are investing fewer hours than somebody who writes open source at night, and will likely be a weaker programmer. If you aren't independently finding new problems to solve then you will be a weaker programmer than somebody who is constantly stepping up their game. If you lack confidence and need frameworks, abstractions, and other bullshit to write a couple lines of code you will be a weaker programmer.

Simple. No magic.

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

#36

You make a great software engineer by practicing solving hard problems. There isn't any secret formula or mystique. It is thousands of hours spent solving problems of ever greater difficulty. If you confine your practice to the 9 to 5 job then you are investing fewer hours than somebody who writes open source at night, and will likely be a weaker programmer. If you aren't independently finding new problems to solve t…

I think it might true that the guy "who writes open source at night" will generally be the better programmer, although it is not a necessary condition for being a good SE

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

#37
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…

I don't think, and I absolutely don't think not joining a party would make one's interaction with another person unpleasant. I have seen both types. My old boss doesn't go to party much, but he's absolutely the easiest person to work with.

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

#38
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 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"?

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

#39

You make a great software engineer by practicing solving hard problems. There isn't any secret formula or mystique. It is thousands of hours spent solving problems of ever greater difficulty. If you confine your practice to the 9 to 5 job then you are investing fewer hours than somebody who writes open source at night, and will likely be a weaker programmer. If you aren't independently finding new problems to solve t…

> If you lack confidence and need frameworks, abstractions, and other bullshit to write a couple lines of code you will be a weaker programmer

So you like to reinvent everything? Do you reinvent HTML & CSS because they are FRAMEWORKS, one of the foundational frameworks of today's web.

If your job only ask you to fix a bug, there here is how to make yourself valuable AND technically challenging:

* go through the bugs and analyze if you can extract any correlations

* propose better process with other fellow engineers and product owners

* implement changes

For example, someone might be duplicating some code to write tests, how about you write a test harness or adopt some open-source harness? How about work with your fellow engineers to begin start collecting some metrics.

Otherwise, time to look for a new opportunity. The absolute worst kind of programmers are the ones who don't don't take care of their health.

Post reply on HN