Everyone (rightfully so!) wants high standards. We admire good work and encourage others to do better. In the early days of my first real startup, our codebase was a mess, and every pull request was a disaster. We wanted high standards but hadn’t agreed on even the basic things we expected from each other. We had to learn the hard way that we needed to define those first.

Okay, listen. “Bare minimum” is a terrible name. I mean the effort and responsibility we need from someone before we can help them improve. Even a supportive mentor will eventually give up if that person doesn’t do their part.

I keep coming back to a few reasons for setting these expectations:

  1. Fairness: If two people work together and one consistently puts in effort while the other doesn’t meet basic expectations, the relationship breaks down. Agreed standards protect the time and goodwill of the person doing their part.

  2. Less cleanup: It is hard to help someone who doesn’t explain what they need or leaves others to clean up after them. When everyone meets basic expectations, the team can spend more time on the problems that need attention and help each other sooner.

  3. More time to teach: Mentors only have so much time. If they spend it getting someone to do the basics, they have less time to teach advanced skills. Learners need to put in that initial effort for mentoring to work.

Where I’ve seen this work#

These expectations already exist in places where people learn from each other:

  • Stack Overflow: You have to show your work before asking for help. That means giving a clear description, a code sample, and the steps you’ve already tried. Once you’ve done that, people can help you with the problem.

  • Open source: Large open source projects rely on contribution guidelines. Contributors must follow formatting rules, include tests when needed, and explain the reasoning behind changes. Maintainers need those things to review the code and help contributors improve it. The rules let people contribute while keeping the project maintainable.

  • Wikipedia: Editors must provide citations and maintain a neutral tone. Without those requirements, volunteer editors would spend their time removing unsupported claims instead of guiding new contributors.

  • Engineering teams: At Google, Intercom (we’re hiring!), or other engineering teams that work well, the basic expectations are small PRs, passing tests, and an explanation of the problem up front. My favourite explanation of this, and apologies if it’s overquoted, comes from No Rules Rules. It describes how Netflix built high talent density first, before it could go for anything else. Teams need exceptional people, but they also need everyone to meet the basic expectations of the group so they aren’t creating extra work for each other.

Doing the basics makes improvement possible#

Meeting these standards shows that a learner is engaged enough for others to invest in them. Once everyone has done the basic work, the team can spend its time helping people develop deeper skills and do better work.

High standards give people something to aim for, and basic expectations make it possible to work towards them together. I’ve watched teams that make this look easy from the outside. Everyone shows up ready to do the basics, so mentors can give more specific feedback and people learn to trust each other sooner. The quality of the work improves. For years, I thought setting high standards was enough. I was wrong.