I met up with a friend the other day who is a software engineer in between roles. We were talking about the future of the job and the field more broadly. With the popularization of language models it feels like the ways we work and assumptions we’ve held are being upended, and not for the first time.

I personally believe the job description of “software engineer” is going to continue to mean and entail a greater diversity of skills than ever before.

Software engineers (even prior to them being called as such) have always provided instructions to computers and tried to organize both the instructions and computers in such a way that an intended task could be accomplished by using that software through an interface to the computer.

This has not changed.

What has changed are the breadth and complexity of areas in which an individual building software needs to participate.