Remix.run Logo
jghn 7 hours ago

What you're describing is an effect that has always existed. It became clear to me a few decades ago earlier in my career that if a dev's only real skill was "write code" that they were severely limited compared to people who had strong domain knowledge *and* had "write code".

The tech boom has made people forget this, but that fact never changed. And now what we're seeing is that the "write code" part is increasingly becoming devalued. What does this mean? That those with domain knowledge will still be able to function, whereas people who could only write code will be devalued.

hnthrow0287345 6 hours ago | parent | next [-]

"read code" and "debug code" will still be valuable and one of the ways you learn that is "write code". You might have gotten people who can only write code from cheap contracting places, but the companies choosing to go that route were shooting themselves in the foot with that decision before AI came along.

Even from offshore contractors, I still haven't run into anyone who can only write code except for someone just starting out.

jghn 4 hours ago | parent [-]

I don't disagree with you, but this misses my point entirely. I was using "write code" as shorthand for the entire package.

What I am referring to is someone with meaningful knowledge outside of software engineering who can also apply software engineering skills to that domain. In particular I'm referring to domains outside of tech, but any sort of specialized knowledge counts here so even in the "software" world there's things like infosec, networking, etc

lo_zamoyski 5 hours ago | parent | prev [-]

> if a dev's only real skill was "write code" that they were severely limited compared to people who had strong domain knowledge and had "write code".

Indeed. If we peel back the rationalizations, it is patently obvious that code has no meaning apart from the domain it exists in. Its entire meaning is derived from the domain and from the purpose to which it is put and for the sake of which it is written. There is no such thing as code, or broadly technology, in isolation. It does not exist for its own sake. Where such things are concerned, all meaning is in the observer.

So, if a dev has a poor grasp of the domain, then he must inevitably depend on someone else to supplement his deficits, like a product manager, which is a role that in practice often results in a formal distinction between the domain expert and the technician.

And that's what a dev without domain knowledge is: a technician.

This is also why people with solid[0] philosophical/liberal arts backgrounds often function very well in the software industry. They are better able to cultivate context which puts them in the best position to make prudent judgements at both product and technical levels.

This is not a dismissal of technical skill, but skill is always downstream from meaning, purpose, and context. It's a tool, perhaps a glove. Without the hand, there is no glove.

(Some may say this is obvious, but sadly, the obvious is what people seem to have the most trouble with.)

[0] Emphasis on "solid". I'm not talking about the ideological puff you might see in some places. I'm talking about something intellectual rigorous like the classical liberal arts.

jghn 4 hours ago | parent [-]

This is it exactly. Show me a dev who could competently function as a PM in their industry, and I'll show you a dev who will succeed in the new world. [0]

[0] I am not talking about low level PMs who just fill in scrum points and generate charts. There are also PMs who lack domain knowledge!