I've got a choice between two types of Electronic Engineering degrees, as the title says.

One goes the general route, basics of electricity, analog electronic, digital electronic, measuring stuff, some microprocessor basics, digital signals, operational amplifiers, PLCs, Combinational and Sequential Logic...

The other one (due to me being a web-developer with experience) would likely let me start at the middle of year two, with a lot of these basics skipped. I'd cover digital signal processing, data communications, microprocessor architecture (8-bit, 32-bit) and programming, operating systems (RTOS), programmable logic technology and embedded programming (maybe I left something out, but that's the bulk). There are some projects to be done and some mathematics.

I don't know what to choose, I'm mainly interested in embedded programming, but I'd hate to be an Electronic Engineer without a proper grounding in all the basics of Electronic. Wouldn't feel good when telling someone my title and field I'm in. I also wouldn't like my future choices to be too narrowed down because of such education. Embedded systems are only a subset of electronics, if I'm not mistaken. On the other hand, are the basics of Electronics so important to be a good embedded systems programmer?


closed as not constructive by The Photon, Leon Heller, placeholder, Kortuk Feb 7 '13 at 18:08

As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance. If this question can be reworded to fit the rules in the help center, please edit the question.

  • \$\begingroup\$ When I'm hiring for a mostly low level embedded firmware position, I look first for a solid electronics understanding (masters in EE preferred) and quiz mostly on electronics issues in the interview. A "embedded programmer" who can't look at a schematic to understand what it means to him, or even sometimes generate the schematic is useless to me. \$\endgroup\$ – Olin Lathrop Feb 7 '13 at 14:43
  • \$\begingroup\$ Is it a big hurdle from a typical undergraduate course in Electronic Engineering to becoming acquainted with embedded programming? This general course doesn't have a lot of it covered, but that's not a problem because I'm a big C and OS lover, so I can make up for it on my own. \$\endgroup\$ – robotron Feb 7 '13 at 14:47
  • 2
    \$\begingroup\$ Nowadays, electrical engineers are expected to be able to do low level embedded programming. Microcontrollers are so common that a EE that doesn't do firmware is like a plumber that installs sinks but won't do faucets. \$\endgroup\$ – Olin Lathrop Feb 7 '13 at 14:54
  • \$\begingroup\$ Get the general EE background. It will be much easier to pick up the specifics of embedded programming yourself. \$\endgroup\$ – Brian Drummond Feb 7 '13 at 14:55
  • 4
    \$\begingroup\$ As far as I'm concerned, the second option described in your question isn't electronic engineering at all, just a specialized programming course. All embedded systems require some level of electrical design, whether it be for power supplies, user interface elements, or connections to other subsystems. If you ever want to be the sole designer of an embedded system, then you need the first course. If your goal is to always be the programmer on a larger team where someone else does all of the hardware engineering, then the second course might be appropriate. \$\endgroup\$ – Dave Tweed Feb 7 '13 at 14:59

Obviously my answer is based on my personal experience. Your mileage may vary. A little background: I double-majored in computer science and computer engineering. At the time, my CpE program was more like a hybrid between the programs you describe, but since then it's transitioned into separate tracks. I've observed students, both in class and graduates, each year since I graduated. I work at an OEM, primarily as an embedded systems designer, but I'm branching out into power work.

My biggest educational regret is that I didn't have a chance to take the more solidly EE courses, like electromagnetic fields, control systems, power systems analysis, and power electronics. All that would have made my career much smoother. Similarly, seeing other graduates who had even less of the electrical side than I did, they're even less prepared. You may be able to program all day long, but if you don't know what an op amp is, or how to drive a FET to invert logic, you're always going to be at the mercy of other designers. You'll need them to be useful, and you'll have much more difficulty integrating yourself into your company. Your career options will be more limited, and you'll be in a constant state of, if not confusion, than at least constant awareness of your own limits.

You're always better off understanding the context you operate in. Working at an OEM, the biggest limitation on my capabilities now is that I don't have a firm grasp of integration-level work. Who buys our stuff and what they do with it, I'm still shaky on, and it hurts my abilities as an engineer. Similarly, an embedded systems programmer who doesn't understand what goes on past the pins of his processor is going to have a much larger learning curve than a general electrical engineer with some programming background that tries to do the same job.


Not the answer you're looking for? Browse other questions tagged or ask your own question.