What do you do?

Lendarios

Trump's Staff
<Gold Donor>
19,360
-17,424
He is an architect remember.

PS: look noodle If you want to move into software, you should learn Sql asap.
 

Noodleface

A Mod Real Quick
37,961
14,508
Also I'm a little confused that you're saying I have no software experience and all hardware. But I'm actually writing software (sure, it's called firmware). It's not like I'm making circuits, I'm writing code.
 

Noodleface

A Mod Real Quick
37,961
14,508
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).
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.
 

Lendarios

Trump's Staff
<Gold Donor>
19,360
-17,424
I swapped the words to and for in my mind. What do you mean when u say you write software ... for hardware.
 

Slaythe

<Bronze Donator>
3,389
141
I think it's just really context specific. I work for a giant company and all the internal development work is for bullshit generic business programming. No one in our HR dept is going to make any connection between hardware and software development. In fact, I'd bet money that resume gets passed over really quickly.

But a small dev team building some product to go to market with? Sure. Your comments make more sense there. There's just a huge spectrum to what all encompasses IT development and I would guess most of it falls on the other side of the argument.
 

Lendarios

Trump's Staff
<Gold Donor>
19,360
-17,424
I mean that regardless of the layers of abstraction, software is always run on hardware.
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.

That is precisely the point of abstraction layers, you don't have to know what set of instructions the CPU offers, nor the size of the bus, etc. That is the type of thing Noodle has to deal with, and unfortunately it is a very niche knowledge, profitable, but niche and small. I admire him for that. It takes a very special kind of autistic developer to be able to make those things.

Also you really are a fan of using the exception to justify the rule.

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:
This is not the rule, it's the exception.
 

Khane

Got something right about marriage
19,869
13,383
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.
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.

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.

EDIT: Your examples are also very dubious as to whether one would consider that deep hardware knowledge. I bet 90% of the people here who work in software would be able to update their resume with "hardware knowledge" if that's your criteria. Also, when is it ever needed/useful knowledge to know how JVM byte code maps to assembly? That's literally the point of Java, abstracting you away from needing to know any of that shit. You may as well just write assembly code at that point if you think that somehow magically makes one developer better than another in the realm of managed code bases.
 

CnCGOD_sl

shitlord
151
0
I agree the hiring decisions are made for dumb reasons however the lack of understanding of even the basics of the OS and hardware interaction (hell the concept of IO!) is rampant in even very senior engineers these days. So frustrating as it means explaining it over and over on why what they are doing is wrong with non trivial loads.
 

Kuriin

Just a Nurse
4,046
1,020
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..
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
 

Noodleface

A Mod Real Quick
37,961
14,508
In this case it would be like if someone worked as a brain surgeon for 3 years then decided they wanted to make prosthetic legs.
 

chaos

Buzzfeed Editor
17,324
4,839
So I passed on that assessment team job I had a while back. TL;DR is I can't leave my wife for 2 weeks at a time every 2 months. It was disappointing and I was pretty upset, but whatever. Eyes forward.

My contract ends on August 15th. I' acting as the IAM right now and getting p-p-p-p-p-pAID SON. negotiated a 35% bump and then realized I probably could have gotten way more. It's only through August anyway. So I negotiated that I still get to do my engineering shit and I have to manage these knuckleheads on top of it. Whatever. It makes it really difficult to keep a timeline when you have a bunch of meetings to attend and hands to hold. People who can't self-motivate make me physically angry.

So I already know the manager for the prime (GD) taking over my contract in August. She has assured me that it's all good. I am about to accept an offer from one of the subs. It's 10k more than I make now (regular pay, not super-size pay) with way better medical benefits. Downside is there is no tuition reimbursement, which I habitually use every dime of. So that sucks, but I talked it through and they do pay for training so I can finagle this into something cool next year I am sure, a GIAC cert or something at least.
 

Khane

Got something right about marriage
19,869
13,383
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
You're reinforcing my point.
 

Noodleface

A Mod Real Quick
37,961
14,508
The only other point I'd like to add is I work in Boston and I don't think I'd find any SE job starting at 60k in this area. Entry level is at least 80.

Not sure what I'll do yet. It's just something I've been thinking about since I've documented how awful my current job is in the comp Sci thread.