Mostly lendarios I guess. He said 3 years hardware, 0 years software. Would someone look at my resume and truly think I had 0 years software? One of my job titles for a couple years was even software engineer.Not sure if that's directed at lend or me, but just to clarify, when I say hardware, I specifically mean hardware developers(firmware programmers, FPGA programmers, embedded systems, etc) not hardware designers(chip/circuit makers - even though FPGA straddles both, I put them in the first category).
You cant create your own world where abstractions layers don't exist in order to justify your point. In today's modern ecosystem, low level knowledge of hardware(embedded) programming is useless for non embedded developers.I mean that regardless of the layers of abstraction, software is always run on hardware.
This is not the rule, it's the exception.Even in something super high level like the JVM, sure you don't need that knowledge most the time, but if you're tasked with say, writing a very high throughput server, it's valuable to know the following:
Shut up and program those bits!!Today I learned I am autistic
You have completely changed your entire story about 3 times at this point. Nothing in your original post says anything like this. You keep moving the goal posts and even in doing so, you're still wrong. But keep making blanket statements about the overwhelming minority of software related jobs for companies that actually make hardware and pretend that is a large majority. You're getting pushback because your original statement was comically ridiculous, and now you're backpedaling.I mean that regardless of the layers of abstraction, software is always run on hardware. So knowledge of the underlying hardware is never meaningless. Do most software developers use that knowledge day to day? Obviously not, majority of software is not made specifically to hardware platforms. As I said, you do not need underlying knowledge to be extremely competent and do work, but having that knowledge opens up more possibilities(which, imho, makes you more valuable over-all).
Even in something super high level like the JVM, sure you don't need that knowledge most the time, but if you're tasked with say, writing a very high throughput server, it's valuable to know the following:
#1. How JVM byte code maps to X86 or ARM assembly, respectively.
#2. How the linux kernal handles networking calls to the drivers and why to avoid it entirely if you can.
#3. Combining 1/2, how to optimize for CPU for cache hits, and the impact if you don't(*especially* with https).
That knowledge is literally the difference between a web server that can handle 10,000 connections and 1,000,000(I really recommend high scalability blog, as a note, where these topics get discussed a lot).
Someone who can manage both the very low and very high level stuff, is more valuable, they're the ones who get the jobs to tackle those problems at higher pay. It's also been my experience as an educator, that it's much easier and quicker to learn the high level stuff than the low level stuff; Anecdotal but you rarely see EE/CSE students failing courses in C++, Java, or other high level languages, but if you take the pure CS students about 1/2 of them will bomb out of embedded systems and assembly classes.
Like, I don't think that position is really controversial, so I was surprised at the pushback earlier. But I'm interested in discussing it civilly.
Don't know shit about coding software or hardware...but, when you used healthcare, the "5 years of experience with specific experience" trumps the "10 years of not specific experience." -- case in point where someone is trying to get into critical care. They don't care if you've been a home health nurse for 20 years. You are going to get looked over by someone who has 1-2 years of critical care experience.Go work for a healthcare company, or insurance company, or bank, or every company on earth where no hardware is being made and supported and pretend it's good hiring practice to take someone with 5 years experience over someone with 10 just because it says "hardware" on their resume..
You're reinforcing my point.Don't know shit about coding software or hardware...but, when you used healthcare, the "5 years of experience with specific experience" trumps the "10 years of not specific experience." -- case in point where someone is trying to get into critical care. They don't care if you've been a home health nurse for 20 years. You are going to get looked over by someone who has 1-2 years of critical care experience.
In any case...carry on ;-p