Comment by lordnacho

22 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!"

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.

      1 reply →

    • > 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.

      2 replies →

> 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.

      8 replies →

    • 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?

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.

      7 replies →

  • >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.

      5 replies →

  • > 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?

      1 reply →

  • > 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.

      2 replies →

  • >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)

      1 reply →

  • Looks very robotic to me, never worked on a place where meetings and dealing with other humans wasn't part of the job.

  • 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.

      7 replies →

  • 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.

  • 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.

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?

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.

      2 replies →

  • 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