The greatest software engineers in small businesses (or personal projects) don't do much development work. Instead they are working as true engineers: making good compromises and solving problems outside of the software which usually leads them into roles that don't have "software" or "engineer" in the title.
What Makes a Great Software Engineer? [pdf]
21–30 of 134 posts
Re: What Makes a Great Software Engineer? [pdf]
#22People 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…
In a big business, a software engineer is only a cogs that follows specific orders. I remember a blog of a former engineer of Microsoft that talked about it, he said that, in the past, Microsoft was direct, and having a technical meeting with Bill Gates was something usual. However, the company grow and those perks are long gone, now MS has a lot of bureaucracy and level and sub levels of complexity (so many executives and managers).
Re: What Makes a Great Software Engineer? [pdf]
#23I'm surprised to not hear an engineer's memory as an important correlator to skill. I find that working memory especially (or the lack thereof) really can hinder my performance when dealing with a complex problem. Sometimes I think it is THE defining factor!
Notetaking makes working memory much less of a issue. I recommend you find a way that works for you, if you're interested in career longevity as an engineer. Personally I alternate between todo lists for completion and coverage, and dialectics of theory and test for design and troubleshooting.
Re: What Makes a Great Software Engineer? [pdf]
#24I'm gonna go on a limb here, but I would say a great software engineer is someone that can block out email, slack, meetings, the huge noise of open offices and get some 'deep' work done.
Re: What Makes a Great Software Engineer? [pdf]
#25I'm gonna go on a limb here, but I would say a great software engineer is someone that can block out email, slack, meetings, the huge noise of open offices and get some 'deep' work done.
Re: What Makes a Great Software Engineer? [pdf]
#26I'm surprised to not hear an engineer's memory as an important correlator to skill. I find that working memory especially (or the lack thereof) really can hinder my performance when dealing with a complex problem. Sometimes I think it is THE defining factor!
Memory? It depends, knowing technical knowledge by memory is useless since we could use google. However, if memory means EXPERIENCE then, its a different matter. A seasoned engineer costs a lot more for this reason.
Re: What Makes a Great Software Engineer? [pdf]
#27I 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 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 projects of his or her own that aren't necessarily related to work, as well as thinks of programming beyond just a paycheck as a personal interest (just as a photographer or any other craftsman would).
I've hired many programmers. The most disappointing ones were ones that only did exactly what their work told them to do. They would never read technical stuff or things like Hacker News on their days off.
The best programmers were the ones that built pet projects for their own needs. I remember one guy would write a script to download new wallpapers for his laptop to cycle through the hours of the day. If I recall correctly, Gmail was an engineer's pet project (when 20% time existed). Some contribute to Stack Overflow; others to open-source and to blog posts.
It's a lot like being a good restaurant cook or musician. You enjoy cooking, not just for the pay, but for how the craft empowers you. A good cook will think about what sides will pair with that steak, while an average cook will probably robotically sling together a dish. A good engineer will show passion.
Re: What Makes a Great Software Engineer? [pdf]
#28I 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.
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.
Re: What Makes a Great Software Engineer? [pdf]
#29I 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…
It's a relief because whatever energy I have left I spend on books, articles, papers. Those things have helped my 9 to 5 in a big way. I bring what I learn to the job.
It doesn't beat hands on practice. I do itch to work on practice projects and I'm hoping when the kids are a little older, I'll have more time and energy for that.
In any case, my kids are my number one. The day my first was born was the day my motivations and my reason for being shifted.