News for hackers. Stuff that matters.
Re:What I’ve Learned in 45 Years in the Software Industry by xyzelement on Wednesday January 06, 2021 @11:16AM (#25659022)
What you're saying is important for everyone to internalize. I'll spin it like this:

Your job satisfaction/pay are a function of your impact. Your impact is a function of your leverage.

If you're a "pure coder" who doesn't have any of the other skills you mentioned, your output is incredibly limited. At best, you produce a day's worth of code in a day, but you also require someone to manage you closely to make sure you code the right stuff.

The more of these other skills you have, the more you can (a) work independently (b) make others more productive and (c) make sure your team/business is doing the right things and (d) drive overall efficiency.

The more of these things you do, you become orders of magnitude more impactful than a pure coder.

Re:What I’ve Learned in 45 Years in the Software Industry by KineticLensman on Wednesday January 06, 2021 @11:48AM (#25659401)
Agree.

One of the most important skills is the one he describes like this:

>> The more specialized your work, the greater the risk that you will communicate in ways that are incomprehensible to the uninitiated.

In my experience (35 years), this isn't just about knowing the right way to describe things, it's also understanding what things to concentrate on when communicating, and what to ignore. If you are a tech person communicating with a decision maker, they are typically looking to understand options and their implications and risks, not the details of how the options work. They can then decide, based on their (presumably) better knowledge of the wider context, which options to select. If the decision makers are genuinely intelligent and motivated, but their eyes glaze over when you describe something, chances are you have chosen the wrong things to communicate to them.

Re:What I’ve Learned in 45 Years in the Software Industry by xyzelement on Wednesday January 06, 2021 @12:11PM (#25659678)
Yup. I agree with you (and your pragmatic approach to helping the raptors!)
Re:What I’ve Learned in 45 Years in the Software Industry by KineticLensman on Wednesday January 06, 2021 @02:55PM (#25661467)
Thank you! (Actually the raptor conservancy [0] is interesting from this perspective as well. I'm a newbie / junior in that context, but I can see standard employee patterns that I recognise from the tech industry, e.g. in terms of people who know to report and / or delegate well, or to make effective decisions vs. be indecisive. Perhaps I'll have to see if I can document my observations on what I've learned in my career).

[o] https://news.ycombinator.com/item?id=25650535

Re:What I’ve Learned in 45 Years in the Software Industry by Dirlewanger on Thursday January 07, 2021 @08:13AM (#25670601)
Very well said. It's stuff like this that makes me think all CS majors need some sort of business communications requirement, something to at least give a foundation on how to speak to decision makers.
Re:What I’ve Learned in 45 Years in the Software Industry by yowlingcat on Thursday January 07, 2021 @10:39AM (#25672206)
Good business communication is something you only learn by /doing/ it. Expecting a course to facilitate that is flawed. I'd be all for increasing the roles of internships in CS education in order to accomplish that -- and I have noticed that's begun to happen as well. CS majors these days have internships lined for summer and winter if not more (especially due to COVID). I am sure they'll learn a lot more than I did during that era of my life just by sheer osmosis.
Re:What I’ve Learned in 45 Years in the Software Industry by Kevguy on Thursday January 07, 2021 @01:12PM (#25674879)
If it is a good course on business communication they _should_ be doing it - in class. And getting feedback and suggestions on improving with every attempt. Internships are a wonderful thing but many people don't realize how they are coming across so don't look to improve. There is some learning by osmosis, but mostly people keep doing what they have always done because it works (as far as they can tell).
Re:What I’ve Learned in 45 Years in the Software Industry by yowlingcat on Friday January 08, 2021 @09:20AM (#25684943)
> they _should_ be doing it - in class

They won't be doing it, they will be doing a simulation of it. How are they going to learn business communication without doing it in the context of a real business with a real P/L line and real consequences for good and bad execution?

Re:What I’ve Learned in 45 Years in the Software Industry by closeparen on Wednesday January 06, 2021 @02:45PM (#25661377)
This is the party line. It misses that “a day’s worth of code” is highly unequal across individuals. The people whose “day’s worth of code” are most valuable, quickly get pulled off of spending their days that way.

It appears that they key skill is coordinating a lot of developers, because the ones left developing are the ones you need a lot of (and who need close supervision) to get anything done. Managers will never rock this boat, because their career KPI is the number of people they manage.

Re:What I’ve Learned in 45 Years in the Software Industry by astrange on Wednesday January 06, 2021 @10:30PM (#25666947)
That means you have bad middle/upper management. Large tech companies have heard of the Peter Principle and don't promote this way; they have separate technical tracks.

Which is not to say they're doing everything right.

Re:What I’ve Learned in 45 Years in the Software Industry by q-big on Thursday January 07, 2021 @04:15AM (#25668953)
> That means you have bad middle/upper management. Large tech companies have heard of the Peter Principle and don't promote this way; they have separate technical tracks.

Relevant: https://www.spakhm.com/p/parallel-tracks

"Why did all major software companies settle on parallel career tracks? To keep engineering managers from developing loyalty to engineers."

Re:What I’ve Learned in 45 Years in the Software Industry by 121789 on Thursday January 07, 2021 @04:04PM (#25677450)
That doesn't really jive with my personal experience, which is that contributors really don't want the only path to career progress to be a transition to management. I saw this happen firsthand at a consulting company--the technical side was pushing for the split, not the current level of management.
Re:What I’ve Learned in 45 Years in the Software Industry by wolco2 on Wednesday January 06, 2021 @11:11PM (#25667193)
Having a tech track is the right direction.

Having no track even better. Some people like what they are doing and the field is constantly changing. You want your best surgeons doing operations not managing other doctors.

Re:What I’ve Learned in 45 Years in the Software Industry by astrange on Wednesday January 06, 2021 @11:28PM (#25667280)
I think that would encourage not getting raises.

You need some kind of title so people can feel responsible for career growth and so you can calibrate against other companies' pay at least; it doesn't need to control what kind of work you're allowed to do.

Re:What I’ve Learned in 45 Years in the Software Industry by ghaff on Thursday January 07, 2021 @10:12AM (#25671928)
Even if they don't transition to managing people, someone in an individual contributor role presumably needs to be growing in some way if they want to get raises. While someone doing something valuable even without growing will probably continue to get small raises anyway, it's not the ideal path.

And, as you say, to the degree that position titles mean something cross-company, it gives a point of comparison.

Re:What I’ve Learned in 45 Years in the Software Industry by closeparen on Thursday January 07, 2021 @03:58PM (#25677370)
People high on our technical track don't spend their days on code. The job of a Staff, Sr. Staff, or Principal engineer is about coordination, negotiation, and consensus-building across bureaucratic distances. Most only look at architecture diagrams. Some review code. Vanishingly few contribute. When they do, the contribution is about keeping their skills fresh and their understanding of the project grounded in reality. It's not not what they're really getting paid for.
Re:What I’ve Learned in 45 Years in the Software Industry by that_guy_iain on Wednesday January 06, 2021 @03:00PM (#25661522)
> If you're a "pure coder" who doesn't have any of the other skills you mentioned, your output is incredibly limited. At best, you produce a day's worth of code in a day, but you also require someone to manage you closely to make sure you code the right stuff.

This seems to miss the point of teams. Everyone should have a role if you hire someone as a software engineer and they spend all their time doing devops because they like it more you've made a bad hire. If all your engineers are having product meetings with various departments then you've again made bad hires. Everyone should have their role and fullfill that role to work as a successful team. People thinking they're above fullfilling the role they were hired for is one of the fast ways to have a poor performant team. To put this into sports you don't want your defender to be constantly hanging around the other team's goal mouth.

Re:What I’ve Learned in 45 Years in the Software Industry by chii on Wednesday January 06, 2021 @08:12PM (#25665843)
And yet, there's incentive for somebody (say, in soccer) to try and score a goal even tho it's not their role - because scoring a goal is rewarded to the individual.

Individual coders/contributors' compensation don't scale until they are shown to "score a goal". And yet, to do so, they may have to stop contributing in their usual, assigned role, but go "above and beyond" - such as redesigning the system, or to make their mark on the product and be recognized as such.

This, i find, is probably what the fundamental problem/friction with teams are.

Re:What I’ve Learned in 45 Years in the Software Industry by AgentOrange1234 on Thursday January 07, 2021 @01:17AM (#25667851)
I can appreciate how this kind of specialization helps a team to scale. At the same time, what I like least about my current job is how structured my role is. ‘Draw within the lines’ is constraining and can push creative folks away.
Re:What I’ve Learned in 45 Years in the Software Industry by fairity on Thursday January 07, 2021 @12:47AM (#25667679)
> The more of these things you do, you become orders of magnitude more impactful than a pure coder.

Your job satisfaction/pay are also a function of how unique your skillset is.

With this in mind, increasing your impact (through soft skills) is just one of two ways to increase pay - the other way is to do something that not many others can do. For many people, doing something unique is far more satisfying than dealing with people problems.

Re:What I’ve Learned in 45 Years in the Software Industry by grogenaut on Thursday January 07, 2021 @01:43AM (#25667975)
I will point out that a lot of engineers are bad communicators, and those that are not often change roles. So communication is a unique skillset. As is understanding the business.
Re:What I’ve Learned in 45 Years in the Software Industry by matthias509 on Thursday January 07, 2021 @10:46AM (#25672308)
> For many people, doing something unique is far more satisfying than dealing with people problems.

These are not mutually exclusive. If you want to accomplish big unique things, you can't do it yourself. You are going to have to convince others that your big new idea is worth doing so that they will help you achieve it.

Re:What I’ve Learned in 45 Years in the Software Industry by mcguire on Wednesday January 06, 2021 @06:03PM (#25663940)
"Your job satisfaction/pay are a function of your impact. Your impact is a function of your leverage."

I'm skeptical. I mean, sure, for most people, the ability to convince a large number of other people to do things, to do your things, without worrying how they do it, is going to have more impact than any other contribution they could make.

On the other hand, Van Jacobson's algorithm is like four lines of code (I used to know where it is in *TCP/IP Illustrated, Vol II.) and is responsible for the Internet as we know it. That's an awful lot of impact.

Re:What I’ve Learned in 45 Years in the Software Industry by xyzelement on Wednesday January 06, 2021 @08:32PM (#25666049)
I don't think we disagree. I hadn't heard of Van Jacobson but a quick glance at his wikipedia doesn't make it look like he was just a "pure coder" in the cartoonish sense of someone who doesn't know what's important and can't collaborate with others.
Re:What I’ve Learned in 45 Years in the Software Industry by asiachick on Thursday January 07, 2021 @12:33AM (#25667609)
I'm not sure how "(a) work independently" fits. In fact it seems the opposite. The whole point is about working with and influencing others. That's not "working independently"
Re:What I’ve Learned in 45 Years in the Software Industry by tremon on Thursday January 07, 2021 @06:17AM (#25669756)
"Working independently" is not the same as "working in isolation". Not sure that this is also what the GP meant, but "work independently" usually means that you understand what the business needs and can initiate new tasks on your own, without waiting for someone to tell you what to do.
Re:What I’ve Learned in 45 Years in the Software Industry by one2know on Wednesday January 06, 2021 @12:58PM (#25660303)
Found the manager. This is just more developer hate drivel. Yes, if you think managers are more valuable, then obviously you are going to say engineering work is "incredibly limited" and manager activities are "orders of magnitude more impactful" Listen, no amount of ass kissing and brown nosing is going to solve actual tech problems.
Re:What I’ve Learned in 45 Years in the Software Industry by macintux on Wednesday January 06, 2021 @01:13PM (#25660447)
This tone is unwelcome on HN, which is probably why your previous comments have often been downvoted and flagged.
Re:What I’ve Learned in 45 Years in the Software Industry by one2know on Wednesday January 06, 2021 @02:18PM (#25661112)
Bashing and shit talking software engineering profession is welcome on HN?
Re:What I’ve Learned in 45 Years in the Software Industry by macintux on Wednesday January 06, 2021 @03:04PM (#25661579)
Let me paraphrase the original comment to make my next question easier to answer:

Effective software engineering in a business context requires awareness of business needs.

Which part of that is “bashing and shit talking”?

Re:What I’ve Learned in 45 Years in the Software Industry by mcguire on Wednesday January 06, 2021 @06:08PM (#25663978)
How about,

Effective software engineering in a business context requires awareness of business needs as well as the technical skills to address those needs.

Re:What I’ve Learned in 45 Years in the Software Industry by xyzelement on Wednesday January 06, 2021 @08:33PM (#25666054)
Nobody would argue with this.
Re:What I’ve Learned in 45 Years in the Software Industry by usefulcat on Wednesday January 06, 2021 @03:00PM (#25661520)
It sounds like you're making assumptions in bad faith. I'm a SWE (i.e., not a manager) and I didn't read the comment at all like you did. On the contrary, I quite agree with it.
Re:What I’ve Learned in 45 Years in the Software Industry by one2know on Wednesday January 06, 2021 @04:01PM (#25662428)
Well, as someone who has saved my company's ass multiple times to the tune of millions of dollars I think technical solutions are orders of magnitude more impactful and foofoo talk bullshit is incredibly limited. So I guess we will have to agree to disagree. Maybe noob coders "produce a day's worth of code" and that's all they can do, that's your perspective.

I've sat through dumb two hour meetings about deciding which words in a document should be capitalized. Is that what is meant by "make sure your team/business is doing the right things?"

Re:What I’ve Learned in 45 Years in the Software Industry by steve_adams_86 on Wednesday January 06, 2021 @04:22PM (#25662674)
I think what you're missing here is that the original comment isn't suggesting code doesn't solve problems when it counts. The thing is, developers often code things they never needed to. Or they code things off spec. Or they code things outside of the convention of what's appropriate for their immediate team or long-term needs of the product. The list goes on. Output could seem good for a long time before it becomes problematic, then the pure coder simply codes more to solve those problems. This is very circular and makes up a lot of work done by software developers in my experience.

I agree with what you're saying in part. Pure coding skills are essential, especially in critical situations like that. Soft skills won't fix broken things, for example. Salespeople can't deliver the features they promise without someone to develop them.

However, soft skills can help someone with excellent coding skills to know what to apply their skills to and when, and how to integrate their skills within a broad team of different disciplines.

This is arguably true in any field; I think it's often missed in software development because people have such a difficult time distinguishing boundaries of things. The problems you're solving, when you're passively or actively solving problems, when output is applicable to a specific problem, etc. Even software engineers themselves struggle with this.

Your ability to save your company's ass is an excellent skill to have, but it isn't directly related or exclusive to what the original comment was saying.

Re:What I’ve Learned in 45 Years in the Software Industry by one2know on Wednesday January 06, 2021 @04:36PM (#25662879)
You have a very noob view of software engineering. You make a lot of generalizations about coders to support the theory that coding is low impact because coders fuck up a lot. Noob coders fuck up a lot.

When I saved my company's ass those times, no non-technical people were present and it was wholly technical knowledge that solved it. I could have and probably should have ignored the problems and let the talkers try to fix it and take the blame for millions in losses. So it is very apropos to the original comment.

Re:What I’ve Learned in 45 Years in the Software Industry by steve_adams_86 on Wednesday January 06, 2021 @10:43PM (#25667037)
a) I never said coding is low impact, although I do believe software engineers make a lot of mistakes b) my generalizations are very common in software c) saving companies’ asses with code is not common d) I will never not be a noob
Re:What I’ve Learned in 45 Years in the Software Industry by collyw on Friday January 08, 2021 @04:25AM (#25683035)
The tech lead at my place has just burned himself out and quit after making a load of poor decisions. He reinvents the wheel over and over again rather than use some prebuilt solution. I am going to have to maintain his undocumented, untested code. Experienced coders can be just as bad for over-engineering as noobs.
Re:What I’ve Learned in 45 Years in the Software Industry by astrange on Wednesday January 06, 2021 @10:33PM (#25666970)
> Well, as someone who has saved my company's ass multiple times to the tune of millions of dollars

Even though it sounds good, this is actually a bad measure because all coding consists of constantly making new zillion-dollar mistakes and then fixing them as you go. You can always do a worse job, and if we're supposed to be impressed by you visibly fixing something, then mess up and fix you will.