# The Way We Work Around Here
Creating value for customers is at the heart of what we do. The following ideas are aims at improving the velocity at which we can add value to our product and processes. While originally drafted for engineering teams, we believe most of the ideas work just as well when applied to non-technical roles.
# Fix problems while they’re small
A common rule we should always try to heed is to detect and fix any problem at the lowest-value stage possible.
We care about working on the right things, not doing more than needed, and not duplicating work. This enables us to achieve more progress which makes our work more fulfilling.
- Boring solutions. Use the most simple and boring solution for a problem. You can always make it more complex later if that is needed. The speed of innovation for our organization and product is constrained by the total complexity we have added so far, so every little reduction in complexity helps. Don't spend time making an elaborately formatted slideshow when a simple list will do. Engineers: don't pick an interesting technology just to make your work more fun, using code that is popular will ensure many bugs are already solved and its familiarity makes it easier for others to contribute.
- Be respectful of other's time Consider the time investment you are asking others to make with meetings and a permission process. Try to avoid meetings and if one is needed make attendance optional by making the invite optional, by having a clear agenda linked from the invite, and by documenting the outcome. Instead of having people ask permission trust their judgment and offer a consultation process if they have questions.
- Spend company money like it's your own. Every dollar we spend will have to be earned back, be as frugal with company money as you are with your own.
- Frugality Amazon states it best with: "Accomplish more with less. Constraints breed resourcefulness, self-sufficiency and invention. There are no extra points for growing headcount, budget size or fixed expense."
- Short verbal answers Give short answers to verbal questions so the other party has the opportunity to ask more or move on.
- Keep broadcasts short and concise And keep one-to-many written communication short, as mentioned in this HBR study: "81% of businesspeople surveyed say that what they read is frequently ineffective because it’s too long, poorly organized, unclear, filled with jargon, and imprecise."
- Managers of one. We want team members who can self-manage and don't need overhead of daily check-ins to achieve their goals.
- Responsibility over rigidity when possible we give people the responsibility to make a decision and hold them accountable for that instead of imposing rules and approval processes.
- Accept mistakes Not every problem should lead to a new process to prevent them. Additional process make all actions more inefficient, a mistake only affects one.
# Work Iteratively
Work in small iterations. Look to make the quickest change possible to improve the outcome. Instead of spending a a lot of amount of time to redesign a Customer Profile page or revamp a business process, consider starting with one small improvement at a time. Instead of writing a large plan, consider starting with the first step.
Small iterations make it quicker to get feedback from others.
Reduce cycle time Short iterations reduce our cycle time.
Minimum Viable Change (MVC) Always look to make the quickest change possible to improve the outcome. If you think it is better than what is there now do it, no need to wait for something polished.
Do the smallest thing possible and get it out as quickly as possible. If you make suggestions that can be excluded from the first iteration turn them into a separate issue. Don't write a large plan, only write the first step. Trust that you'll know better how to proceed after something is released.
You're doing it right if you're slightly embarrassed by the minimal feature set shipped in the first iteration. This value is the one people underestimate when they join our team: the impact both on your work process and on how much you achieve is greater than anticipated. In the beginning it hurts to make decisions fast and to see that things are changed with less consultation. But frequently the simplest version turns out to be the best one.
# Write a Pitch
Whenever you feel compelled to call a meeting or otherwise interrupt your team members, considering writing a pitch instead:
Write a Pitch If you need to decide something as a team make a Pitch instead of calling a meeting to get everyone's input. Having a written Pitch will be a much more effective use of everyone's time. The people that receive the proposal should not feel left out, the person making it should not feel bad if a completely different proposal is implemented. Don't let your ego to be involved early or to see your solution implemented stand in the way of getting to the best outcome.
The concrete is still wet. Everything is in draft at White Rabbit and subject to change although we rarely put draft on any content or pitches.
Work as part of the community Small iteration make it easier to work with the wider community. Their work looks more like our work, and our work is quicker to give feedback too.
- Helping others is a priority, even when it is not related to the goals that you are trying to achieve. You are expected to ask others for help and advice. Anyone can chime in on any subject. The person responsible for the task decides how to do it but should always take the suggestions seriously and try to respond and explain.
- Kindness. We don't want jerks in our team.
- Do negative feedback one-to-one. Give negative feedback in the smallest setting possible, one-on-one video calls are preferred.
- Say thanks. Recognize the people that helped you publicly, for example in our #thanks chat channel. Give recognition generously, in the open and often to generate more engagement from your team.
- If you make a mistake own it. Acknowledge it and fix it. Ask for help if needed. Mistakes happen and will be forgiven. Hiding mistakes however is unacceptable.
# Managing Conflict
When there is conflict, manage it. Some workplaces seek to avoid conflict, but we believe teams often deliver their best results when they manage conflict constructively. Constructive debate is a effective way to quickly get to the heart of a matter when exploring problems and identifying solutions. People are expected to stop fighting each other and to search for the right answer together. Join arms and attack the problem instead. Some people are not good at constructive conflict and can't take criticism. Those people probably don't belong in the room.
When searching for the best answer, fight like you’re right; listen like you’re wrong.