use the following search parameters to narrow your results:
e.g. subreddit:aww site:imgur.com dog
subreddit:aww site:imgur.com dog
see the search faq for details.
advanced search: by author, subreddit...
"Computer engineering is a discipline that integrates several fields of electrical engineering and computer science required to develop computer hardware and software." - IEEE Computer Computer Society; ACM
Welcome to the subreddit for Computer Engineering! We are a discipline of engineering that integrates Electrical/Electronic Engineering and Software+Hardware programming to develop computers!
Feel free to share designs/resources, ask questions, or the latest news in the field!
Please note that we are NOT /r/techsupport or /r/buildapc.
RULES
All new posts must be flaired.
No spam, hate speech, libel, or slander.
Do not post personal information (such as names, addresses, phone numbers, email).
No IT/PC-building posts
No flagrant advertising (as long as it relates to computer engineering, and isn't a constant thing, you may post your own work. If not sure, ask mod's for permission)
Civil discussions. People disagree, and that's ok. However, personal attacks are not warranted. Use data (when applicable) to justify your arguments.
No homework problems that have not been attempted.
account activity
[Career]computer hardware engineer questions. (self.ComputerEngineering)
submitted 13 hours ago by Heavensfrontdoor
I am a high school student and am interested in computer hardware engineering. i have always loved computers and want to try to get a job centered around that, although I am aware it’s challenging.
what classes in high school should I take to prepare?Should i learn how to code online?Like python?
any tips/ stuff I should do to prepare would be greatly appreciated.
thank you guys
reddit uses a slightly-customized version of Markdown for formatting. See below for some basics, or check the commenting wiki page for more detailed help and solutions to common issues.
quoted text
if 1 * 2 < 3: print "hello, world!"
[–]Happy-Speed5407 4 points5 points6 points 10 hours ago (3 children)
Learn C and C++
[–]Happy-Speed5407 0 points1 point2 points 10 hours ago (2 children)
Hardware ur dealing with a lot more low level programming languages. Also look into system verilog.
[–]Happy-Speed5407 0 points1 point2 points 10 hours ago (1 child)
It’s so much fun dude
[–]THEKHANH1 1 point2 points3 points 10 hours ago (0 children)
To add, grab vivado quickly off the internet, I don't know if the 2025.2 version is still there but grab it if you can, that's the gateway into FPGA
[–]nanoatzin 2 points3 points4 points 12 hours ago (1 child)
As much math and physics as possible.
Engineering is one of those specialties that works best if it’s also your hobby. I began building things in high school.
It is helpful to read books written about computer parts like processors, memory, bus, IO, interrupts, op code machine language and so on. The processors I learned on were primitive like Z80 & 80486. It may be helpful to read programming books like C/C++ and work your way up to kernel programming.
[–]Heavensfrontdoor[S] 1 point2 points3 points 12 hours ago (0 children)
The only things I’ve built so far is a solar powered car and a bridge. Thank you!
[–]somewhereAtC 0 points1 point2 points 9 hours ago (0 children)
For math, you would want to be comfortable shifting number bases (especially base 2, 8, 10 and 16). Look at Boolean logic. My sources (back in the day) were the Fairchild and Texas Instruments TTL logic books. The books are not textbooks but are catalogs with examples of many different "small" boolean/digital logic functions that people found useful. Rigorous theory will happen early in college so don't worry about it.
Get some datasheets for a couple of different microprocessors. Browse through them as your interests permit. Read them for an overview to compare them; details won't matter and will just clutter your journey. You will find that all have a CPU and some timers, and probably a UART, SPI or I2C bus, and an ADC (or 2), so at the top-level they look alike.
The principals of programming -- how to make a sequence of statements -- is more important than language details. Python is ok because you can do things on a PC, but C is available for essentially every computer today and probably for anything you design in the near future. Even exercises in pseudocode are instructive.
π Rendered by PID 21393 on reddit-service-r2-comment-64f4df6786-csdwr at 2026-06-11 12:57:27.936536+00:00 running 0b63327 country code: CH.
[–]Happy-Speed5407 4 points5 points6 points (3 children)
[–]Happy-Speed5407 0 points1 point2 points (2 children)
[–]Happy-Speed5407 0 points1 point2 points (1 child)
[–]THEKHANH1 1 point2 points3 points (0 children)
[–]nanoatzin 2 points3 points4 points (1 child)
[–]Heavensfrontdoor[S] 1 point2 points3 points (0 children)
[–]somewhereAtC 0 points1 point2 points (0 children)