News for hackers. Stuff that matters.
Re:Ask HN: Compiler Engineers, what would you advise new gra... by mynegation on Sunday September 08, 2019 @09:15PM (#20914434)
Something else in addition to the compiler engineering

Pure compiler jobs are far and wide between. You might get a good job but your career movement will be limited.

I believe the future of compiler design will go hand in hand with the demands of the industry. Traditional “by the dragon book” compiler is a solved problem. The growth is in the application of compiler technologies to Machine Learning, distributed systems, specialized hardware.

Re:Ask HN: Compiler Engineers, what would you advise new gra... by closeparen on Sunday September 08, 2019 @10:37PM (#20914786)
Sufficiently large engineering shops tend to evolve configuration and business-rule languages (textual and visual) that include unacknowledged, ad-hoc compilers and interpreters. Traditional compilers techniques seem relevant to helping those projects scale and mature.
Re:Ask HN: Compiler Engineers, what would you advise new gra... by seanmcdirmid on Sunday September 08, 2019 @09:37PM (#20914529)
Agreed. There is a bit of a market for compiler/ML cross overs ATM (at MS, Facebook, and Google at least). But you need at least a PhD or 10+ years of experience.

PL isn’t really a hot area ATM, including implementation. Even formal verification jobs are a bit hard to find these days. Perhaps it will be more popular when the next AI winter comes around :).

Re:Ask HN: Compiler Engineers, what would you advise new gra... by jlebar on Sunday September 08, 2019 @10:29PM (#20914749)
> There is a bit of a market for compiler/ML cross overs ATM (at MS, Facebook, and Google at least). But you need at least a PhD or 10+ years of experience.

Until a few months ago I lead part of the XLA team at Google, working on ML compilers for CPU/GPU.

Most of us didn't have 10+ years of experience in compilers when we started on the team. I know one of us had a PhD in compilers. Possibly others did too, I'm not sure; this goes to show how unimportant the PhD in compilers / PhD at all was. I had no experience in compilers before I joined (not as the lead).

We're unusual, but I want to demonstrate that you really can get a good job working on compilers without a PhD or 10+ years of experience.

Re:Ask HN: Compiler Engineers, what would you advise new gra... by seanmcdirmid on Sunday September 08, 2019 @11:23PM (#20914968)
Note that I didn’t say a PhD or 10 years experience in compilers, it could be ML or some other related area. There really isn’t such a thing as a PhD in compilers, and even in the SIGPLAN area compiler specialized PhDs are rare (formal verification is much more common).

A PhD can get your foot in the door (showing mastery via the research you’ve done vs work experience). And then either/or is very useful in even knowing about and being recommended for these jobs (HR is generally not very useful in hiring).

Re:Ask HN: Compiler Engineers, what would you advise new gra... by jlebar on Sunday September 08, 2019 @11:25PM (#20914982)
Iirc none of us had any ML experience. :)
Re:Ask HN: Compiler Engineers, what would you advise new gra... by seanmcdirmid on Sunday September 08, 2019 @11:43PM (#20915056)
Noted. It is a bit ironic since a common complaint/frustration among PL people (mostly with PhDs) working at google is that they have to work on ads...
Re:Ask HN: Compiler Engineers, what would you advise new gra... by ScottBurson on Monday September 09, 2019 @02:35AM (#20915695)
Please contact me. Email in profile.
Re:Ask HN: Compiler Engineers, what would you advise new gra... by PopeDotNinja on Sunday September 08, 2019 @10:10PM (#20914668)
PL is short for... Programming language?
Re:Ask HN: Compiler Engineers, what would you advise new gra... by mshockwave on Sunday September 08, 2019 @11:26PM (#20914986)
yep. PL is definitely not equal to compiler. As in academic, PL is closer to theoretic computer science, especially computing theory. But in rest of the field, most of the time they're interchangeable.
Re:Ask HN: Compiler Engineers, what would you advise new gra... by seanmcdirmid on Sunday September 08, 2019 @11:45PM (#20915068)
Compiler comes under PL (if you want to publish a compiler paper, PLDI is the place to do that). PL is actually a very broad designation, and there are plenty of non-theory oriented PL researchers.
Re:Ask HN: Compiler Engineers, what would you advise new gra... by seanmcdirmid on Sunday September 08, 2019 @11:24PM (#20914979)
Yes.
Re:Ask HN: Compiler Engineers, what would you advise new gra... by ltratt on Monday September 09, 2019 @03:29AM (#20915948)
> Pure compiler jobs are far and wide between.

In an absolute sense, this is true. There are never likely to be hundreds of thousands of compiler jobs.

In a relative sense, this isn't true. I run a PL research group with a heavy focus on (mostly dynamic) compilers, and I've lost track of the number of companies (some obvious, some not) who are desperate to hire people with a compiler background to do compiler stuff. Because there are so few people with suitable training, and as said elsewhere on this thread, industry has become used to taking good people without a compiler background and crossing their fingers that they can learn the ropes -- which good people of course can, given a bit of time. But, in my experience, even groups which are largely staffed with people who haven't done a compiler PhD would love to hire people with compiler PhDs.

Will this always be true? Well, it perhaps wasn't (as) true 15-20 years ago when people often only seemed to care about C++ and Java performance. But, given the continual increase in the quantity of languages that people want to run fast (and, often, on a variety of devices), it's hard to see that happening any time soon.

Re:Ask HN: Compiler Engineers, what would you advise new gra... by bogomipz on Sunday September 08, 2019 @10:54PM (#20914854)
>"The growth is in the application of compiler technologies to Machine Learning ..."

A couple of others have also mentioned compiling and ML. Aren't there already many ML libraries for compiled languages out there or are you referring to something else? I would love to hear more about this.

I would be similarly interested for how compilation might be applied to distributed systems. Cheers.

Re:Ask HN: Compiler Engineers, what would you advise new gra... by mynegation on Monday September 09, 2019 @01:34AM (#20915442)
> Aren't there already many ML libraries for compiled languages out there or are you referring to something else?

Something else. If your program is a well-defined set of operations (basically matrix operations for ML), you can optimize the whole specific program instead of calling bunch of individually optimized functions from the library and target a specific hardware (e.g. given GPU). Check for example Chris Lattner’s interview [1] and presentations on MLIR, or proceedings of C4ML workshop [2].

Application in distributed systems: from the top of my head - protobufs, compilation of Erlang and Elixir to BEAM, dask.

[1] https://youtu.be/yCd3CzGSte8 [2] http://c4ml.org/