Live data from Hacker News

Can a Computer Science Student Be Taught to Design Hardware?

semiengineering.com

51–60 of 122 posts

Re: Can a Computer Science Student Be Taught to Design Hardware?

#51
post #49

* The fact that there are comments misunderstanding the article, that are talking about PCB Design rather than (Silicon) Chip Design, speaks to the problem facing the chip industry. Total lack of wider awareness and many misunderstandings. * Chip design pays better than software in many cases and many places (US and UK included; but excluding comparisons to Finance/FinTech software, unless you happen to be in hardwar…

> * Chip design pays better than software in many cases and many places (US and UK included; Where are these companies? All you ever hear from the hardware side of things are that the tools suck, everyone makes you sign NDAs for everything and that the pay is around 30% less. You can come up with counterexamples like Nvidia I suppose, but that's a bit like saying just work for a startup that becomes a billion dollar…

Depends if you're looking at startups/scaleups or the big companies. Arm, Imagination Tech, etc. for a very long time did not pay anything like as well (even if you were doing software work for them). That's shifted a lot in the UK in recent years (can't speak for the rest of the world). Even so, I hear Intel and AMD still pay lower base salary than you might get at a rival startup.

As for startups/scaleups, I can testify from experience that you'll get the following kind of base salaries in the UK outside of hardware-for-finance companies (not including options/benefits/etc.). Note that my experience is around CPU, GPU, AI accelerators, etc. - novel stuff, not just incrementing the version number of a microcontroller design:

* Graduate modelling engineer (software): £50k - £55k * Graduate hardware design engineer: £45k - £55k

* Junior software engineer: £60k - £70k * Junior hardware engineer: £60k - £70k

* Senior/lead software engineer (generalist; 3+ yoe): £75k - £90k * Senior compiler engineer (3+ yoe): £100k - £120k * Senior/lead hardware design engineer: £90k - £110k * Senior/lead hardware verification engineer: £100k - £115k

* Staff engineering salaries (software, hardware, computer architecture): £100k - £130k and beyond * Principal, director, VP, etc. engeering salaries: £130k+ (and £200k to £250k not unreasonable expectation for people with 10+ years experience).

If you happen to be in physical design with experience on a cutting edge node: £250k - £350k (except at very early stage ventures)

Can you find software roles that pay more? Sure, of course you can. AI and Data Science roles can sometimes pay incredible salaries. But are there that many of those kinds of roles? I don't know - I think demand in hardware design outstrips availability in top-end AI roles, but maybe I'm wrong.

From personal experience, I've been paid double-digits percentage more being a computer architect in hardware startups than I have in senior software engineering roles in (complex) SaaS startups (across virtual conferencing, carbon accounting, and autonomous vehicle simulations). That's very much a personal journey and experience, so I appreciate it's not a reflection of the general market (unlike the figures I quoted above) so of course others will have found the opposite.

To get a sense of the UK markets for a wide range of roles across sectors and company sizes, I recommend looking at salary guides from the likes of: * IC Resources * SoCode * Microtech * Client-Server

Re: Can a Computer Science Student Be Taught to Design Hardware?

#53
post #49

* The fact that there are comments misunderstanding the article, that are talking about PCB Design rather than (Silicon) Chip Design, speaks to the problem facing the chip industry. Total lack of wider awareness and many misunderstandings. * Chip design pays better than software in many cases and many places (US and UK included; but excluding comparisons to Finance/FinTech software, unless you happen to be in hardwar…

> * Chip design pays better than software in many cases and many places (US and UK included; Where are these companies? All you ever hear from the hardware side of things are that the tools suck, everyone makes you sign NDAs for everything and that the pay is around 30% less. You can come up with counterexamples like Nvidia I suppose, but that's a bit like saying just work for a startup that becomes a billion dollar…

Oh by the way, I agree, NDAs all the time, and many of the tools are super user-unfriendly. There's quite a bit of money being made in developing better tools.

As for a list of companies, in the UK or with a UK presence, the following come to mind: Graphcore, Fractile, Olix, Axelera, Codasip, Secqai, PQShield, Vaire, SCI Semiconductor and probably also look at Imagination Tech, AMD and Arm. There are many other companies of different sizes in the UK, these are just the ones that popped into my head in the moment tonight.

[Please note: I am not commenting on actual salaries paid by any of these companies, but if you went looking, I think you'd find roles that offer competitive compensation. My other comments mentioning salaries are based on salary guides I read at the end of last year, as well as my own experience paying people in my previous hardware startup up to May 2025 (VyperCore).]

Re: Can a Computer Science Student Be Taught to Design Hardware?

#54
My degree is in computer science but I studied at the faculty of electrical engineering.

My courses didn't get into the details of semiconductor design (particularly manufacturing), but we had one on the physical principles behind this whole thing - bandgaps and all.

We also had to design analog circuits using the Ebers-Moll transistor model, so pretty basic, but still not exactly linear.

Overall these are very different fields but at the end of the day they both have models and systems, so you could make a student of one of them learn the other and vice versa.

It just has to be worth the effort.

Re: Can a Computer Science Student Be Taught to Design Hardware?

#55
Hardware is artificially underpaid work, good positions are sparse in the US, and generally most engineers end up in niche coding environments.

Most people that land a successful long career, also refuse to solve some clown firms ephemeral problems at a loss. The trend of externalizing costs onto perspective employees starts to fail in difficult fields requiring actual domain talent with $3.7m per seat equipment. Regulatory capture also fails in advanced areas, as large firms regress into state sponsored thievery instead.

Advice to students that is funny and accurate =3

"Mike Monteiro: F*ck You, Pay Me"

https://www.youtube.com/watch?v=jVkLVRt6c1U

Re: Can a Computer Science Student Be Taught to Design Hardware?

#56

* The fact that there are comments misunderstanding the article, that are talking about PCB Design rather than (Silicon) Chip Design, speaks to the problem facing the chip industry. Total lack of wider awareness and many misunderstandings. * Chip design pays better than software in many cases and many places (US and UK included; but excluding comparisons to Finance/FinTech software, unless you happen to be in hardwar…

[deleted]

Re: Can a Computer Science Student Be Taught to Design Hardware?

#57

* The fact that there are comments misunderstanding the article, that are talking about PCB Design rather than (Silicon) Chip Design, speaks to the problem facing the chip industry. Total lack of wider awareness and many misunderstandings. * Chip design pays better than software in many cases and many places (US and UK included; but excluding comparisons to Finance/FinTech software, unless you happen to be in hardwar…

> The fact that there are comments misunderstanding the article, that are talking about PCB Design rather than (Silicon) Chip Design, speaks to the problem facing the chip industry. Total lack of wider awareness and many misunderstandings.

No, there is no misunderstanding. Even the US companies mentioned _in the very article_ that have both software and "chip design" roles (however you call it) will pay more to their software engineers. I have almost never heard of anyone moving from software to the design side, but rather most people move from design side to software which seems like the more natural path.

Re: Can a Computer Science Student Be Taught to Design Hardware?

#58
>> "Either we hire good CS people who have the basic understanding of EE, and we train them to become good engineers, or we hire good engineers who are good in CS, and we try to upskill them on the CS side."

The former (CS -> EE) is very unlikely to happen at a large scale than the latter (EE -> CS). It is much easier to teach EEs to become (albeit, often bad) software engineers, than teaching CS student to be good engineers.

Also, the former (CS -> EE) will not happen in academia because of (1) turf wars, and (2) CS faculty not having any understanding, nor interest in electronics/hardware/engineering.

I once proposed to teach an IoT class in the CS department of a major university in US, the proposal basically fell on deaf ears.

Re: Can a Computer Science Student Be Taught to Design Hardware?

#59
post #6

Obviously. Hardware designers absolutely love to think that hardware design is totally different to software design and only they have the skills, but in reality it's barely diffetent. Stuff runs in parallel. You occasionally have to know about really hardware things like timing and metastability. But the venn diagram of hardware/software design skills is pretty much two identical circles. The reason for the "talent…

> The reason for the "talent shortage" (aka "talent more expensive than we'd like") is really just because hardware design is a niche field that most people a) don't need to do, b) can't access because almost all the tools are proprietary and c) can't afford, outside of tiny FPGAs. Mostly B. Even if you work in company that does both you'll rarely get a chance to touch the hardware as a software developer because all…

> digital designers tend to push back in favor of vendor tools.

Which is fair in my experience because Verilator has serious limitations compared to the other three - no 4-state simulation (though that is apparently coming!), no GUI, no coverage, UVM etc. UVM is utter shite tbf, and I think they are working on support for it.

Also it's much slower than the commercial simulators in my experience. Much slower to compile designs, and runtime is on the order of 3x slower. Kind of weird because it has a reputation for being faster but I've seen this same result in at least two different companies with totally different designs.

I gave up on Verilator support in a previous company when we ran into a plain miscompilation. There was some boolean expression that it simply compiled incorrectly. Difficult to trust with your $10m silicon order after that!

It's definitely nice that it doesn't require any ludicrously expensive licenses though.

Re: Can a Computer Science Student Be Taught to Design Hardware?

#60

UIUC CS grad from the late 80s. CS students had to take a track of electrical engineering courses. Physics E&M, intro EE, digital circuits, microprocessor/ALU design, microprocessor interfacing.... It paid off immensely in my embedded development career. I'm guessing this isn't part of most curricula anymore?

> I'm guessing this isn't part of most curricula anymore

My sibling is a CS@UIUC grad and they as well as CS+X were still required to do that.

In other universities such as Cal it's a different story. Systems programming and computer architecture course requirements have either been significantly reduced or eliminated entirely in CS programs over the past decade.

I've documented this change before on HN [0][1][2]. The CS major has been increasingly deskilled in the US.

[0] - https://news.ycombinator.com/item?id=45413516

[1] - https://news.ycombinator.com/item?id=45404647

[2] - https://news.ycombinator.com/item?id=45397327

Post reply on HN