3 ms·
As someone with a CE/EE degree, I don't really agree. Like you said, that background does have a lot of benefits. But the downside is that a CE grad typically
by mkipper 4y ago
As someone with a CE/EE degree, I don't really agree.
Like you said, that background does have a lot of benefits. But the downside is that a CE grad typically spends less time doing "software" work than a CS grad. When a CE student is taking courses on circuit design, FPGAs, and CPU architectures, a CS student might be taking courses about databases and concurrency. I don't think I touched SQL or a multithreaded program in a university course. Those were all "high level" things that CS students focused on.
This isn't meant as a knock on CE grads -- I just don't think it's wise to suggest them as the solution to OP's problem since they have their own set of "blind spots" to deal with.
- GrumpyYoungMan 4y agoI'd say digital logic and computer architecture teaches pretty immediate lessons about tackling concurrency? Every gate and transistor is operating in parallel and it's up to the engineer to arrange things so that race conditions don't occur and valid results are available when the next clock edge arrives.
- mkipper 4y agoSure, but I don’t think that’s necessarily helpful in the context the OP is describing. If you bring up concurrency in a software engineering interview, you’re probably hoping the candidate can speak to different synchronization techniques, their pros/cons, how to implement them and how to use them. Anyone who can figure out timing in a complex digital circuit can learn how threads and mutexes and message queues work, but there’s a good chance a CE grad would not be able to speak to those topics very well compared to a CS grad. Again, this isn’t a criticism of CE. I just doubt OP would have their socks blown off in the areas they mentioned if they started interviewing engineering students.