Live data from Hacker News

Low-Level Programming University – A roadmap to becoming a low-level programmer

github.com

71–80 of 168 posts

Re: Low-Level Programming University – A roadmap to becoming a low-level programmer

#72
post #6

As someone who can code in C/C++ and was recently looking for work, I don't think someone should learn low level programming for a career. What I would consider simple PHP jobs were easily paying more than C++ jobs. If you look at everyone reinventing the wheel in electron and not caring about performance I don't think the situation is going to get better anytime soon.

Myself and my colleagues do a lot of work in finance and machine learning where low level C++ is king, and we are highly paid for knowing the language intimately. You can generalize this across many parts of the finance industry in my experience (I own a mid-sized ML consulting firm).

Interestingly, from what I'm seeing, in London even most HFT jobs are in Java now. From what I've read, they figure it's easier to write HFT Java than C++, which says a lot about their difficulties with C++ (not only the language itself, but difficulties with hiring people expert enough in C++).

Re: Low-Level Programming University – A roadmap to becoming a low-level programmer

#73

Earlier quoted context omitted.

So I can only speak for myself, but I've been exclusively working in low level C type work for the last 9 years. Think embedded, kernel dev, reverse engineering, etc. type stuff. I'm good enough at it, but hardly an expert. I can't say I've ever lacked for work and I make $125k in a very low cost of living area, and if I wanted something new I could have interviews arranged tomorrow both where I currently live and pr…

Do you have a background in electronic engineering / good understanding of hardware issues beyond cpu caching ? Just trying to understand what $125k requires in this space.

My degree is in Computer Science and my hardware skills are mostly nil. I mean I know how to read data sheets and talk to hardware through memory mapped IO or ports, but as far as circuits, hardware design, etc. nothing more than a rudimentary understanding.

I wound up in this field doing a co-op during college with an employer that had a variety of different job types. I have always liked C so I went with more low level jobs during my co-op rotations.

My primary skill set is being comfortable developing on bare metal or in the kernel, reverse engineering, and debugging painful problems. One of my first tasks was porting part of a custom OS to hardware that didn't have JTAG (it wasn't our hardware... someone else made it and we were tasked with getting our OS on there.)

The only thing I had to debug with were memory dumps in raw hex. It was painful but a lot of fun. It's not so much that I'm particularly bright but I'm too dumb to know when to give up.

Re: Low-Level Programming University – A roadmap to becoming a low-level programmer

#74
The bearishness here surprises me.

The more a company spends on infrastructure, the more they need low-level people. A good low-level programmer can reduce cost requirements 10x or more. Any company spending millions or billions on infrastructure can make enormous savings by hiring the right people. Crucial for Google, Amazon, Facebook, and even midsize startups can see a big improvement.

And its difficult to fill those jobs. Which means, there's opportunity there.

Re: Low-Level Programming University – A roadmap to becoming a low-level programmer

#75

Earlier quoted context omitted.

So I can only speak for myself, but I've been exclusively working in low level C type work for the last 9 years. Think embedded, kernel dev, reverse engineering, etc. type stuff. I'm good enough at it, but hardly an expert. I can't say I've ever lacked for work and I make $125k in a very low cost of living area, and if I wanted something new I could have interviews arranged tomorrow both where I currently live and pr…

Do you have a background in electronic engineering / good understanding of hardware issues beyond cpu caching ? Just trying to understand what $125k requires in this space.

Actually now that I think about it, being too stupid to know when I'm in over my head and being willing to dive into an impossible task are probably the most valuable skills I have.

Re: Low-Level Programming University – A roadmap to becoming a low-level programmer

#76

Don't go there. There's really not a lot of work. But if you must, low level is more a calling than a learned skill. You probably shouldn't be learning assembler. First, compilers are really quite good. Yes, it's possible to beat them (I do) but generally not by much. And not by much ain't gonna put bacon on the table. You can probably get what you need from gcc inline asm() calls. Take a look at the linux sources an…

> First, compilers are really quite good. Yes, it's possible to beat them (I do) but generally not by much.

Genuine question: what would you quantify “not by much” as here? In my experience, it's not uncommon to see 2x+ speedups from well-written software pipelined hand-optimised assembly in hot loops. (Especially so for in-order processors, like you might see in embedded applications or as a LITTLE core in your smartphone.)

Re: Low-Level Programming University – A roadmap to becoming a low-level programmer

#77

Earlier quoted context omitted.

>"Yeah, unfortunately there are people behind the scenes pumping out a whole lot of BS and aggressively manipulating the dev ecosystem with VC dollars" Can you elaborate on this? This intrigued me but I didn't follow your arguments after. Can you give a concrete or specific example?

I doubt there's any intentional manipulation going on behind the scenes. It's just VCs throwing their money at the potential next big thing, which is almost never at something low level. That's where the money is, and the tooling + community follows. The rest is just network effect. Just a few years ago, jquery was huge, and many companies were just starting to hop on the web bandwagon. Many frontend developers who d…

Understood, thanks for the insight.

Re: Low-Level Programming University – A roadmap to becoming a low-level programmer

#78

The bearishness here surprises me. The more a company spends on infrastructure, the more they need low-level people. A good low-level programmer can reduce cost requirements 10x or more. Any company spending millions or billions on infrastructure can make enormous savings by hiring the right people. Crucial for Google, Amazon, Facebook, and even midsize startups can see a big improvement. And its difficult to fill th…

Because those companies, and their mindsets, represent a fraction of all software jobs. The performance improvements that come from having good systems programmers appeal to only a small subset of companies. Even if the opportunity is there, features are what matter primarily to most companies. Only the ones with deep pockets and forward thinking will shell out for talent who will improve the infrastructure in a way that leads to often incremental and unnoticed or "unnecessary" improvements.

Re: Low-Level Programming University – A roadmap to becoming a low-level programmer

#79
post #36

Earlier quoted context omitted.

Yeah OP seems to be indicating that VC or some other actor is influencing the developer "market" to deflate salaries by inflating the supply of devs, at least that's what I'm reading it as, and I'd be very curious to learn more.

I wasn't referring to the wage market, I was referring to the market for developer tools. However, VCs do deviously manipulate the wage market in early startups by pumping a false narrative about how it takes young (read: naive, as these are virtual synonyms) people to innovate, and how when the company gets really super duper big, the equity will make up for the crappy salary. This trick is used to get young people…

I think the commenter two above was able to flesh out the meaning of your original comment for me. I do agree with you on the wage market though as well. I was thinking about this the the last time(recently) a recruiter was pitching the whole "equity in place of cash comp" to me.

If you figure a 1 year cliff and then 25 percent a year vesting schedule. You are into the startup for 5 years to be fully vested. How many of those can you do in a career? How many companies continue to be awesome enough to stay for 5 years? How many of those will actually IPO? The odds don't seem that great.

Re: Low-Level Programming University – A roadmap to becoming a low-level programmer

#80
post #68

Earlier quoted context omitted.

Wow, what great links! Thanks. Also I had no idea No Starch had a Rust book.

The No Starch book is just a print version of https://rust-lang.github.io/book/

Oh I did not pick up on that, thanks. No Starch are pretty nice nice pressings though so might be worth it. Cheers.
Post reply on HN