Okay, this is a terrible list of things. I like GraphQL! I like Web Assembly! I… think web components are neat! But if you want to maximize the probability you are an employed software developer in 2028, learning GraphQL is a bad idea.

I mean, it’s a better idea than like, learning Angular. But valuable skills are Lindy goods; the trick is not to identify ones that are just about to come into vogue but the ones so prevalent that they’ve transcended fashion. At an object-level perspective (which I think is dumb: you should not be emphasizing technologies over architecture!), that would be C++ or build systems.

But at a non-object level perspective, every software developer needs to:

  1. Communicate extremely well to technical and non-technical colleagues
  2. Pattern match

That’s it! Those are the two most valuable skills and the ones least likely to be automated out of existence. Take a writing class and start doing crosswords.

(Alternatively, you could just learn COBOL. There is a small and insanely profitable market for COBOL engineers and it is one that presumably will not die for another generation or two.)

Liked this post? You should subscribe to my newsletter and follow me on Twitter.

(I've got an RSS feed, too, if you'd prefer.)