Oh I think I see it now. Yeah his rhetorical questions actually have valid answers.
Junior compiler writers exist.
Junior engineers exist.
“Junior” doctors exist. They are called interns and residents.
They don’t teach CLIs and git and debugging in uni. You don’t go out of uni knowing how to use every JS framework. You can’t have senior engineers without experience.
Not really? But we also don’t need a million compilers. Those projects are extremely specialized and there isn’t constant demand for new compilers.
It’s something like saying there aren’t junior screwdriver makers. I mean, yeah? That’s a specific tool that’s pretty much done. There are juniors in the wider fields of carpentry and mechanical engineering. Someone might invent a new screwdriver, but we don’t need to trim a bunch of juniors to make, specifically, new screwdriver designs.
But there are junior compiler writers, they usually have Ph.Ds in compiler or language theory and work in a broader team that’s developing a new language or something. Building a compiler isn’t actually that hard, having it put out optimized code is, as is designing a language that maps well to compilers and is pleasant to use. It’s not a big field, but there are people across the experience spectrum.
You can have a junior write compiler code, but you won’t have a junior compiler writer. It’s a very specific niche topic which does not have the demand for this.
They don’t teach CLIs and git and debugging in uni.
Well, they do. Version control is extremly useful for doing projects especially in groups and debugging is a necessary tool for building systems. These are not the main topic of the courses, but they are taught and practically mandatory.
If you want to work on compilers, the general flow is:
Get Ph.D in CS, in something relevant to languages and compilers
Join an existing project on an compiler team and apply your research (usually hired by a company that uses said language a lot); you’re a “junior” here
Work your way up to be a dominant force on the project, or switch to another project and become a lead (senior)
That’s not always how it goes (software is weird), but that’s a valid path.
Oh I think I see it now. Yeah his rhetorical questions actually have valid answers.
Junior compiler writers exist. Junior engineers exist. “Junior” doctors exist. They are called interns and residents.
They don’t teach CLIs and git and debugging in uni. You don’t go out of uni knowing how to use every JS framework. You can’t have senior engineers without experience.
Not really? But we also don’t need a million compilers. Those projects are extremely specialized and there isn’t constant demand for new compilers.
It’s something like saying there aren’t junior screwdriver makers. I mean, yeah? That’s a specific tool that’s pretty much done. There are juniors in the wider fields of carpentry and mechanical engineering. Someone might invent a new screwdriver, but we don’t need to trim a bunch of juniors to make, specifically, new screwdriver designs.
But there are junior compiler writers, they usually have Ph.Ds in compiler or language theory and work in a broader team that’s developing a new language or something. Building a compiler isn’t actually that hard, having it put out optimized code is, as is designing a language that maps well to compilers and is pleasant to use. It’s not a big field, but there are people across the experience spectrum.
You can have a junior write compiler code, but you won’t have a junior compiler writer. It’s a very specific niche topic which does not have the demand for this.
Well, they do. Version control is extremly useful for doing projects especially in groups and debugging is a necessary tool for building systems. These are not the main topic of the courses, but they are taught and practically mandatory.
If you want to work on compilers, the general flow is:
That’s not always how it goes (software is weird), but that’s a valid path.