Rendered at 07:46:47 GMT+0000 (Coordinated Universal Time) with Cloudflare Workers.
bradknowles 4 hours ago [-]
As you note, some aspects of the work may largely go away. Like writing in machine code did, once we got assemblers. Like writing in assembly did once we got compilers.
We still do some of those things, in rare cases. But for most people, we don’t do them anymore. We use other tools to do them.
But at some point, I think the job changes enough that I question if we can still be called software engineers?
Unlike previous tools, where we were using them directly by writing code or instructions in languages that are not native for humans to speak, now we are using human languages to direct what we want from AI. I actually did this at my previous job, which you can see in my LinkedIn profile.
If we are using AI to write our code for us based on our specifications that are written in a natural human language, then I submit that we are becoming something more like directors or conductors of software engineering. We’re not doing the job directly anymore, and we’re not managing other people to do the job directly, so I don’t know if we can call ourselves software engineers anymore. Nor do I think we should call ourselves software managers, because we are not managing people doing the work.
In a play, a director is typically not the person on stage who is presenting the material. The director tells other people how to do that. So, we could use the term director. Unfortunately, the term director is already well used in business, and usually means someone sitting up higher in the food chain than a manager. So, I wouldn’t recommend using that term.
In music, the person standing up in front of the band or orchestra is the conductor. Some bands don’t have directors, instead they follow from someone else who is considered the leader of the group. But for concert band or orchestra, we have conductors. And conductors will sometimes write or transpose music, or even arrange music, in addition to their conductor job. I think I prefer this term.
I think the most accurate term for us would be Conductor of Software Engineering, but we can shorten that to Software Conductor.
Now, the real problem here is that in all the concert bands or orchestras I know of, the conductor knows how to play every instrument. And they can give specific instructions to the players of those instruments as to how they should perform something.
In many cases, the conductor may be a better player for that instrument than the player they are instructing, but the conductor has a bigger job than just playing that one part. Just like Ringo Starr wasn’t the best drummer on the stage.
So, now the danger is that generations of what used to be software developers or software engineers will learn how software is produced with the use of AI, but they won’t know anything about the stuff underneath that. They won’t be able to tell the AI how to better play their instrument for a given performance.
I welcome some aspects of this new future of software development, but having done the role of Software Conductor at my previous job, my problem now is that I still don’t know much of anything at all about Ansible or how to get it to do what I want. I know how to get Claude+Cursor to make Ansible do what I want, but is that enough? I’m not sure….
We still do some of those things, in rare cases. But for most people, we don’t do them anymore. We use other tools to do them.
But at some point, I think the job changes enough that I question if we can still be called software engineers?
Unlike previous tools, where we were using them directly by writing code or instructions in languages that are not native for humans to speak, now we are using human languages to direct what we want from AI. I actually did this at my previous job, which you can see in my LinkedIn profile.
If we are using AI to write our code for us based on our specifications that are written in a natural human language, then I submit that we are becoming something more like directors or conductors of software engineering. We’re not doing the job directly anymore, and we’re not managing other people to do the job directly, so I don’t know if we can call ourselves software engineers anymore. Nor do I think we should call ourselves software managers, because we are not managing people doing the work.
In a play, a director is typically not the person on stage who is presenting the material. The director tells other people how to do that. So, we could use the term director. Unfortunately, the term director is already well used in business, and usually means someone sitting up higher in the food chain than a manager. So, I wouldn’t recommend using that term.
In music, the person standing up in front of the band or orchestra is the conductor. Some bands don’t have directors, instead they follow from someone else who is considered the leader of the group. But for concert band or orchestra, we have conductors. And conductors will sometimes write or transpose music, or even arrange music, in addition to their conductor job. I think I prefer this term.
I think the most accurate term for us would be Conductor of Software Engineering, but we can shorten that to Software Conductor.
Now, the real problem here is that in all the concert bands or orchestras I know of, the conductor knows how to play every instrument. And they can give specific instructions to the players of those instruments as to how they should perform something.
In many cases, the conductor may be a better player for that instrument than the player they are instructing, but the conductor has a bigger job than just playing that one part. Just like Ringo Starr wasn’t the best drummer on the stage.
So, now the danger is that generations of what used to be software developers or software engineers will learn how software is produced with the use of AI, but they won’t know anything about the stuff underneath that. They won’t be able to tell the AI how to better play their instrument for a given performance.
I welcome some aspects of this new future of software development, but having done the role of Software Conductor at my previous job, my problem now is that I still don’t know much of anything at all about Ansible or how to get it to do what I want. I know how to get Claude+Cursor to make Ansible do what I want, but is that enough? I’m not sure….