Compiler Engineer

IL

Description

NextSilicon is looking for software engineers to develop the company’s product, a brand new processor architecture. If you're a systems programmer who wants to build a complex runtime for a revolutionary heterogeneous processor architecture, your place is with us. We're writing compilers, drivers, firmware, and our unique optimizer and runtime. Our engineers are not siloed into narrow areas; our ideas are cross-fertilized among teams. Our technical backgrounds are diverse and we don't have preferred approaches or cookbooks, so come and invent! Oh, and if you don't like what the hardware does, the hardware teams are just a few steps away and really like hearing our ideas. We care about results and insist on doing things right.

Decades of CPU and compiler research have led to spectacular results. Just compare the output of an early FORTRAN compiler against a modern GCC/clang with -O3. Still, however incredible the improvement, they are anchored to the same ancient instruction-based foundation since the middle of the 20th century. But inventing a new architecture is not nearly enough. Who will develop for it?

Engineering in our group is all about taking the millions of lines of HPC code that have already been written and making them fly on NextSilicon’s groundbreaking dataflow processor. We try to take the best of classic compiler engineering, alongside new optimization techniques that push our architecture to its limits: our optimizer autonomously modifies application code at runtime to maximize throughput and minimize the required hardware resources. And we’re not afraid to venture into the runtime or spend time to deeply understand the hardware to get things right.

Requirements


  • 3+ years software engineering experience in large/complex projects; a must
  • Experience in C, C++, or another systems programming language
  • Algorithmic fundamentals (strong data structure intuition, graph operations)
  • Familiarity with compiler engineering (IR, optimization techniques, dataflow analysis); an advantage
  • Natural collaborator: No single person can fit the entire system in their head at once. Everything we accomplish is a result of building together.
  • Driven: We’re in uncharted waters. When things don’t work, StackOverflow isn’t much help. We have to be self-sufficient no matter the complexity.
  • Inventive: Traditional compilers serve as models and inspiration, but we’re always experimenting and developing our own solutions.
  • Leader: proactive and communicative, not afraid to take initiatives and lead others.


Responsibilities

NextSilicon is proud to be an Equal Opportunity Employer. We do not discriminate based upon race, religion, color, age, national origin, gender (including pregnancy, childbirth, or related medical conditions), sexual orientation, gender identity, gender expression, genetic information, status as a protected veteran, status as an individual with physical or mental disability, or other applicable legally protected characteristics. This policy applies to all employment practices within our organization, including hiring, recruiting, promotion, termination, layoff, recall, leave of absence, compensation, benefits, training, and apprenticeship. NextSilicon makes hiring decisions based solely on qualifications, merit, and business needs at the time.