Compiler Engineer in Test
Posted on Saturday, June 18, 2022
At Matter Labs, we believe freedom drives progress and prosperity. We don’t see ourselves as a company, but as a team aligned around a single mission: to advance personal freedom for all (see ZK Credo).
To achieve this goal, we’re building zkSync — a credibly neutral, fully open source technology stack and network on top of Ethereum, which is owned and governed by its community. We use advanced cryptography called zero-knowledge proofs to scale Ethereum infinitely without compromising on security or decentralization. With a world-class team, a community of over 1M supporters across Twitter + Discord, and hundreds of millions $ in funding, we have abundant resources to accomplish the mission.
Previous compilers for smart contracts were usually written from scratch. That meant reinventing the wheel, a poor optimization pipeline, and lack of tools. We aim to fix this and deliver production-quality toolchains and a better development experience to our customers. That’s why we use LLVM, follow LLVM development practices, and upstream our fixes. In particular, we strongly prefer to reuse well-written and decently-tested code.
Doing even better testing is where you come in. Smart contract compiler bugs can cause our customers to lose currency, so thoughtful and comprehensive testing is essential. Complete testing of a blockchain programming language is impossible, so the ability to plan and prioritise the most important areas to test is crucial. Enjoyment of software testing and bug filing is required.
What You'll Be Doing
- Adapting and/or creating compiler correctness tests
- Maintaining and supplementing testing infrastructure
- Contributing to, and criticizing, test plan(s).
- Requirements collection and documentation criticism.
- Working with developers to decide how each feature is best validated.
- Implementing test cases.
- Identifying and reporting weaknesses in current processes.
- Initial investigation of correctness and performance issues; efficiently isolating, clearly reporting, and diligently tracking bugs
What We Look For in You
- Enjoyment of testing software and filing bugs is essential
- Experience with automated testing of command-line programs
- Knowledge of software quality assurance process is required
- Understanding of the principles of compilers, and of computer architecture, plus the ability to work with machine-level and intermediate representations of programs
- Ability to program in a scripting language
- Understanding of software engineering best-practices
- Good oral and excellent written English.
- The ability to write a clear, concise, and accurate bug report is required.
- Experience in testing compilers, especially LLVM-based
- Ethereum experience
- Examples of open source bug reports are a strong plus
Working at Matter Labs
At Matter Labs, you have the freedom to work how you want, when you want, and from where you want. All positions are 100% remote (with optional travel to team and/or industry events). We operate in lean and nimble teams, with no time tracking and minimum bureaucracy. We move fast. Only results matter. We will provide you with everything you need to learn, grow, and be productive.
Our results-only environment means anyone who believes in our mission can join us, regardless of background, sexual orientation, race, gender, and age. Both our team and community are made up of people from diverse backgrounds. That's why, out of politeness and respect, we refrain from opinions on politics, religion, or sex at the workplace.
We designed our culture around the tenants of freedom and ownership. This ethos will underpin our positive-sum community as we evolve toward full decentralization.
If this role resonates with you, apply now for prompt feedback.
Read more about working at Matter Labs here.
Important: We are remote-first, operating in the timezones between UTC-5 (Latam and Atlantic Coast) to UTC+7 (South-East Asia). While we’re currently not hiring in the US, we do consider US-based applicants willing to relocate.