Who We’re Looking For
Our engineers are responsible for designing, coding, testing, deploying and supporting our products. We encourage engineers to engage with customers frequently to understand how they are using our products, what could be done better, and what problems we should solve next.
You understand that there are more ideas than we can ever execute in our lifetimes, and have a tendency to break them down into small incremental milestones that can demonstrate a concrete benefit to customers.
You may be the right fit if you…
- have taken a compiler class and are aware of basic compiler concepts such as parsing (lexical and semantic analysis), Abstract Syntax Trees, code-generation, etc.
- are comfortable reading and modifying other people’s large C/C++ codebases that are continually changing.
- have written parsers (maybe toy parsers), played with Lexx/Yacc/Bison, generated ASTs from text, defined formal grammars, etc.
- Written or worked on transpilers, interpreters, written REPL evaluators, etc.
- Have a solid background of building, deploying and shipping code.
- Aren’t bound by “programming language” but will pick up a new language basics quickly by reading a book, watching online tutorials, etc. Ideally you have a history of picking up new languages rapidly.
Bonus points if you…
- have taken over existing codebases, and are passionate about making other developer’s lives easier
- want to make your code good instead of just making it work
- have lead a team of engineers
- have worked on something unusual or contrarian, and won your colleagues over by demonstrating favorable results