Live data from Hacker News

Ask HN: How to get a job as a compiler engineer?

news.ycombinator.com

21–30 of 63 posts

Re: Ask HN: How to get a job as a compiler engineer?

#21
post #20

Earlier quoted context omitted.

This tbh. If the compiler the Microsoft team maintains is open source (which most of the ones people have heard of are), having involvement in that open source community would probably also be a plus - it helps show the practical part of practical compiler development. Anyways, many public-facing compilers (C++, C#, VB, F#, the .NET runtime as a whole, TypeScript) are in the devdiv org - if you look up Julia Liuson i…

It is my understanding that the language teams of C# and especially F# are actually quite small, and I imagine competitive. I would wager that there's more compiler work to be done in Microsoft Research. This is a hunch based on things I have read.

Yes, but can't hurt to reach out in any case.

Re: Ask HN: How to get a job as a compiler engineer?

#22
post #21
post #20

Earlier quoted context omitted.

It is my understanding that the language teams of C# and especially F# are actually quite small, and I imagine competitive. I would wager that there's more compiler work to be done in Microsoft Research. This is a hunch based on things I have read.

Yes, but can't hurt to reach out in any case.

Oh for sure. Microsoft seems like a good place to work anyway, with a ton of stuff going on.

Re: Ask HN: How to get a job as a compiler engineer?

#23
My general impression is that a well paying, full time compiler position is quite competitive. It's relatively niche, and there are a lot of good engineers who would love to work on compilers all day rather than the typical drudgery (it's one of the purest CS pursuits). I'd suggest scratching your itch by working on an open source compiler in your spare time. And with significant experience under your belt, you may be able to network and get that dream job one day.

Source: I know people on both the Scala and Swift teams and this was my experience. Everyone wants to work on these teams, and it was generally seen as the most enjoyable work. You pretty much had to have good connections/solid OSS contributions/relevant PhD to get a placement on these teams. I imagine it's the same at MS.

Re: Ask HN: How to get a job as a compiler engineer?

#24
> What are the companies that do exciting stuff in compilers?

Some companies solve problems that have a larger component of parsing and evaluating things.

One example is Hasura's SQL-to-GraphQL layer: https://hasura.io/

Another example is GitHub's CodeQL: https://github.com/github/codeql

A third example -- I forget the name of the company -- parses Counter-Strike games real-time and restructures this data for better analytical introspection, e.g. for betting, time-scrollable replay, 2D rendering, etc. There appears to be a lot of hard-earned knowledge going from a stream of events monkey-patched over two decades, to a complete model of a game (who's on what team, who is dead, what round is this, etc.)

Microsoft does a lot of interesting compiler-related stuff, too, of course.

Then there's blockchain: A lot of programming-language enthusiasts have been employed to write VMs and DSLs to express safe application-level environments. An example is Anoma's Juvix: https://github.com/anoma/juvix

A job I was looking at involved building a more programmatic interface to some legacy SCADA systems, i.e. make old factory monitoring systems interoperate via a DSL. The idea, I think, is to transform and manage the configuration files from a dynamic GUI system, but not employ people to drag-and-drop; rather, express this as code.

tl;dr: If your main tool is a compiler, there are compiler problems everywhere.

Re: Ask HN: How to get a job as a compiler engineer?

#25
My compilers professor mentioned that national labs consistently reach out to him asking if he has any good PhD students. Just mentioning this so you don’t forget to emphasize that route. Perhaps you’ve established connections during your research that have similar contacts in the labs?

Re: Ask HN: How to get a job as a compiler engineer?

#26
A few years ago, a friend of mine applied to a job at Microsoft for developing the typescript compiler there (open source).

Generally, you can try these companies:

* really big software companies, like Microsoft, IBM, Google...

* chip makers

* developer tool makers, like JetBrains

Also, search engines are a thing :-) https://www.dice.com/jobs?q=compiler or try linkedin...

Re: Ask HN: How to get a job as a compiler engineer?

#28

I work on the sql optimization and execution team for a data warehouse company. SQL isn't the most interesting language to build a compiler for, but I figure it's the easiest way to get paid to build one. You could probably transfer to microsofts data warehouse team and help them build their sql compiler.

I thought SQL featured feeding prepared statements to a JIT? I'd have put that near the top for interest - a bunch of rewrite rules to improve the sql then a mapping to the database implementation as runtime layer, probably with the glue in machine code. Maybe also speculation on current db state.

Re: Ask HN: How to get a job as a compiler engineer?

#29
"attribute grammar" and "novel" in the same statement? Whoa! I tried to publish a paper ~15 years ago on attribute grammars … without success and non-constructive review feedback. I am not aware of any company making use of attribute grammars in production. I had the goal of making use of attribute grammars as part of https://github.com/mozilla-spidermonkey/jsparagus (SmooshMonkey), but making a JavaScript parser generator which is as efficient as our hand-written parser is already surprisingly difficult, and the COVID ended the project.

On the topic of finding a job … I would be of no help. The only internships/jobs I found so far were all outside the usual applications forms:

* By emailing to the author of an R&D language that I was already using, asking if they could make a position for me in their lab.

* From a teacher recommending me in the start-up where he worked for building an interpreted language.

* By going to one of the Firefox 4 party, and giving a visit card after seeing a presentation about SpiderMonkey.

Then, if you are interested in applying for a job opening on compilers. There is one right now at Mozilla, on WebAssembly: https://www.mozilla.org/en-US/careers/position/gh/4437801/ … but there is no attribute grammar.

Re: Ask HN: How to get a job as a compiler engineer?

#30

My compilers professor mentioned that national labs consistently reach out to him asking if he has any good PhD students. Just mentioning this so you don’t forget to emphasize that route. Perhaps you’ve established connections during your research that have similar contacts in the labs?

Yeah that's what came to my mind first as well; talk to your advisor. If you're on good terms with them they'll be happy to send you at least for an internship somewhere.
Post reply on HN