Hacker News new | ask | show | jobs
by lordnacho 154 days ago
I don't think it has ever been the case that you could neglect soft skills. You will hear this over and over, in every area of every business: people become successful by adjusting their behaviour to what works for the business. Sometimes this is called being a slick politician, sometimes it is called avoiding getting bogged down in politics.

But it's never been the case that a dev could just focus on technical things and not spend any time figuring out the context they are working in, and behaving accordingly.

My first day of work, this is what my boss said to me: "Look at this trading floor. There's screens everywhere, everything is numbers. Deltas, gammas, vegas. Everything is calculated by computers. But don't forget, every business is a people business!"

12 comments

It's the vibe coders who would love to pretend that the opposite end of the spectrum from them is "artisinal coding."

They honestly have no idea what "software engineering" in a professional context even looks like. So they come up with this prattle.

The jargon is getting more & more obtuse every year...

Also, a major feature of "vibe coding" now is the rough edges on UI design that don't make sense at all... It's pretty obvious that code bases aren't evolving because these systems can't handle complex prompts while retaining features from prior releases, and it seems like functional testing for releases has now become the kid who can't speak that fell down a well... Oh well.

Vibe coders are the new circa-2000 cross-trained front end web developers.

Without industry experience and/or software engineering education, they zoom past a lot of hard-won lessons.

E.g. the node.js packaging ecosystem wouldn't have committed so many own-goals if it'd been designed by people with more historical awareness

In time, vibe coders will rediscover test driven development, but until then you'll have to deal with watching monkeys try to construct buildings by stomping hard and frequently enough that the atoms self-assemble.

Blaming people who use technology to make a valuable process accessible to themselves and then invoking a a no-true-Scotsman in order to defend the status quo is a good example of a lack of soft skills.
But the process is still inaccessible to them, provided we consider achieving reliability and security goals of said process. And no, this is not "no true Scotsman;" "vibe coded" software is demonstrably inferior in numerous ways, and outright dangerous in some contexts. No number of carefully scripted demos or PR campaigns is going to change this reality.
The joke about vibe coding replacing junior devs is apt, because it has the same failure mode -- it can build something that works, but completely incompetently and with unmaintainable design choices.

Consequently, this was the reason businesses had junior devs partnered with senior devs! It's not surprising that when you pair junior devs (human) with junior devs (gen ai coding) you still get junior dev issues.

Personally, I think AI coding tools being able to translate incomplete junior dev thinking into senior dev work is an impossible task. There's just not enough initial intent signal in the novel task use case (read non-'CRUD LOB app').

I do think eventually we'll have complementary expert tools that perform a senior dev-alike function (arch and security review), but that's a harder problem that likely isn't going to be economically viable as a product until/unless AI coding tools achieve substantial penetration.

> make a valuable process accessible to themselves

I am directly calling into question the "value" of that process. It's also becoming increasingly clear that these tools just whitewash away the copyrights of the materials they were trained on and still mostly reproduce when asked. This would then actually be the destruction of value.

> invoking a a no-true-Scotsman

I did not. This is in response to an article. It demonstrates a clear lack of understanding of professional software engineering and instead imagines that writing a good spec is all there is to actually do. It displays a definite lack of understanding of the fundamentals of engineering or of profitable business.

> is a good example of a lack of soft skills.

You seek appeasement instead of understanding and you call into question my skills? I see now what you think this forum is for.

> I see now what you think this forum is for.

Calling you out for being overly critical is not 'seeking appeasement'. I am calling your skills into question -- why shouldn't I? Your soft skills seem to consist of attacking people when you don't like what they have to say.

Trotting out fallacy names on regular basis isn't going to win you any points.
> But it's never been the case that a dev could just focus on technical things and not spend any time figuring out the context they are working in, and behaving accordingly.

This is factually wrong. Until a few decades ago in tech, and it's still like that in most economic sectors and I dare say most countries, it's the managers that take the role of figuring out the organization and interfacing with other teams. An engineer being only in charge of technical issues but nothing business-related was the norm; that would yield no promotion into management, of course, but still the norm.

Yes, but it goes more far than that: You will have to participate in meetings, you will be asked to joing for a lunch, you will be asked to contact a customer/devcontact there, you will be asked to attend some events, you will be asked to communicate with others etc.

You are not existing as isolated particle in vacuum behind your screen :-)

IDK, at many large orgs...there are developers that essentially communicate through "tickets" and "their lead"... and Def never talk to "business" people or customers. It's not very rare if you get a large enough org.
In other large orgs, the managers are in a parallel universe playing status games while the devs self-organize to get anything done. The soft skills involved in doing that wind up being completely invisible to the status universe.
> The soft skills involved in doing that wind up being completely invisible to the status universe.

Are you referring to the work the managers are doing or the devs are doing as being invisible?

Both, actually, but in the case I'm thinking of the devs with the strongest leadership skills in terms of organizing their peers to make things happen were completely invisible to management who were playing a different game. Just like their game was invisible to the devs shipping product, who didn't understand the implications on their careers. Saw a couple of great unofficial leaders get fired and a bunch more leave due to the disconnect. It caught up to the managers later, turned out their people skills weren't good enough after execution ground to a halt.

(Not all managers, this was a special degenerate case, but it's worth considering that different people have different goals/incentives/values. It's not always a straight line to "delivering customer value" that is only held up by a lack of people skills.)

I have seen a number of organizations throughout my 20 ish year career that have a policy of “developers don’t meet with customers”.

I am not endorsing it and I think it’s poor form, but it absolutely exists. You are in a weird bubble if you think there haven’t been engineering jobs where a dev could only care about code.

I neglected soft skills and I survived so far. I'm bad at soft skills and I probably have some sort of mental disorder like autism or something. I don't really care, I don't enjoy interacting with people and I prefer interacting with machines as much as possible. I've found a place that pays me for my technical skills and does not bother me with human interactions, I think there are more places like that in the world.
> I think there are more places like that in the world.

There are but not as many as we might like.

I’d say I’ve learned to be decent on the soft skills side but it comes at a cost and the need to overutilise them can be incredibly draining.

So many places run Agile so it feels like software engineering for noisy extroverts but, to me, it just makes it so hard to get anything done, and I see others struggling the same way.

One of my pet peeves is how bad people are at, or perhaps how unwilling they are to embrace, asynchronous communication. Again, this favours the extroverts.

And then one key advantage of written communication nowadays is I can ask an LLM to help me with it so my message lands better. More than once, when dealing with particularly frustrating situations, I’ve asked ChatGPT to rewrite an email for me “so that I come across as a reasonable human being rather than a deranged psychopath”. It works.

>So many places run Agile so it feels like software engineering for noisy extroverts but, to me, it just makes it so hard to get anything done, and I see others struggling the same way.

Interesting. I'm very introverted too, but I worked at one Agile place, and it was like a dream for me. Maybe it was just the way they implemented it. What I liked was that I didn't need to talk to people much, outside of the bi-weekly planning meetings (which were large enough that I didn't have to actually speak up much). Instead, we used Jira to track everything: tasks were broken down into tickets, and I could see at a glance what everyone on the team was working on at the time, what work remained to be done, etc. When I finished a task and put it up for review, I could just go find another unassigned ticket and grab that and start working on it, instead of having to talk to anyone (like the boss). We did a lot of code review too, but here again, it was all through Jira/Gitlab/etc., not in person. So I could spend time reviewing other people's merge requests, writing my comments, etc.

The only time I really needed to talk to team members was 1) during the morning stand-up, which was quick, 2) during the bi-weekly sprint review and sprint planning meetings, and 3) if someone was stuck and wanted to work together in-person on a problem (not often).

By contrast, I'm now stuck in a poorly-run place doing waterfall development, and it's awful. I don't know what anyone is working on usually, because everything is verbal (we do use Jira, but I can only see my own pre-assigned tasks), I don't have a good idea of what the group is doing, the timeline for anything, how anything is progressing, if there's other things I could help with or add input to before someone goes the wrong direction, etc. The manager just runs thing in a completely authoritarian manner. I wish I could just go back to my old Agile workplace.

I respectfully disagree. Over 3 decades as SWEs I have seen many devs who did absolutely nothing but hack - two of them were autistic too. The “everything is numbers” is small fraction of the industry but perhaps since this is HN maybe resonates more with people?
Very likely way more than 2 of them
It depends on what you want to achieve as a developer, I think. Having some soft skills makes a lot of things easier, but if you don't have the hard skills to back it up, you'll plateau unless you switch to management before you reach your limit.

At the same time, if you're very good at what you do, soft skills are a lot less important. Most of my peers would rather work with brilliant jerk than a friendly average person.

But most people are not brilliant, and then you can't afford to not have soft skills.

> Most of my peers would rather work with brilliant jerk than a friendly average person

I worked with one of these. Every interaction was miserable and stomach-turning. He slowed the project down in a number of ways. A friendly average person would have been a net gain.

>A friendly average person would have been a net gain.

I'm perfectly happy to have a friendly, average person as my boss, as long as he has good people skills and is pretty good at managing a team. He doesn't need to be technically brilliant at all.

By contrast, working with a boss who's a technically brilliant jerk is an absolutely miserable experience. Companies that make a habit of promoting brilliant jerks into management positions should be avoided.

What was his role? How did he slow the project down? I ask because quite often, the value of "soft skills" is exaggerated. In almost 20 years of software engineering I have met some of the worst personalities imaginable. Yet, I cannot think of a single time somebody's personality got in the way to such an extent it slowed the project down. Some problems can't be solved by average people. In such cases, bad social skills with above average intellect will go farther than average intellect with good soft skills.
I know an example. A tech lead who would demand every single task to be done in certain ways and go through a certain processes. Invading other team's PRs and slack channels in order to pick fights because they weren't using his microservice or his libraries. Claiming "if you're not working like us, then you're wrong". Asking people to make PRs but then not approving. Before being demoted, his team had ZERO new features delivered for about a quarter. To me that's an example of slowing down teams.

But if you mean you want someone "brilliant, but an asshole", then I agree with you. I find that the common examples are more about incompetent managers who can't make the best of an IC who can work well in isolation.

What you describe is definitely not a person with hard skills, so it's not relevant to the current discussion.
I was answering to a specific post that doesn’t mention or imply it, plus I mention exactly what you say in my second paragraph which you most certainly missed.
Not OP, but I did work for a boss once that was technically very strong, but not as strong in terms of planning and scheduling work. It was a very difficult process, because I couldn't deliver what they wanted, as what they wanted changed both during and after delivery. Most things I delivered, which were what we agreed upon before delivery, were rewritten as they did not envision or plan work in advance. Technical skills are not a panacea; professionalism is a multidimensional skill matrix.
Exactly: being able to quote esoteric facts and trivia about CPU instruction sets or compiler features and use those while working doesn't automatically make someone adept at planning and leading a team of developers. However, some companies think the opposite, and the end result is not good.
Every PR has to match their way exactly.

The logic, the method names, the test names, code in the log messages.

Does not matter what the output or complexity is, does not matter how the previous state of the code in the area looks like, it. Must. Look. And. Read. Their. Way.

A 3 file PR review can take weeks. There was once a PR for a new feature that took 1.5 years and 2 developers (the og op left the company 3 months into having opened this PR) to eventually merge.

>Most of my peers would rather work with brilliant jerk than a friendly average person.

If that’s true, you work somewhere very strange. Almost everyone hates dealing with assholes.

People want results. Brilliant assholes produce those, so you tolerate the annoying parts. Would be great if they were also kind, but I'll take a house built by an asshole over a tent erected by a friendly person.

It's not a dichotomy, obviously. There are plenty of very smart people who are also pleasant to be around. But if they're either strong in soft skills _or_ in hard skills, I prefer them being asshole over them not contributing but being nice.

Very often in my experience, people with too many soft skills and too little hard skills are at best dead weights, at worst con men, which are a special kind of asshole you REALLY don't want to deal with.

Of course the best is to have both hard/soft skills, which is not as rare as people assume.

>Very often in my experience, people with too many soft skills and too little hard skills are at best dead weights, at worst con men

No, these are the people who should be moved into management positions. They can spend time on all the soft-skill stuff that ICs don't want to spend time on, like dealing with upper management, leading meetings, etc. They don't need to have the best hard skills, just enough to understand at a higher level and communicate with others in and out of the organization, and they can refer to the experts in their teams when they need more detail.

I completely disagree. Managers who don't have knowledge can do way too much damage.
Hard disagree. I've yet to see a "brilliant asshole" with anywhere near the kind results I expect from my teams. The usual pattern is your typical asshole will ship broken stuff and then blame everyone else for the breakages.

Now, average assholes who self-promote as brilliant and hope no one will see through their crap, sure, plenty of those. I'd recommend against failing to see through their crap, though. They'll make your actually good engineers leave.

Maybe you had those average assholes masquerading as brilliant? I don't know that of course, but "ships broken stuff" doesn't sound particularly brilliant to me.

I'm thinking of the type that builds things that you can stack up against the output of others and comes out miles ahead. I have one of those in my team, and it feels like a force of nature: he independently does in a month what a team of five did in three, and his work is of better quality. Of course I'll cut him a lot more slack.

> if you're very good at what you do, soft skills are a lot less important

Empathy is more than butter. It also lets you uncover why the requirements should be what they are.

There are roles where buried brilliance works. But it’s usually in academia or the military. Not commercial work.

I have no experience with the military and very little with working in academia, but a lot with commercial work, and I've seen it work many times. Clearly those people wouldn't be the ones talking to customers or leading teams, but it's worth a lot to have someone that can tackle hard problems.

I'm not at all saying that you can only have one or the other, or that soft skills don't matter at all. It's just my experience that output matters a lot more than people say in these types of conversations.

To me looks a lot more like the cliche Diva in music - are you really going to not work with someone extremely talented just because they're difficult to work with and you wouldn't want to hang out with them?

> it's worth a lot to have someone that can tackle hard problems

Oh, absolutely. My point is those personalities are almost common in the military and academia. They’re rarer in commerce because there aren’t that many niches where hard problems exist independent of peoples’ preferences. (As in, choosing how to scope the hard problem is part of what makes it hard. And the scoping that works best isn’t going to be found in isolation from customers and others working on the problem.)

> Most of my peers would rather work with brilliant jerk than a friendly average person.

I think you need to be more specific than just "avert" the trope without elaborating. Others have commented how a brilliant jerk can slow a project down, but I get the impression that you are thinking of someone who is not sociable, not interested in business goals, very direct and perhaps even pessimistic about others' ability, but hand them a technical task and they can deliver exceptional results. This is opposed to, say, someone who is sociable but can't deliver anything without constant attention or handholding.

Yes, absolutely. I'm not talking about people who are not sociable _and_ can't produce, but people who don't care about your feelings, but are very strong in their work.

In other comments, it felt like they focused very much on the "low in soft skills" part without looking at the other skills being extended. Of course, someone who is unpleasant to work with and only writes buggy software will not help a project progress. But someone you don't want to spend time with but who carries your team through the project with his skill and productivity is a very different story.

If you can isolate the brilliant jerk to do something that needs very little coordination with others, that can work.

But at least where I've worked, there wasn't much standalone work like that.

>>But it's never been the case that a dev could just focus on technical things and not spend any time figuring out the context they are working in, and behaving accordingly.

I've worked with plenty of programmers who were absolutely insufferable human beings but were some kind of supernatural coders who were doing the work of 20 people or were literally the only people who could understand the maths or physics or rendering in our products - so everyone kinda put up with it. I used to know someone who had dozens of HR complaints about them every year and nothing was done because the company didn't think they could risk firing them.

So yeah. They exist. And I don't think AI is going to do much about them, but I'd love to be proven wrong.

There are lots of developers who are able to lean into their inclination to be non-communicative. In many cases I think this inclination is at least partly due to neuro diversity; but I've met some who are simply genuinely unpleasant.
To the outside, the difference is hard to tell, isn't it? Between neuro-diversity and genuine unpleasantness -- isn't it mostly that one has a diagnosis (that you know of) and the other does not?

You might change your moral judgement of someone's behavior if you find out they have this or that condition (at least I do), but it doesn't change how their behavior impacts you, does it? If it did, I think the best you could do is to assume that everyone has some sort of condition that makes them act the way they do, and it'll be less of a problem.

As someone who's neurodiverse myself, I do want to agree with this. Having said that, I do think it's possible for someone to choose to be an asshole and be neurodiverse at the same time. I wouldn't ever want my neurodiversity to be a free pass for any type of behaviour myself.
I generally struggle with the idea of someone actually choosing to be an asshole, I assume there's usually an unseen cause.

E.g. I work with someone who seems very normal, is very professional, and I have no reason to believe that they area neurodiverse in any way. They once were very direct in a ticket towards a different team. Did they choose to be an asshole, or were they losing their last ounce of patience and politeness because they've been carrying a mountain of responsibility and stress? I think it's very difficult to tell that apart, or to judge based on "well, they could have not taken on that responsibility so they're liable for anything that is a consequence of it".

I don't consider it a free pass, but there's a lot more understanding for things that are outside your control. Where we see that line of control probably determines whether we judge someone harshly or not.

>I used to know someone who had dozens of HR complaints about them every year and nothing was done because the company didn't think they could risk firing them.

But did the company make them a team lead and put him in charge of other people?

No, luckily. But they were the kind of person who you could casually ask "hey John, what have you been working on" and they would reply with "you're too stupid to understand so I won't bother explaining".
>>>absolutely insufferable human beings but were some kind of supernatural coders who were doing the work of 20 people

I don’t at all condone being that guy. However….

It’s pretty amazing what an engineer can accomplish if you can actually get into a flow state because people are too afraid/intimidated to interrupt you every 10 minutes and you aren’t being invited to endless (and mostly useless) meetings all day.

¯\_(ツ)_/¯

Also the vast majority of sw engineers just have average soft skills. There is still a difference to sales and we certainly do not need any more pretentious behaviour in technical discussions. Yes, VCs will require you to advertise yourself, but I think many also just want a realistic approach about a potential business ventures.

The most practical problem sw engineers have here that they waste hours on some frivolous technical solution that could have been cleared up with a pragmatic approach through a three minute call.

That engineers aren't people persons is a stereotype. There are as many "autists" in the social sciences. Yes, I know I shouldn't use that word for anything that is not a pathological diagnosis.

Soft skills, in the context it's used here, include communication skills.

A key part of communication is being able to communicate ideas with someone not like you (different expertise, background, touchpoints).

Imho, a lot of software developers suck at that. (Obligatory: 'I talk to the customers so the engineers don't have to')

To the article's point, this becomes an increasingly valuable and critical skill the closer software development moves to the original requesting users. Or the closer the ability to code moves to people who were already talking to users.

Personally? I view myself as a problem solver: whether I solve a problem with code, a new technology, a conversation with a colleague, a deep dive discovery session with a SME, or a month-long series of political meetings with conflicting stakeholders, I don't care.

There are plenty of devs who do nothing beyond taking a Jira ticket scoped by others, implementing it, and then grabbing the next ticket.

While they may not have been very successful, they did have a place.

You’re right but i have always preferred people who can do a little more. Nothing against the socially awkward and conflict avoidant nature in many of these friends, but people who push back and fight to communicate their views and passions often got our team better outcomes than someone who just turns up and does the work they’re asked to do.
As long as it is not opposite set of skills (talks a lot without knowledge to back it up so essentially using charisma to convince people to do the wrong thing most of the time) then yes, a lil bit of negotiation can save you a whole lot of work in the long run (XY problems being one example)
For sure, I’ve been tricked into hiring those people before too. It’s good that there’s still something hard in running an organization, the whole “what is value?” question feels like it’ll be one of the few things we have to maintain work for humans over the next little while.
Looks very robotic to me, never worked on a place where meetings and dealing with other humans wasn't part of the job.
I’ve been on plenty of teams where meetings didn’t actually require any meaningful participation from most people.
Meetings without any meaningful participation from most people? I guess too many people in the meetings?
That is likely referring to what has become known as the standup, where developers read off the commit log for the "manager" who hasn't yet figured out how to use a computer.
Or for the product manager too lazy to check Jira.
Never been the case for me, additionally I have always worked in shared desks or offices.
Is this genuinely common? I’ve only ever seen that level of hand holding extended to new grad hires.
It definitely happens at bloated organizations that aren’t really good at software development. I think it is especially more common in organizations where software is a cost center and business rules involve a specialized discipline that software developers wouldn’t typically have expertise in.
I have 13 years of professional experience, and I work in a small company (15 people). Apart from one or two weekly meetings, I mostly just work on stuff independently. I'm the solo developer for a number of projects ranging from embedded microcontrollers to distributed backend systems. There's very little handholding; it's more like requirements come in, and results come out.

I have been part of some social circles before but they were always centered around a common activity like a game, and once that activity went away, so did those connections.

As I started working on side hustles, it occurred to me that not having any kind of social network (not even social media accounts) may have added an additional level of difficulty.

I am still working on the side hustles, though.

> it's more like requirements come in, and results come out.

Wow someone is very good at setting requirements. I have never seen that in 25 years of dev life.

I've seen it many many times, a few from myself.

It's not so hard if you're an expert in the field or concept they're asking the solution for, especially if you've already implemented it in the past, in some way, so know all the hidden requirements that they aren't even aware of. If you're in a senior position, in a small group, it's very possible you're the only one that can even reason about the solution, beyond some high level desires. I've worked in several teams with non-technical people/managers, where a good portion of the requirements must be ignored, with the biggest soft skill requirement being pretending they're ideas are reasonable.

It's also true if it's more technical than product based. I work in manufacturing R&D where a task might be "we need this robot, with this camera, to align to align to and touch this thing with this other thing within some um of error."

Software touches every industry of man. Your results may vary.

I've seen that plenty of times. I suspect that you haven't seen it because you live in a place with high cost of living, which induces a high turnover in personnel, or perhaps you've been working in very dynamic markets such as SaaS.

When I was starting my career in Europe as freelance sysadmin, I worked several times for small companies that were definitely not at the forefront of technology, were specialised in some small niche and pretty small (10-15 engineers), but all its engineers had been there for 10-20 years. They pretty well paid compared to the rest of the country, and within their niche (in one case microcontroller programming for industrial robots) they were world experts. They had no intention of moving to another city or another company, nor getting a promotion or learning a new trade. They were simply extremely good at what they were doing (which in the grand scheme of things was probably pretty obsolete technology), and whenever a new project came they could figure out the requirements and implement the product without much external input. The first time I met a "project manager" was when I started working for a US company.

>I worked several times for small companies that were definitely not at the forefront of technology, were specialised in some small niche and pretty small (10-15 engineers), but all its engineers had been there for 10-20 years. They pretty well paid compared to the rest of the country

This isn't possible in the USA. Companies like this (small, and not in tech hub cities) always try to take advantage of their location and pay peanuts, with the excuse "the cost of living is lower here!", even though it's not that much lower (and not as low as they think), and everything besides houses costs the same nationwide.

Of course, sometimes people realize that what they asked for wasn't actually what was needed.
I mean... This "realization" is what triggered the advent of agile, 2 decades ago, right?

People almost never know what they want, so put SOMETHING in front of them, fast, and let's go from there

I've heard this, and I've even seen it in plenty of poorly performing businesses, but I've never actually seen it in a highly performing, profitable tech company. Other than at the new grad level but it's treated as net-negative training while they learn how to build consensus and scope out work.

Not coincidentally, the places I've seen this approach to work are the same places that have hired me as a consultant to bring an effective team to build something high priority or fix a dumpster fire.

A lot of highly performing teams don't even use tickets.
Do any highly performing teams use tickets?

A fly-by-night charlatan successfully pushed ticking into our organization in the past year and I would say it was a disaster. I only have the experience of one, but from that experience I am now not sure you can even build good software that way.

I originally hoped it was growing pains, but I see more and more fundamental flaws.

I’ve worked at one, but it required a PM who was ruthless about cutting scope and we focused on user stories after establishing a strong feedback pipeline, both technically through CI/CD/tests and with stakeholders. Looking back, that was the best team I’ve ever worked in. We split up to separate corners of the company once the project was delivered (12 month buildout of an alpha that was internally tested and then fleshed out).

Maybe I had greenfield glasses but I came in for the last 3 months and it was still humming.

How do you keep track of tasks that need to be done, of reported bugs and feature requests?
Previously? There was an understanding of the problem trying to be solved. The gaps left the pangs of "this isn't right".

Now I have no way to know where things stand. It's all disconnected and abstracted. The ticket may suggest that something is done, but if the customer isn't happy, it isn't actually. Worse, now we have people adding tickets without any intent to do the work themselves and there isn't a great way to determine if they're just making up random work, which is something that definitely happens sometimes, or if it truly reflects on what the customer needs.

You might say that isn't technically a problem with ticketing itself, and I would agree. The problems are really with what came with the ticketing. But what would you need tickets for other than to try and eliminate the customer from the picture? If you understand the problem alongside the customer, you know what needs to be done just as you know when you need to eat lunch. Do you create 'lunchtime' tickets for yourself? I've personally never found the need.

I've realized it's a different paradigm in (very loosely) the Kuhn sense. You wouldn't track tasks if you're fundamentally not even thinking of the work in terms of tasks! (You might still want a bug tracker to track reported bugs, but it's a bug tracker, not a work tracker.)

What you actually do is going to depend on the kind of project you're working on and the people you're working with. But it mostly boils down to just talking to people. You can get a lot done even at scale just by talking to people.

People gotta remember its a job just like anything else. I dont see any other profession going above and beyond so why should that be levied upon on programmers, I don't see PMs trying to understand code, CEOs trying to understand the customer more than the investor.
McDonalds and Taco Bell tried to get rid of their "soft skills" (AKA customer service} and look how they're doing right now... Endless stores that all look & feel the same -- uncomfortable seats, no happy families around for longer than 10 minutes, longer drive-thru lines, and impersonal & impatient staff that avoids customers like the plague.

Evangelists will preach Ai because it's good for corporations that don't care about customer needs, but in the same sense, it may well be the catalyst for many to move out of cities to more human areas as it grows.

Businesses dictate the spread of Ai, and then foist it on customers because they think monopolies are sustainable, but the foundational rules always ring true -- Customer service & commitment are essential to the survival of a business. This tone deaf approach will eventually alienate many from companies that adopt it, and there aren't enough tech-inclined introverts to sustain profit in a world where Ai takes everyone's jobs. We don't ALWAYS want to talk to vending machines, human interaction is a need for many that Ai evangelists seem to think will simply go away.

I hope there are still some reasonable minded business leaders out there to swoop in and fix things after the ashes this era leaves along with all the VC carnage & political damage rendered on our economy.

Ai is great for math though... Maybe that should be the less-destructive focus.

>uncomfortable seats, no happy families around for longer than 10 minutes

Which is probably also net positive for business - similar to loud music in the pubs is a deliberate choice so people could focus on drinking rather than talking?

>McDonalds and Taco Bell tried to get rid of their "soft skills" (AKA customer service} and look how they're doing right now... Endless stores that all look & feel the same -- uncomfortable seats, no happy families around for longer than 10 minutes, longer drive-thru lines, and impersonal & impatient staff that avoids customers like the plague.

How's their profitability? Long drive-thru lines sounds like business is doing well.

This reminds me of people complaining about Windows, with its ads and AI and tracking and such. They don't like it as users, but the company is making plenty of money, so of course it's the right thing to do.

Often it means being a sociopath
There are HOSTS of dogshit devs that operated that way, trust me. Half the job of a PM has been to work with these types of people.
I too met many such developers.

Very often some tech lead or head of could spot them and put them on tasks where they could be autonomous (generally technical but important aspects that bogs down several teams or products: pipelines, tooling, api design, performance, etc).

Some could also be involved in features involving business logic but the lead/PM would make sure to put more details or streamline any feedback/questions through jira.

Also, there's even more developers out there that get complacent on the business aspect after some time of seeing how poor product and business development is, and just phase out of it completely and try to find solace in the technicalities.

If feels sometimes like many on HN live in ultra competitive bubbles with managers pushing people to grow and promote them like it works in Meta and similar, but that's really not the norm, it's the exception.

Many of us work in companies where software is an expense, not an asset, mentality is different, there are no such structures, management and product are crap and you find a wide variety of situations and devs.

That really sounds like a PM complaining that "I have to do my actual job of being the bridge between the business and the engineering team"

ALL PMs are expected to be doing some translation, otherwise what's the point of their job?

> otherwise what's the point of their job?

Who else is going to move a box from one column to another?

Claude?
It could be Claude. Or Sally, Joe, or Sue. Whatever name the PM goes by is immaterial.
Overall, it'll be a worse world if you can't make a living purely on hard skills.

If soft skills is mostly about sucking up, and there is no demand for any hard skill, you'll find society less able to stand up to the pressures of a majority group, because guess what, they're all too scared to stand up as an individual for fear of dropping the ball on the soft skill.

Moreover, the game theory of the soft skill is treacherous and uncertain. There's too many unknown unknowns, it's like not knowing if the dice you're playing is loaded against you. You don't know how many cultural land mines you might step on when interacting with your superior, or if there's a glass ceiling enforced by a group who will nitpick on minor irrelevant 'faults'.

Whereas compare soft skills to hard skills, you have a major advantage in certainty. There is a dice loaded in your favor. You know you can get much of the stuff done, and once you've reached the desired results, that's all there is to it.

I also could go on on how soft skills erodes human's capacity for judging what is value, instead basing their opinions on the majority source of opinions... It'll definitely be a much more irrational world to live in.

I'm sorry, but that's nonsense. Soft skills are mostly definitely not about sucking up.

At a previous job, the PM for another team often asked me to join some of their meetings — her engineers were shit at talking to non-technical people, so, for critical meetings, she asked me to join to serve as an interpreter of sorts. That's soft skills at work.

Talking to stakeholders and understanding what they need? Soft skills. Understanding the different between important and urgent? Soft skills. Being able to assess a candidate during an interview? Soft skills. Navigating cultural differences when you have offices or suppliers abroad? Soft skills.

I'd go as far as to say that the single biggest difference between a junior and a senior engineer is how well developed their soft skills are.

Perhaps it's a poor choice of words, what I mean by 'sucking up' refers to understanding the counterparty's mind (and making decisions to close the deal), and it is definitely a part of the game.

Every single thing that you listed requires a understanding of the opposing party that you just talked about in order to make the deal work out. A boss has his/her temper to deal with, her engineers have their own preferences, and that sucks, because as I said the game of soft skills can be a cultural landmine equivalent to rolling a dice with unknown odds.

If that is the only game in town, the result could turn out to be like the USA's politics of today, with no way to deviate/defect if you disagree.

Honestly, the way you conflate soft skills with randomness and capital-P Politics is worrisome.

> Every single thing that you listed requires a understanding of the opposing party that you just talked about in order to make the deal work out.

Yes, that's the whole point! Understanding other people is an important life skill, and something that every neurotypical person should be able to do. (And, if you're not neurotypical, it's a limitation about yourself that you need to acknowledge)

See it this way: You have two people in your team who disagree on a technical issue. You need to help them come to a decision. Would you rather have those two people have the mindset that "other engineers have their own preferences and that sucks", or that they have the mindset that "other engineers have their own preferences as a result of their own experience, and I welcome navigating those differences as part of the job"? Which of those two conversations ends with the two engineers understanding why the other person has a different opinion, and reaching a reasonable compromise? Which conversation ends with everybody involved learning something new, making the team technically stronger?

Because soft skills is also dealing with politics, you can't separate the 2.

> See it this way: You have two people in your team who disagree on a technical issue. You need to help them come to a decision.

You lay out a very hopeful scenario. Sometimes there are some issues where there are no clear cut answers (ie. you cannot apply a objective value judgement) and it's a purely political play. If you are asked to solve the issue, you have to take a side either way, and whichever side you take you will piss off the other, possibly for good. If the side you judged in favor of fails, you might end up being on the chopping block, or be 'marked' by the organisation with a 'never-do-well' label. This is -the- landmine I'm talking about.

You had better hope there are support in the org that can still support you, because depending on the severity of the fallout, you might be starting from 0. You'd better hope hard skills are still valuable by then.

But most of the things you're describing as bad can also be described as a lack of soft skills. The person who can't take care of themselves and rolls over under pressure definitely has poor soft skills.
The System rewards yes-men and bullshit-artists and LLMs have come to replace them.

> ifonlyyouknew.jpg