Comment by lordnacho
13 hours 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!"
> 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.
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.
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.
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.
Trotting out fallacy names on regular basis isn't going to win you any points.
> 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 →
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.
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 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.
>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.
1 reply →
> 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.
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.
5 replies →
>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.
> 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?
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.
>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?
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?
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.
I’ve been on plenty of teams where meetings didn’t actually require any meaningful participation from most people.
4 replies →
Is this genuinely common? I’ve only ever seen that level of hand holding extended to new grad hires.
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.
5 replies →
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.
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.
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.
6 replies →
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?
2 replies →
Often it means being a sociopath