Community Manager for JupyterHub and Jupyter Book
Align maintainer and contributor actions with the goals of each project and build bridges across the Jupyter ecosystem.
The JupyterHub and Jupyter Book communities are hiring a community manager.
In JupyterHub we are democratizing access to interactive computing environments to allow everyone, no matter where they are, to explore data, develop code, and advance knowledge without barriers. In Jupyter Book we are building the next generation of open, community-driven technical publication tooling, leveraging the MyST document engine to create modular, reusable, and reproducible computational narratives.
We are excited to fund dedicated time for someone - maybe you! - to join these teams.
The community manager will be responsible for identifying and developing activities and communication pathways that align maintainer and contributor actions with the goals of each project, and that build bridges across the Jupyter ecosystem.
You can read more about our motivation for this role in the proposal, part of the Jupyter Foundation’s Community Funding initiative. We particularly encourage applicants to review the section “Impact Metrics: How do we define success?”
In this post we have outlined the community manager’s Responsibilities, their Preferred expertise, and How to apply.
This is a contract role, funded at $90,000 to be spent by the end of April 2027. The community manager will be engaged as a contractor of the Linux Foundation and will follow the standard Linux Foundation contractor onboarding process.
Responsibilities¶
Strategic alignment and contributor guidance
Collaborate with the maintainer teams from both projects to understand, document, and broadcast each project’s priorities to their communities.
Actively connect contributors to open issues and workstreams that align with the respective project’s goals, and redirect well-intentioned contributions that are not aligned with the project’s currently prioritized efforts.
Efficiently connect contributors with maintainers to provide them the guidance and review needed to make efficient progress, managing workload on both sides of the mentorship pair.
Contributor growth and leadership development
Design, visualize, and manage a clear contributor journey, including identifying requisite skills and project context knowledge, for each community.
Identify engaged community members and create pathways for them to take on more responsibility, such as triaging issues, reviewing pull requests, or mentoring others within their project of interest.
Fostering knowledge sharing and collaboration
Identify and create opportunities for the community of each project to share information, best practices, and technical knowledge, while respecting their distinct roadmaps.
Facilitate cross-community events, such as running “collaboration cafes” for both JupyterHub and JupyterBook, and strategically shape them into meetings that provide value and foster connection for both projects.
Develop re-usable templates for explaining contributor pathways, such as onboarding documentation, skills maps/matrices for progression into contribution and maintenance roles, and Collaboration Cafe guides.
Learn in the open
Ensure all materials are publicly available and discoverable, including progress against our community health metrics described below.
Promote these learnings across the Jupyter community including within the Zulip channel, at regular community calls, and by “visiting” other sub-projects (at synchronous meetings or in asynchronous discussion spaces) to discuss community management efforts as requested.
Join the Jupyter Community Building Working Group and be an active member throughout their paid time on the project.
Preferred expertise¶
We have not marked any of the expertise categories listed here as required. We recognise that we are looking for a unicorn, and they are curiously hard to find! If you do not have expertise across all of these categories we encourage you to apply. We are looking forward to getting to know candidates better, including where they have identified opportunities for career and skill development as part of the JupyterHub and Jupyter Book teams.
Our assessment pathway is included as part of this list to guide applicants in curating their strongest application.
If you are uncertain how to answer any of the questions and/or prompts, please ask in our Jupyter Hub Zulip channel or email Kirstie Whitaker directly at kirstie
Track record of contributions to open source projects.
Assessment: Cover letter & links
Understanding of multi-stakeholder, community governed open source community dynamics.
Assessment: Interview question
Describe two situations - one featuring a success and one a failure - where you have sought to align diverse stakeholders around a common goal. For both, share what you learned from the experiences.
Understanding of the challenges that Jupyter Hub and Jupyter Book are designed to solve (or reduce) in the world.
Assessment: Interview question
Describe two deployments - one each of Jupyter Hub and Jupyter Book - that each meet a need in either education, research or technical development.
You do not need to have run these deployments yourself.
Technical skills in Python and/or TypeScript.
Assessment: Cover letter & links
Track record of identifying and completing tasks in the presence of significant uncertainty.
Assessment: Cover letter
Ability to work effectively with two distinct and diverse teams whose community members are geographically distributed with significant time zone differences.
Assessment: Cover letter
All instructions from this recruitment call followed, the letter is clearly and concisely written, includes concrete examples, and publicly accessible links where appropriate.
Assessment: Interview question
Given your knowledge of Jupyter Hub and Jupyter Book, and your previous experience, how will you know if you are working effectively within these two communities?
Ability to ask for help and self manage time allocations and tasks.
Assessment: Interview question
Which aspects of this role do you think will be hard for you? Which aspects will be easy (or easier) for you? Where do you expect to ask for help and/or support in the role?
How to apply¶
Submit a cover letter and resume through this Google Form: https://
Please include:
Your motivation to apply for this role.
Links to up to 3 publicly available GitHub repositories that highlight engagement in issues, pull requests, community discussions (or equivalent conversations on alternative git forge platforms).
If you don’t have publicly available links, provide a letter from a team member from a private initiative who can endorse these collaboration skills.
If you can not meet this requirement, please note that in your application.
Links to up to 3 examples of code you have written in Python and/or TypeScript.
If you don’t have publicly available links, provide a letter from a team member on a private initiative endorsing these development skills.
If you can not meet this requirement, please note that in your application.
A description of a previous role (paid or volunteer) where you have identified and delivered outcomes in the presence of uncertainty.
Include links to task documentation (issue / PR / report) if publicly available.
If you can not meet this requirement, please note that in your application.
What to expect¶
We’ll accept applications from now through 22 March, 2026.
Once applications are in, here’s our process:
Resume and cover letter review: The recruitment panel will review all applications and invite up to 5 applicants for an interview on zoom at a time that is convenient for the applicant and the panel members.
Interview: The recruitment panel will meet with applicants for 30 minutes over Zoom. They will ask the same questions of every applicant.
Panel discussion & alignment: The recruitment panel will discuss interview outcomes and align on a decision.
Offer: We expect to communicate a final decision to all applicants by 30 April, 2026.
Timeline¶
22 March 2026, AoE: Deadline for resume and cover letter applications.
Before 29 March 2026: Invite up to 5 applicants to interview.
6 April - 15 April 2026: Interviews conducted over Zoom.
Before 30 April 2026: Communicate final decision to all applicants.
May 2026: Post holder coordinates a contract with the Linux Foundation, following their standard onboarding process.
Acknowledgments¶
This job description was co-created by April Johnson, Yuvi, and Kirstie Whitaker, with guidance from Chris Holdgraf, Min Ragan-Kelley, Raniere Silva, and Stéfan van der Walt, along with community input at the JupyterHub and Jupyter Book collaboration cafes.