Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[website] Open the Docs-infra engineer role (@danilo-leal) #42496

Merged
merged 2 commits into from
Jun 2, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion docs/data/base/pages.ts
Original file line number Diff line number Diff line change
Expand Up @@ -110,7 +110,7 @@ const pages: readonly MuiPage[] = [
children: [
{
pathname: '/base-ui/guides/working-with-tailwind-css',
title: 'Working with Tailwind CSS',
title: 'Working with Tailwind CSS',
},
{
pathname: '/base-ui/guides/overriding-component-structure',
Expand Down
6 changes: 6 additions & 0 deletions docs/pages/careers.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -152,6 +152,12 @@ const openRolesData = [
'You will strengthen the MUI X product, build ambitious and complex new features, work on strategic problems, and help grow adoption.',
url: '/careers/react-engineer-x/',
},
{
title: 'React Engineer — Docs-infra',
description:
'You will drive the development and maintenance of the documentation platform that powers all MUI products.',
url: '/careers/react-engineer-docs-infra/',
},
],
},
{
Expand Down
7 changes: 7 additions & 0 deletions docs/pages/careers/react-engineer-docs-infra.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
import * as React from 'react';
import TopLayoutCareers from 'docs/src/modules/components/TopLayoutCareers';
import * as pageProps from 'docs/pages/careers/react-engineer-docs-infra.md?muiMarkdown';

export default function Page() {
return <TopLayoutCareers {...pageProps} />;
}
110 changes: 110 additions & 0 deletions docs/pages/careers/react-engineer-docs-infra.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,110 @@
# React Engineer — Docs-infra

<p class="description">You will drive the development and maintenance of the documentation platform that powers all MUI products.</p>

Check warning on line 3 in docs/pages/careers/react-engineer-docs-infra.md

View workflow job for this annotation

GitHub Actions / runner / vale

[vale] reported by reviewdog 🐶 [Google.Will] Avoid using 'will'. Raw Output: {"message": "[Google.Will] Avoid using 'will'.", "location": {"path": "docs/pages/careers/react-engineer-docs-infra.md", "range": {"start": {"line": 3, "column": 28}}}, "severity": "WARNING"}

Check warning on line 3 in docs/pages/careers/react-engineer-docs-infra.md

View workflow job for this annotation

GitHub Actions / runner / vale

[vale] reported by reviewdog 🐶 [MUI.NoCompanyName] We avoid referencing the company name 'MUI products'. Instead you can reference a product or the team. Raw Output: {"message": "[MUI.NoCompanyName] We avoid referencing the company name 'MUI products'. Instead you can reference a product or the team.", "location": {"path": "docs/pages/careers/react-engineer-docs-infra.md", "range": {"start": {"line": 3, "column": 117}}}, "severity": "WARNING"}

## Details of the role

- **Location**: Remote (preference for UTC-5 to UTC+2).
- **Type of work**: Full-time (contractor or employee [depending on circumstances](https://mui-org.notion.site/Hiring-FAQ-64763b756ae44c37b47b081f98915501#494af1f358794028beb4b7697b5d3102)).
- **Level**: [confirmed IC3 or above](https://mui-org.notion.site/Leveling-at-MUI-5c30f9bfe65149d697f346447cef9db1).
- We're a **remote** company, we prefer asynchronous communication over meetings.

Check warning on line 10 in docs/pages/careers/react-engineer-docs-infra.md

View workflow job for this annotation

GitHub Actions / runner / vale

[vale] reported by reviewdog 🐶 [Google.We] Try to avoid using first-person plural like 'We'. Raw Output: {"message": "[Google.We] Try to avoid using first-person plural like 'We'.", "location": {"path": "docs/pages/careers/react-engineer-docs-infra.md", "range": {"start": {"line": 10, "column": 3}}}, "severity": "WARNING"}

Check warning on line 10 in docs/pages/careers/react-engineer-docs-infra.md

View workflow job for this annotation

GitHub Actions / runner / vale

[vale] reported by reviewdog 🐶 [Google.We] Try to avoid using first-person plural like 'we'. Raw Output: {"message": "[Google.We] Try to avoid using first-person plural like 'we'.", "location": {"path": "docs/pages/careers/react-engineer-docs-infra.md", "range": {"start": {"line": 10, "column": 31}}}, "severity": "WARNING"}

## The company

MUI's story began in 2014 with Material UI, the most successful React implementation of Google's Material Design.
Today, Material UI stands as one of the most popular open-source libraries on GitHub and has paved the way for the fully-fledged startup known as MUI (founded in 2019), which now boasts an ever-expanding ecosystem of React UI products.
We're a company of 35+ people as of early 2024, and we're growing.

Check warning on line 16 in docs/pages/careers/react-engineer-docs-infra.md

View workflow job for this annotation

GitHub Actions / runner / vale

[vale] reported by reviewdog 🐶 [Google.We] Try to avoid using first-person plural like 'We'. Raw Output: {"message": "[Google.We] Try to avoid using first-person plural like 'We'.", "location": {"path": "docs/pages/careers/react-engineer-docs-infra.md", "range": {"start": {"line": 16, "column": 1}}}, "severity": "WARNING"}

Check warning on line 16 in docs/pages/careers/react-engineer-docs-infra.md

View workflow job for this annotation

GitHub Actions / runner / vale

[vale] reported by reviewdog 🐶 [Google.We] Try to avoid using first-person plural like 'we'. Raw Output: {"message": "[Google.We] Try to avoid using first-person plural like 'we'.", "location": {"path": "docs/pages/careers/react-engineer-docs-infra.md", "range": {"start": {"line": 16, "column": 53}}}, "severity": "WARNING"}

## The products

MUI is best known for our flagship product, Material UI—but this is just one of three core component libraries we maintain.

Check warning on line 20 in docs/pages/careers/react-engineer-docs-infra.md

View workflow job for this annotation

GitHub Actions / runner / vale

[vale] reported by reviewdog 🐶 [MUI.NoCompanyName] We avoid referencing the company name 'MUI is'. Instead you can reference a product or the team. Raw Output: {"message": "[MUI.NoCompanyName] We avoid referencing the company name 'MUI is'. Instead you can reference a product or the team.", "location": {"path": "docs/pages/careers/react-engineer-docs-infra.md", "range": {"start": {"line": 20, "column": 1}}}, "severity": "WARNING"}

Check warning on line 20 in docs/pages/careers/react-engineer-docs-infra.md

View workflow job for this annotation

GitHub Actions / runner / vale

[vale] reported by reviewdog 🐶 [Google.We] Try to avoid using first-person plural like 'our'. Raw Output: {"message": "[Google.We] Try to avoid using first-person plural like 'our'.", "location": {"path": "docs/pages/careers/react-engineer-docs-infra.md", "range": {"start": {"line": 20, "column": 23}}}, "severity": "WARNING"}

Check warning on line 20 in docs/pages/careers/react-engineer-docs-infra.md

View workflow job for this annotation

GitHub Actions / runner / vale

[vale] reported by reviewdog 🐶 [Google.We] Try to avoid using first-person plural like 'we'. Raw Output: {"message": "[Google.We] Try to avoid using first-person plural like 'we'.", "location": {"path": "docs/pages/careers/react-engineer-docs-infra.md", "range": {"start": {"line": 20, "column": 112}}}, "severity": "WARNING"}
Base UI is our headless component library, and Joy UI is a sister library to Material UI that implements our own in-house Joy Design system.

Check warning on line 21 in docs/pages/careers/react-engineer-docs-infra.md

View workflow job for this annotation

GitHub Actions / runner / vale

[vale] reported by reviewdog 🐶 [Google.We] Try to avoid using first-person plural like 'our'. Raw Output: {"message": "[Google.We] Try to avoid using first-person plural like 'our'.", "location": {"path": "docs/pages/careers/react-engineer-docs-infra.md", "range": {"start": {"line": 21, "column": 12}}}, "severity": "WARNING"}
We also host Design Kits and pre-built Templates.

Beyond the core libraries, MUI X offers advanced components like the Data Grid, Date and Time Pickers, and Charts, for more complex user interactions and data visualization needs.

We're also making ambitious moves to incorporate our full suite of components into Toolpad, a low-code admin builder tool for assembling full-stack apps faster than ever.

Learn more about MUI's products in this blog post: [An introduction to the MUI ecosystem](https://mui.com/blog/mui-product-comparison/).

## The culture

MUI is a fully remote company with a team that spans the globe.
The majority of our work is asynchronous, and we rely on written communication to collaborate.
We're radically transparent: nearly all of our work happens in public.
Each contributor has the freedom to decide how and when they work, and that work is primarily self-directed: it's your responsibility to define and complete your own tasks in a timely manner.

Learn more about what we value as an organization: [Evolving MUI's core values and behaviors](https://mui.com/blog/2023-mui-values/).

## Why we're hiring

Documentation is critical to the overall experience of our products, and as one of the leading open-source UI projects, users expect our docs to be the best in class.
It's a differentiating factor for the product.

The docs are the primary means by which developers discover our products and learn how to wield them effectively.
And just like the products themselves, the documentation should reflect our fundamental priorities of performance, speed, beauty, and clarity.

Our internal Docs-infra team currently shares responsibility for this domain, and they've developed features such as [autogenerated](https://x.com/olivtassinari/status/1783894370011213869) OG images, multi-tab component demos, [speed](https://github.com/mui/material-ui/pull/40314) performance improvements, and more.

There are so many other features we'd like to implement, and projects we could draw inspiration from (for example, [Nextra](https://nextra.site/))—but the existing team (each of whom spends most of their time on one of our product engineering teams) simply doesn't have the bandwidth to take on bigger and more ambitious projects.
For example, we could offer visitors the ability to toggle the design language they want to view the docs in; add automatic conversion of demos to Tailwind CSS; use AI to provide component demo customization; and so much more.

That's why we're looking for a skilled JavaScript developer to own the docs infrastructure as their full-time responsibility.

## The role

As the first full-time React engineer to own this domain, you will work on developing new features and infrastructure-related tasks to make documentation generation and consumption smoother, faster, and more intuitive.

Because this role involves maintaining a platform that all of our products depend on, you will have frequent opportunities to foster cross-team collaboration to gather feedback and iterate on new features.
Day-to-day tasks may range from internal configuration improvements (for example, working with Webpack, AST transformation tools, Netlify, and other developer tools) to user-facing feature implementation (for example, developing a playground feature teams can use to showcase components), so you should be comfortable working across the full stack of a Next.js-based app.
You will also play a fundamental role in defining the Docs-infra roadmap and priorities.

### Key responsibilities

- Ensure the documentation feels fast and snappy for readers
- Monitor Lighthouse scores, bundle size, and search quality to make incremental improvements
- Develop new features that will enhance the way the libraries are showcased
- Improve the documentation authoring experience for both the maintainers and the community
- Own infrastructure tasks like managing dependencies, analytics, TypeScript modules, and hosting, so product teams can stay focused on their primary responsibilities

### Tasks and initiatives you might take on

- Migrate the docs platform to the Next.js App Router
- Allow users to search the docs within a specific product scope
- Make it possible to store different parts of our documentation in different repositories
- Standardize the documentation design and layout across all of MUI's products
- Introduce a more scalable solution for hosting videos and images

## Who we're looking for

### Required

- You're comfortable with the modern JavaScript ecosystem: we use React, TypeScript, Node.js, Next.js, Webpack, and Babel, among other tools
- You get energized to dive into complex problems
- You're excited about helping engineers and designers build amazing UIs
- You're highly empathetic
- You have good product/design sensibility
- You have great written and spoken English skills

### Nice to have (but not required)

- Strong product/design skills
- Experience in open-source
- Experience with design systems
- Experience with MUI products

## Benefits and compensation

We offer competitive compensation commensurate with your experience level and location and are prepared to pay top market rates for someone who can clearly exceed the role's expectations.
You can find the other perks and benefits on the [careers](https://mui.com/careers/#perks-and-benefits) page.

## How to apply

[Apply now for this position 📮](https://jobs.ashbyhq.com/MUI/673f3178-56f4-47fd-bd2b-6dcba57758aa/application?utm_source=ZNRrPGBkqO)
(will add the link once we publish the role also on Ashby)

Don't meet every requirement?
Apply anyway!
Research shows that certain folks are less likely to apply for a role than others [unless they meet 100%](https://hbr.org/2014/08/why-women-dont-apply-for-jobs-unless-theyre-100-qualified) of the outlined qualifications.
If this role excites you, we want to hear from you.
We'd love for you to share the unique skills, passion, and experience you could bring to MUI.
2 changes: 1 addition & 1 deletion docs/translations/translations.json
Original file line number Diff line number Diff line change
Expand Up @@ -133,7 +133,7 @@
"/base-ui/react-transitions/hooks-api/#use-transition-state-manager": "useTransitionStateManager",
"/base-ui/react-transitions/hooks-api/#use-transition-trigger": "useTransitionTrigger",
"/base-ui/guides": "How-to guides",
"/base-ui/guides/working-with-tailwind-css": "Working with Tailwind CSS",
"/base-ui/guides/working-with-tailwind-css": "Working with Tailwind CSS",
"/base-ui/guides/overriding-component-structure": "Overriding component structure",
"/base-ui/guides/next-js-app-router": "Next.js App Router",
"/material-ui/getting-started-group": "Getting started",
Expand Down
2 changes: 1 addition & 1 deletion packages/mui-docs/src/translations/translations.json
Original file line number Diff line number Diff line change
Expand Up @@ -97,7 +97,7 @@
"decreaseSpacing": "decrease spacing",
"demoToolbarLabel": "demo source",
"demoStylingSelectSystem": "MUI System",
"demoStylingSelectTailwind": "Tailwind CSS",
"demoStylingSelectTailwind": "Tailwind CSS",
"demoStylingSelectCSS": "Plain CSS",
"diamondSponsors": "Diamond sponsors",
"becomeADiamondSponsor": "Become a Diamond sponsor",
Expand Down
Loading