Fog Creek Software
Discussion Board




ee degree

hello all,

Im interested in studying ee i was wondering if anyone could give me some feedback on the difficulty of the classes.  I've heard it's a tough ciriculum, but what makes it so tough?

thanks

mike

mike johnson
Friday, July 18, 2003

I have an engineering degree (not EE, nor computer science), and had to take one EE class.  So I'm no expert. 

But, when and where I went to school, EE was widely regarded as the hardest of all the majors.  (Except maybe Physics.  But you have to be crazy to major in Physics in the first place.)  (And, okay, except Architecture, but that's a *calling*, not a major - I mean, do you know much architects *make*?  Not enough.)

Do what you love.  It will make school a lot easier.  This, I am an expert in...

Grumpy Old-Timer
Friday, July 18, 2003

In my class we started with 130 EE majors. We graduated 31. Those ninety-nine people did not leave out of boredom.

IMHO, EE is hard for two main reasons:
1) It has the highest math and physics requirements outside those degree programs. We called Electricity and Magnetism II (fourth year physics) "black magic".
2) You generally don't learn about things you can see. In mechanical engineering it's pretty easy to understand stresses in bridge trusses. In aerospace engineering (another REALLY hard major) you can see airfoils in use. In EE you learn about the motions of electrons and the interaction of electrical and magnetic fields. These are generally not observable phenomena, and can be difficult to grasp.

If electronics interests you and you like building things, see if you can get into an introductory circuits class before you declare a major.

Note that when I went to school EE was THE hot field, so a lot of people did it for the money, which is the #1 worst reason to choose a major.

So to answer your question - "yes, it's hard"

Philo

Philo
Friday, July 18, 2003

Mike,

It's math intensive. So you need to be comfortable with differential equations. Then to be good at it, you also need to be creative. So if you're creative and comfortable with math, you'll do fine.

X. J. Scott
Friday, July 18, 2003

Philo's right. Physics too. You have to understand e-m. If you get into high end chips, you have to understand quantum mechanics. By understand I don't mean able to answer multiple choice questions, but able to make new discoveries and work with it as if it was clay.

X. J. Scott
Friday, July 18, 2003

My undergrad degree is in EE.

What makes EE hard? My opinions:

The math requirement, coupled with (at least at my school) a math department that things "Oh, they're only engineers." You need to understand differential equations INTIMATELY, plus statistics, plus discrete-time math.

You get hit with signals & systems. Still more diff-eqs, plus one of the most abstract topics (although very useful) outside of game theory.

After learning all this theoretical stuff, you get hit in the face with the "well, the real world doesn't really look like that" and the models get progressively more complicated as they take into account the real world behavior of the devices in question.

A HUGE workload. In my experience, every professor pretty much assumed that you were only taking his class. There were multi hour homework assignments every class, big projects due every couple of weeks, and don't even get me started about the exams. At the school I went to (University of Connecticut) they added insult to injury by requiring 135 credits to get an engineering degree. All the other 4-year degrees only required 120. Pretty much translated to an extra class every semester.

You'll only get through all this if you genuinely enjoy this stuff. I thought it was really neat, and I still can make use of this stuff from time to time today. Digital signal processing, for example, is pretty much all EE.

-Chris

Chris Tavares
Friday, July 18, 2003

how is it compared to cs, i like programming a bunch, is there as much math and physics in cs?

also, who gets paid more(not a reason, but just curious) and who have more job opportunities?

mike johnson
Friday, July 18, 2003

Get a double major in business if you're worried about maximum opportunities.  As other people have said, don't worry about who makes the most.  I got a degree in comp. sci. because it involved less math than physics, and I enjoyed being in the computer lab more than the physics lab (& I hated math anyway).  I wish I would've majored in something other than CS, but then I probably would be flipping burgers or selling cars somewhere...

Oh, and take lots of internships.

Johnny Simmson
Friday, July 18, 2003

Mike,

There's almost no physics in CS (unless you're going to be doing game engine developement, and then the physics is mechanics not e-m). There is math, but it is a very different kind of math which for some is easier and for others more difficult than diff-eq. Combinatorics, linear algebra and graph theory. Actually linear algebra and graph theory are in ee now too...

If you are at all uncomfortable with your math skills or good at math but not really 'into' math, ee is probably not where you want to be.

Since you like programming, why not focus there?

As far as salaries go, it all depends on your specialty, your experience, your location, and your abilities. Don't even think about taking pay into consideration when picking a major or you'll fall flat on your face.

X. J. Scott
Friday, July 18, 2003

Philo's advice for college:
1) Major in something you enjoy. Do well at it. Get good grades. This will still mean hard work, but hopefully it'll be more fun if you like the subject.

2) Your degree program will have a certain number of credits allocated that don't have to be in your field of study. DON'T study more of the same - take radically different classes in things that seem fun. Use them to take a "mental breather" as well as to broaden your horizons. [note - it's entirely possible that one of these outside courses may take more work than your entire core curriculum. Don't look down your nose at political science majors. Ask me how I know this. ;-) )

3) Have fun. Do your work, be disciplined, but don't spend your *whole* life in the lab if you can avoid it.

4) Get arrested at least once. Validate my experience. [grin]

Philo

Philo
Friday, July 18, 2003

I got my EE degree.  I debated between Computer Science and EE.  I chose EE because it had more 'prestige/respect' (I went to college in 1987, CS was either part of the College of Arts and Sciences or part of the Math Department).  I hated the hardware/circuits part- I plodded through the first 2 years of required classes and in the last 2 years, when you got to chose your technical electives- I loaded up on software related classes (some comp-sci classes and EE specific classes in Image Processing, Digital Signal Processing, etc).  This was probably one of the best decisions I made- I came out of school with alot more experience, better programming skills than most of the CS grads.  It also opens up a wide range interesting of job oportunities- all that hardware needs firmware and alot of it needs some type of interface- your not getting those jobs coming out of cs (I've done alot of work in motion control and robotics- neat stuff)

The thing I would probably consider now is looking into Software Engineering or Computer Engineering classes offered thru an engineering department.  This to me is the ideal situation.

MikeG
Friday, July 18, 2003

I ended up choosing EE over CS because I didn't want to ruin a perfectly good hobby. Now I program for a living, and went back for a CS Masters to fill in the gaps I would have covered if I'd had a CS undergrad in the first place.

-Chris

Chris Tavares
Friday, July 18, 2003

I started out in CS for 2  years then switched to EE. The workload was too much for me so I switched again to EET, the program at DeVry. Laugh if you will, but DeVry did a great job relating the math, physics, and "electrons" to practical applications from day 2. I figure I lost a little bit of prestige (and about $5-10K), but I was able to get up to speed a lot more quickly. In any case, I went back for a master's in CS anyhow, so I got the best of both worlds and made up that salary gap. Good luck.

StickyWicket
Friday, July 18, 2003

I think it's all about what you *think* you'll want to do after college.

I started doing contract programming in 9th grade, so I was heavily into the "soft" side of computers before entering college. However, I also had an interest in electronics throughout high school, and had some mentors who were engineers.

The bottom line for me was:  If I majored in Electrical and Computer Engineering, I could do either something hardware engineering-related or software-related.  If I majored in Computer Science, I would have only one option: software.

I chose the former; it simply allowed me a greater number of options.

As it turns out, I ended up on the software side of things; I now own a software company. It's funny how things work out.

I must say, though, that I believe my engineering background helps keep me in a "ship mentality," as opposed to a "theory mentality." I think this is because I spent four years straight doing nothing but trying to figure out how to "solve the problem" for each homework assignment, lab, and exam, and make it to graduation!

Because of this training, I think I can more easily stay focused on getting a product shipped, even if there are things we have to do to solve the problems that aren't "pretty," or "theoretically perfect," but simply work.

Of course, this could all be complete hogwash, and it may be that I would take the same approach had I majored in CS.  Who knows?

Anyhow, those are my $0.02.

Dave
Saturday, July 19, 2003

Mike,

I have a BSEE. Philo and Chris Tavares accurately described the relative challenge of the degree. I can't add much to what they stated.

Ok, so the question would be - why get that degree? What is the advantage to you of getting that degree?

When I was an undergrad, and for maybe around 5 years after graduation, I *thought* that the people who mastered true 'fundamentals' were nobler and more virtuous and more employable than anyone else in the technology career game. For most of the 1980's this was the case.  By the early 1990s, though, this reversed; more superficial and application level knowledge seemed to become more salable than being able to build things of lasting quality and value.

Compiled languages, embedded bad and "out"; scripts, macros, cookie cutter assembly "in".

What I've come to observe is that 'fundamental' knowledge has become a sort of liability in the workplace.  This slide appears to be proportionate to the amount of outsourcing of basic technology. IOW, perhaps a master's in EE would be a great asset in Bangalore or Singapore or Taiwan, but not so much so in the US or other western democracies.

Basically, a EE in the current economy provokes two strong reactions in hiring parties: "you're a what? Oh, you're too specialized and you won't like our work." and "you're not applied enough." If you're an EE and you are in the IT world, you will often be stereotyped as a geek who can't see the big picture.

IE: it doesn't pay to be smarter and obviously more technical than the entities interviewing you.

The mindset of an engineer is always valuable. Engineers tend to be problem solvers to the core and able in time to reeducate themselves in a professional manner. These two attributes are almost unknown in some of the "pure programming" circles I've been around.  I'm saying that most competent engineers with degrees are as many light years from "script kiddies" as you'd want to find.

However, developing this problem solving orientation and then having it denigrated and shortcutted by the companies that are actually doing the hiring is an EXTREMELY frustrating thing!

Bored Bystander
Saturday, July 19, 2003

"If you're an EE and you are in the IT world, you will often be stereotyped as a geek who can't see the big picture."

Really? I've never experienced this... In the past I've advocated a EE or CS because of all the jobs that say "BSEE/BSCS required"

Philo

Philo
Saturday, July 19, 2003

I actually did both CS and EE in undergrad.  That's how my school offered Computer Engineering at the time.  It was tough, but not as bad as it sounds, because there were a lot of double-listed classes.

Anyway, as others have stated, there's no doubt that EE is harder.  If that's a concern, pick CS.

As for your future, having that EE education can be very helpful.  You can (and will) learn lots of CS stuff outside of school, but you probably won't ever learn how electrons flow (or "holes" actually) outside of school.

Another thing to consider is what kind of programming you may want to do.  There is a whole world out there of real-time embedded stuff where a EE background is extremely helpful (or required, even).

One more thing - there are many, MANY more CS-type jobs out there than pure EE jobs.

David
Monday, July 21, 2003

who makes more?

mike johnson
Monday, July 21, 2003

According to various sources, people with EE degrees earn a bit more.  Of course, it depends on what you do.

Hardware designers are a bit harder to come by (i.e. you aren't going to find people with 2 year degrees or less doing it), so naturally, companies have to pay more.

Similarly, among programmers, the embedded real-time world probably pays a bit more (on average) than the application level world.

At the same time, if you have just a EE and want to get into hardware, there are a lot fewer jobs to consider.  So, you might make more if you have a job, but you might have trouble finding a job.  To compare, look in your local paper and compare the number of sw jobs to the number of hw jobs.

David
Tuesday, July 22, 2003

*  Recent Topics

*  Fog Creek Home