Transitioning from Software Development to Engineering

Click For Summary

Discussion Overview

The discussion centers on transitioning from a software development role to a more traditional engineering position, specifically in embedded software engineering. Participants explore educational pathways, necessary skills, and certifications that could facilitate this transition.

Discussion Character

  • Exploratory
  • Technical explanation
  • Debate/contested

Main Points Raised

  • One participant expresses uncertainty about their qualifications as an engineer and seeks guidance on becoming a well-rounded embedded software engineer.
  • Another participant suggests pursuing a Master's degree in Electrical Engineering (EE) as a straightforward path to achieving the desired qualifications.
  • A third participant recommends considering the Fundamentals of Engineering (FE) test and pursuing a Professional Engineer (PE) license in software engineering, highlighting the demand for qualified individuals in embedded safety applications.
  • There is an emphasis on ensuring that any chosen EE program includes strong computer engineering classes, particularly if the programs are separate.

Areas of Agreement / Disagreement

Participants generally agree on the value of further education, particularly in Electrical Engineering, but there are differing opinions on the specific steps to take, such as whether to pursue a degree or certifications like the FE test.

Contextual Notes

Participants have not fully resolved the best pathway for transitioning into embedded software engineering, and there are varying opinions on the importance of different skills and educational backgrounds.

Who May Find This Useful

Individuals considering a shift from software development to engineering, particularly in embedded systems, as well as those interested in educational and certification pathways in engineering fields.

Chubigans
Messages
19
Reaction score
0
Hello.

I graduated 1.5 years ago with a major in Computer Engineering. I have been programming since I was a young child so it seemed very natural for me to go into software development. Throughout my undergrad I focused on the easiest path to me (computer science classes were a breeze) while doing decently well in my engineering classes (electronics, digital systems, dynamics, mechanics of materials.) The engineering classes seemed very difficult.

During my internships I worked at huge engineering organizations (NASA, Lockheed, my school robotics lab) but I was always doing mostly software (C++, Java/Android, and C#.NET). My current job is as a web developer at a startup where I am about as far from hardware as I can get.

I don't see myself as much of a true "engineer", but more of an embedded software developer. I programmed the microcontroller (an Atmel XMEGA) for senior design and had a lot of fun. I loved writing low level routines for electronic devices like motor controllers, sensors and LCD screens. But I felt like I was at such a "hobbyist" level that I wasn't qualified for a real "embedded job".

I've never had the title "embedded engineer" and all I know is how to program a few very simple microcontrollers. What do I need to learn to be a well rounded "embedded software engineer"? Would a second degree that teaches me more about hardware and mechanics be helpful? Do I need to improve my CAD skills? Or should I be compiling linux kernels and writing device drivers for that? I just don't really know WHAT skills I would need or how to get them.
 
Last edited:
Physics news on Phys.org
Get an MS degree in EE. That's by far the easiest way to get where you want to go. Then you 1.5 years in Software will be included as your experience when you get a job out of grad school.
 
analogdesign's advice is sound. Allow me to suggest that you look into taking the Fundamentals of Engineering (FE) test and then seek a PE in software engineering.

There are a whole lot of embedded critical safety applications and they'll go begging for people who are willing to put their name on their work. I speak as one who uses them.
 
I agree with analog.
I know it seems like common sense, but make sure the EE program you look at has good computer engineering classes. If the school has separate EE and CE programs, I recommend going to computer engineering.
 

Similar threads

  • · Replies 2 ·
Replies
2
Views
3K
  • · Replies 2 ·
Replies
2
Views
3K
  • · Replies 7 ·
Replies
7
Views
3K
Replies
23
Views
6K
  • · Replies 1 ·
Replies
1
Views
2K
  • · Replies 3 ·
Replies
3
Views
3K
  • · Replies 1 ·
Replies
1
Views
2K
  • · Replies 9 ·
Replies
9
Views
3K
  • · Replies 12 ·
Replies
12
Views
9K
  • · Replies 1 ·
Replies
1
Views
2K