I am studying computer engineering and I really like computer architecture and digital design, whereas at the same time I also enjoy algorithms and programming so much (I know software engineering is much more than that). I am taking more credits in both software and hardware, but would that help if I want to have a job in both areas? I don't know if this is the right community to ask so sorry if this is the wrong place :)
-
can you clarify more please?– ahmed bottaCommented Nov 3, 2019 at 4:06
-
I live in egypt but willing to travel to the US– ahmed bottaCommented Nov 3, 2019 at 5:25
-
It could just be my impression, but I live in the US, and it seems that many hardware-related engineering jobs are going to India and China while many software-related jobs are still very plentiful in the US. I can't speak about Egypt, but I would also expect it to be easier to find a software-related engineering job in Egypt than a hardware-related engineering one.– Stephan BranczykCommented Nov 3, 2019 at 7:17
3 Answers
The skills you're trying to obtain are highly sought after in the Embedded and Wearable device fields.
My undergraduate degree is in Computer Science, but I'm old enough to have learned about computers when a firm grasp on electronics was required. Today I work on industrial control systems doing embedded Linux development. A fair part of my work requires that I'm able to read schematic diagrams and implement software based on the physical hardware.
It's not as glamorous as web development or "apps", but this is the kind of software which makes the real world work.
-
I used to work for computer manufacturers. I started as a software person, but learned enough hardware to work on architecture of large multiprocessors. Part of my job was to be a translator between operating system developers and electrical engineers who talk different jargons. Any time you need to design hardware and software to work together, you need people who understand both. Commented Nov 2, 2019 at 9:18
-
1You could be the other sort of "full stack developer" - one who understands how the hardware actually works. I find that some of the problems and techniques from hardware design are very relevant to software (embedded and strongly multi-threaded software, at least)– MóżCommented Nov 2, 2019 at 9:23
I am taking more credits in both software and hardware, but would that help if I want to have a job in both areas?
Of course it would, if nothing else it will give you actual knowledge in the fields.
I'd recommend taking a look at Mechatronics Engineering. It's a multidisciplinary Engineering field that combines Computer, Control, Mechanical and Electrical Engineering and is highly sought after as far as multidisciplinary Engineering goes. Especially in Digital Engineering fields, there are numerous fields you can get into.
These Engineers work with CPUs, microcontrollers, FPGAs, ASICs and SoC devices and usually end up in Aerospace/Defence, Oil, banking/finance and CPU/general-ASIC design industries. Its a massive sector that many people overlook.
I'm more than slightly biased, because I'm a senior FPGA engineer specialising in SystemVerilog but in my opinion it is one of the best career choices for an Engineer and gives you numerous options to specialise post-degree.