We put culture and our physical and emotional well-being first. We will never stop learning. We will build our business through maximizing value for our users, customers and colleagues. We believe that Open Source is an extremely powerful idea. We are motivated by the impact of my work. We will communicate a lot and effectively. We value the bond that connects us as a team. We support inclusion and diversity. We believe in treating each other, and the world, with compassion, kindness and respect. We do a freaking good job.
You are expected to contribute. This system is expected to crash. Raise issues and push fixes.
Thesis: a great culture is a culture that is constantly being improved and is in constand flux.
Corollary: the activity of these repos reflects the engagement of the community and the health of the company.
The first and most important line of the creed means that you’re never finished. There is always more to learn. The enemy of this is thinking you’re right, putting too much weight on your experience, or passing up an opportunity to understand someone’s point of view.
We will build our business through creating the most value for our community of users, customers and collegues.
There are four groups of people that we care most about: users, customers, collegues and investors. We believe that by optimizing the wellness of the first three groups (users, customers and colleagues) we will maximize our business value as well, which means optimizing the wellness of our investors.
We define success as maximizing the wellness of the groups that consitute Nixtla. We understand this as a max-min Rawlsian social welfare function (called the 'egalitarian rule'), where we want to select an element
Where
It doesn’t matter who you report to or what division you’re in. If you’re an Nixtlican, every other Nixtlican is your colleague. A culture where we always try to help one another is the one we all want to work in.
Taken more broadly, colleagues are all those in the same role in the world. Can you write a blog post or give a talk that will help everyone who is exposed to it?
Part of helping someone is communicating clearly. This doesn’t mean saying “yes” to every request. The distance between saying you’ll help someone and actually helping them is a gap often created with the best intentions. But when we don’t bridge that gap, accountability suffers throughout the organization. Our desire to help might make it tempting to tell someone we’ll do something, but we should always be impeccable with our word.
This is true in all relationships, and especially in the long distance ones we’re in during most of the year at Nixtla.
Poor communication (and understanding) is at the root of every disagreement, conflict, and poorly managed project. When people understand each other, difficulties melt away. (Most true conflict in a work environment is imagined.)
The reference to oxygen is not accidental: too much oxygen can be fatal as well. As a group scales past the level where it’s most efficient for everyone to keep up with everything, it’s important to invest time from an editorial mindset making sure that the right information isn’t just published, but it’s heard and understood by those who need to.
We don’t make software to make money, we make money to make more software.
However, we also like nice things and money is totally fine, and it’s completely necessary in our current socioeconomic system for everything we want to accomplish as a company — and for many things individually. No one should feel embarrassed about discussing compensation with HR. But we work for more than just a paycheck.
Doing a freaking good job means necessarily embracing failure in your work and other's work. Feel free to experiment and fail. Break stuff... but not the same stuff. And also, please fix it, or at least raise an issue.
We understand quality of our work with the following criteria:
- Ownership
- Delivery focused
- Tested
- Documented
If you are not embarrassed by your old code, you’re not learning enough. If you’re not embarrassed when you ship your first version, you waited too long.
Good workd is anchored in first principles thinking.
We ship good code fast.
Be aware that you are always writing code for others, not only yourself. Please be mindful. In other words: be kind and take the necessary time to write good code. Its better and faster in the long term.
Given our definition of sucess (Maximizing value for users, customers and collegues) a good proxy of our perfomance is the sum of the satisfaction metric of each of those groups in relation to the individuals in the company and the company itself.
Food for thought: These three metrics should be your guiding light:
- User satisfaction: how do the internal or external users of your code perceive the value you create for them?
- Customer satisfaction: how satisfied are the customers?
- Collegue satisfaction: how satisfied are your collegues with you?