Developer Vs. Engineer
Rachel Soderberg

Rachel Soderberg @rachelsoderberg

About: I'm a Software Developer who loves working with C#.NET and Salesforce. In my free time I lift weights, do martial arts, and play video games.

Location:
Fort Worth, TX
Joined:
Dec 18, 2018

Developer Vs. Engineer

Publish Date: Jun 16 '19
42 11

dih-vel-uh-per

  • A person or thing that develops or innovates.

en-juh-neer

  • A person trained and skilled in the design, construction, and use of engines or machines, or in any of various branches of engineering.
  • A person skilled in the design and programming of computer systems

Why are these definitions important? Well, I'm sure you've noticed a number of titles that get thrown around in the world of software - programmer, coder, web dev, software dev, software eng, architect, levels such as I, II, and III, or junior, journeyman, mid, and senior. There's can be a huge amount of grey area between companies and job requirements for all of these titles. Lately the most controversial of all these potential titles is software engineer, with most of the opposing argument coming from other engineering fields such as mechanical engineering, architecture (structural engineers?), network engineers and other highly-skilled and often rigorously-screened fields.

Many engineers in other fields are required to pass exams and obtain specific certifications before they can find proper employment in their field. A number of them are also required to keep their certifications up to date, meaning they need to study and retake the exams after some time - perhaps for the rest of their career.

Software engineers do not have any such requirement, except maybe in specialized or critical areas such as Microsoft Certified Professionals or development of government systems (I don't know the details there, so I can't speak to it for certain). This is a point of frustration for engineers of other fields, and perhaps a flaw of the software engineering field, because there is no true way to test the skills of all software engineers to confirm that they have all the knowledge needed for all of the duties they may face on the job. Many engineers feel that this brings down the weight of the title "Engineer," especially if a particular software engineer or their product has failed.

And while I'm speaking about failure: When an engineered project fails in software development, unless you're building pacemakers or spaceship shuttle systems, there is not a massive impact on lives. We move on, try to learn from our mistakes, and that's it. Not so with other engineering fields - bridges or buildings collapsing looks very bad on your resume.

Now that we have the big debate covered, what's actually the difference between a Software Developer and a Software Engineer? According to Felim O'Donnell of Liberty IT, "a developer takes functional specification and delivers the code required within tight parameters, essentially completing the task in isolation, without understanding or oversight of the project as a whole. On the other hand, an engineer is someone who thinks about the design, goes back to the business with questions and suggestions, and thinks about the impact on the business and the end user. They always ask 'Why?' and, 'Is there a better way to do this?'" Source: Are you a software developer or a software engineer? by Jenny Darmody

I imagine there is some overlap into the other engineering fields with O'Donnell's definition; in my experience engineers tend to be people who want to make an impact in the world and help others. The end goal is to build something that will leave our global communities a little better than before.

With that, I will close with a short statement: Personally I believe most of us have a little bit of "engineer" in us. Those who are curious to learn and improve our skills are constantly asking "why" and "how can I do this better?", and by that definition we all perform some engineering to some degree. We may consider the best language or tool for a particular feature we've been asked to build if we have that freedom, and hopefully we ask qualifying questions when we've been given a large-scale assignment to truly understand the process.

As O'Donnell said: "What makes all the difference is the person's mindset and appetite to learn."

Comments 11 total

  • Joe Hobot
    Joe HobotJun 17, 2019

    Yo what about DevOps :)

    • Rachel Soderberg
      Rachel SoderbergJun 17, 2019

      I actually am not familiar with that title! What's the typical day to day for devops?

      • Joe Hobot
        Joe HobotJun 17, 2019

        You described it in Dev and Engineer section.

        We (DevOps Engineers) do both. 😃 Bit of coding, bit of infrastructure, mostly all around automating everything to help Devs And Ops make life easier.

        • Rachel Soderberg
          Rachel SoderbergJun 17, 2019

          I see, that's pretty cool! I googled it and found some more information too - sounds like a really interesting engineering career path!

  • Livan Jimenez
    Livan JimenezJun 17, 2019

    Just wanted to point out that

    "Most, if not all, engineers in other fields are required to pass exams and obtain specific certifications before they can find proper employment in their field."

    Is not true. I know mechanical engineers, electrical engineers, and industrial engineers who do not have a PE or ever taken the FE exam.
    The only engineering field that requires you to have taken your FE then eventually get a PE is civil because they tend to go into construction.

    • Rachel Soderberg
      Rachel SoderbergJun 17, 2019

      Oh, interesting! I'll admit, I am not entirely familiar with breaking into other fields, I was going off what I've heard in different discussion forums and whatnot on the topic. I'll modify my statement, thanks for the correction!

      • Livan Jimenez
        Livan JimenezJun 17, 2019

        Yeah only reason why I know this is because of my formal engineering degree. Whenever I took multidisciplinary courses and they spoke about becoming an engineer (legally) you must take the FE then PE exam. Honestly, I don't think there is much information out there on who really needs a PE license besides those vaguely written articles.
        Anyway, I'm glad I was able to help!

  • Guy
    GuyJun 17, 2019

    I find it hilarious how these 12 week bootcamp grads claim to be "software engineers" lol. When in reality they know 0 about software engineering... I feel bad for the real engineers

    • Rachel Soderberg
      Rachel SoderbergJun 17, 2019

      Yea, I try not to let them get under my skin. I went to school for five years to be standing where I am today, and I don't even consider myself a software engineer (though I would consider some of what I do on the job to be engineering).

      • KelvinOkuroemi
        KelvinOkuroemiMay 10, 2022

        Hi Rachel, thanks for your blog, apart from data structures and algorithms, are there other things I can learn to help me develop an engineering approach to software?

        Just curious, thanks.

  • Aarzoo Naeem
    Aarzoo NaeemNov 1, 2020

    Interesting!

Add comment