Mission first
Computers are the most powerful tools to exist in the history of humanity. Sadly most people are mere consumers of these machines. Only a relative few–the professional software developer–can use this superpower to its fullest extent. It’s creating an unbalanced world where there are programmers, and then there are those who are programmed. The situation is analogous to literacy before the printing press, where only the powerful had access to books and written communication. The invention of the printing press led to democratic, scientific, and industrial revolutions, but it took about a century from creation to revolution, which meant that an entire generation of people had to grow up with new skills, outlooks, and ways of learning and communicating.
Replit exists to enable the next billion software creators. Our bet is that if more people can it’s easier to create software more people would want to do it. If more people code, more people will be able to independently create and generate wealth on the internet, regardless of their background. If we’re successful, anyone who's willing to learn and generate good ideas will be wealthy.
Advancing our mission is not only a business imperative—it’s also a moral one. Anything that distracts us from our mission will be ruthlessly cut.
Think radical
When we first put coding in the browser, people said it was stupid, and that nobody wanted what we were building. When we made coding multiplayer, they said no one would want to work this way. When we said we said learning and building is one and the same, no one wanted to fund us; they said we’re not focused enough. Every step of the way, we’ve questioned norms, we’ve taken contrarian technology bets that paid off years in the future, and we’ve hired people no one wanted to hire who are now industry leaders. We’re going to keep doing it especially when people tell us it sounds crazy.
How do we do that? By thinking radically, unmarred by conventions. When you feel strongly about something, don’t take no for an answer. Argue your point of view strongly. Then build it anyway and see what happens after a few users give it a try. Don’t just work on it. Play with it. Don’t wait for someone to tell you what they want. No one asked us to remove the save button on the code editor, but it seemed like a totally unnecessary extra step. And when we removed it, it made things just a little bit smoother.
We need to help each other keep that spirit up, too. Growing our team can’t mean slowing down or making it hard for what’s weird or wacky to win. If you see someone get a twinkle in their eye about something, tell them to drop what they’re doing and follow it for a day. If someone shares an idea they’re passionate about, and you think it sounds totally wrong, tell them to prove you wrong. When someone suggests something absolutely bonkers, call them a weirdo and mean it in a good way. When someone asks you for feedback, don’t give them all the small ways it won’t work, give them all the big ways it could. Our users–current and future–depend on it.
Work with intensity
We've been able to achieve so much with so little because everyone at Replit takes ownership over their work. While we don’t consider collaboration a burden, we do think people can move fastest when every project has a single strong owner. This is a lot of responsibility and requires intrinsic motivation, but we find it infinitely more satisfying to work this way. We also believe this is the kind of organization the best people want to work in.
Be reliable. Follow through. Take extreme ownership. Hold your work to a high standard. Be resourceful. Don’t make excuses. Bias towards action. Refuse to be blocked. Be decisive. Build the prototype. Schedule the demo. Work hard. Break it down into smaller pieces and ship it. Do it today, not tomorrow. If that seems hard, as U.S. Navy Seal, Jocko Willink puts it, “Relax. Look around. Make a call.” Remember, you have everything you need to get things done. And if you feel like you don’t, your bright and talented colleagues can help.
We’re all here to ship great things in pursuit of our mission. There will always be an infinite number of things to do, fix, tweak, or experiment with. Let’s be an organization full of people that get shit done without being asked or told.
Seek pain
When you’ve poured your heart and soul into a product, negative user feedback can be painful, and metrics that don’t live up to the dream can be hard to look at. Most people will choose to lie to themselves and paint a rosy picture—at least for a while until reality is forced on them. Eventually you’d have to face the pain of admitting that things are not working and you need to change your plans. The longer you deny and wait, the more pain you’re building up.
Paradoxically facing up to harsh reality nets you less pain in the future. We need to be optimistic about the future; we need to be able to dream, but we also need to be tethered to the here and now. The faster you pivot and move and change the faster you arrive at the promise land. That will create churn and thrash and might burn out some people who are too rigid to change their mind. But we’d rather win than tend to people’s emotions.
Tackling hard problems can be painful. You don’t know what you don’t know, so what you thought was going to be a quick fix is suddenly an all-nighter. What you thought was going to be a day’s work might take a week or a month. But if you believe this is on the critical path of success; that will make our product significantly better for our users, then we keep going until we nail it. If you do that enough times, you build not only a great product, but also an awesome technical advantage.