loading...

Software Engineers shouldn't code. That's the job of the developer.

twitter logo github logo ・1 min read

I am kind of confused with some terminologies in the software industry. I took software engineering course last two semesters and within that class my instructor made us know that software engineers shouldn't code. But when I started looking for position in this area, most of the job title goes by software engineer. I need clarification from the Engineers, developer, etc. on this platform

twitter logo DISCUSS (9)
markdown guide
 

Your teacher may have used "engineer" to mean what I'd call an "architect", which is a role less focused on daily coding (although I personally have a foot in both camps, and would argue that we deserve to maintain the systems we design -- keeps us humble). Many other people and companies use "engineer" synonymously with "developer".

There are no standards and we're all making it up as we go along.

 

Naming mixup aside, I definitely agree with this:

we deserve to maintain the systems we design -- keeps us humble

And I think the world feels more this way than it used to.

 

I've never met a software engineer that didn't code. In fact, the idea is ridiculous to me at first brush. What else would they do?

Maybe there could be an organization where software engineers are in charge of designing and planning out code entities (e.g. classes and their interactions) and developers are in charge of implementing those designs, but that would be very unsatisfying to both parties. It would deny the engineers the hands-on fun of writing good code, and it would make the developers feel like "code monkeys", always implementing someone else's idea and not allowed to think creatively and make decisions. I don't know of any company that works like that and I hope I never work for one.

As far as I know, the most accurate rule about job titles in software is this one:

Inside of a given company, they can decide that specific titles mean whatever they want, but across the industry there's no real standard, at least not in the U.S.

 

This statement seems crazy. It sounds like the teacher is projecting their own biases. They probably have the idea in their head where one group gathers requirements and writes the specs and then throws them over the wall to coders. This can work in other engineering disciplines, but it is not a great fit for (most) software. See Waterfall model.

 

You'll find that roles at companies differ greatly from the archetype portrayed by academia. Engineer is such a broad term you'll find some engineers coding full-stack applications themselves. Or you'll get the other end of the spectrum: an engineer who architects the stack -- but isn't involved in the implementation because their team handles it.

It all depends how you choose to brand yourself. Saying engineer instead of developer carries different connotations, so just stick to whichever one fits you best.

 
 

My job title say Software Engineer and I code everyday. Developing an application, building an application, engineering an application, it's all the same, IMO.

Classic DEV Post from May 22 '18

How Art School Prepared Me for Programming

Using observation and illustration as a tool for understanding

Oliver Mensah profile image
Software Developer, Developer Community Builder, Technical Speaker, Writer & Trainer, Currently a National Service Personnel at Agro Innova Company Limited

Sore eyes?

dev.to now has dark mode.

Go to the "misc" section of your settings and select night theme ❤️