Metaprogrammer, Mathlib Initiative
About the role
The Mathlib Initiative is hiring a Lean Metaprogrammer with a focus on computational methods to assist with the development of Lean’s mathematics library Mathlib. Mathlib already relies heavily on a valuable set of metaprograms in the form of tactics, linters, decorators such as to_additive and to_dual, code actions, and more. You will assist in maintaining what we have and especially in creating many more such tools. Of particular interest will be creating new tactics like norm_det and norm_rank which provide support for computational mathematics.
Responsibilities
In this role, you will:
- Design and implement key Lean metaprograms to support the growth and maintenance of Mathlib.
- Ship fast, maintainable, tested code and so speed up its development.
- Suggest and implement ideas for impactful applications of metaprogramming in Mathlib.
- Contribute your work to the relevant repository (usually Mathlib) using GitHub pull requests.
- Engage with review of your work, provided either by members of the Mathlib Initiative team, or by wider members of the Lean community, especially members of the Mathlib Maintainer team.
Your primary responsibility will be to identify, implement, and support the development of:
- new tactics
- new linters
- new code actions
Secondary responsibilities will include the maintenance of Mathlib’s existing metaprogramming and the support of incoming metaprogramming contributions. This work is likely to include:
- Identifying locations in Mathlib where any new tactics you create should be used.
- Assisting with the roll out of new linters, refactoring Mathlib as needed.
- Reviewing pull requests which require specialist metaprogramming expertise.
- Addressing issues which arise in existing metaprograms (e.g., a bug or performance issue in a tactic or linter).
- Collaborate with and provide assistance to members of the Mathlib Initiative as needs for your particular expertise arise.
Requirements
- Lean metaprogramming expertise: Proficiency in Lean and especially in Lean metaprogramming is highly desirable.
- Computational methods expertise: Knowledge of algorithms for computational linear algebra, computational polynomials, and interval arithmetic is highly desirable.
- Strong communication skills: This role will require frequent collaboration with both technical and mathematical domain experts.
- Mission alignment: We seek people who care about advancing mathematical formalization and open science.
Ideal Candidate
- Open source experience: Experience contributing to open-source projects is desirable.
- Mathlib contributor: Experience contributing to Mathlib is desirable.
Why This Role Matters
For Mathematics: You will build tools that make mathematical knowledge machine-verifiable, searchable, and universally accessible—transforming how mathematics research and education take place.
For Your Career: This is a unique opportunity to build powerful tools which will manipulate mathematics digitally and at scale.
For Global Impact: Your work will enable mathematical breakthroughs worldwide, supporting everything from solo mathematicians to AI research labs to university classrooms to critical software verification.
Position Details
- Work Structure: Full-time position. Fully remote. Flexible schedule. Fixed-term contract: initial two-year position.
- Compensation: $100K – $160K (based on experience and location) + benefits
- Growth opportunity: As Mathlib scales, so does the importance of all force-multiplier roles such as this one.
Team & Culture
- Collaborative environment: You will join a highly collaborative team supporting a hugely collaborative open-source project.
- Mission-driven: You will join a team that is passionate about transforming mathematical practice.
- Technical excellence: We have high standards for code quality and system reliability.