Skip to main content

The Team

Learn more about our team, about how we live our values and about the community behind. For working groups information, access Working Groups.

Values

BBJProjeK's five core values are 🤝 Collaboration, ⏱️ Efficiency, 🌐 Diversity, Inclusion & Belonging, 👣 Iteration, and 👁️ Transparency, and together they spell the CREDIT we give each other by assuming good intent...

We take inspiration from other companies, and we always go for the boring solutions. But we continually adjust our values and strive to make them better. Our values are a living document. In many instances, they have been documented, refined, and revised based on lessons learned over time.

We used to have more values, but it was difficult to remember them all. In response, we condensed them, created an acronym, and listed operating principles to guide behavior.

🤝 Collaboration

To achieve results, team members must work together effectively. At our organization, helping others is a priority, even when it is not immediately related to the goals that you are trying to achieve. Similarly, you can rely on others for help and advice—in fact, you’re expected to do so. Anyone can chime in on any subject, including people who is not part of the organization. The person who’s responsible for the work decides how to do it, but they should always take each suggestion seriously and try to respond and explain why it may or may not have been implemented.

Kindness

We value caring for others. Demonstrating we care for people provides an effective framework for challenging directly and delivering feedback. Kindness doesn’t mean holding back on feedback or avoiding disagreements, these are crucial to professional growth and getting results for customers. Kindness means you make a separation between the work and the person, you can criticize someone’s work but still be respectful to the person. Give as much positive feedback as you can, and do it in a public way.

Share

There are aspects of our culture, such as transparency, that are unintuitive to outsiders and new team members. Be willing to invest in people and engage in open dialogue. For example, consider making private issues public wherever possible so that we can all learn from the experience. Don’t be afraid of judgement or scrutiny when sharing publicly, we all understand it’s impossible to know everything.

Everyone can remind anyone in the organization about our values. If there is a disagreement about the interpretations, the discussion can be escalated to more people within the organization without repercussions.

Providing feedback in a timely manner

We want to solve problems while they are small. If you are unhappy with anything (your work, your team, your resources, your computer), please voice your concerns rather than keeping them to yourself. If you need to escalate beyond the team, you could consider speaking to your skip-level, a more senior person, or the foundation.

Saying thanks

Recognize the people that helped you. When publicly thanking, it’s important to recognize the following:

  • Showing thanks in as large a setting as possible.
  • Thanking a person should be done sincerely and summarize why you are thankful so the person on the receiving end can easily understand why they are being thanked. Even while assuming positive intent, not all folks are comfortable with public praise.
  • There are a number of good ways and places to say thanks.

Geting to know each other

We use a lot of text-based communication, and if you know the person behind the text, it will be easier to prevent conflicts. So we encourage people to get to know each other on a personal level through informal communication, for example, virtual coffee chats.

Don’t letting each other fail

Keep an eye out for others who may be struggling or stuck. If you see someone who needs help, reach out and assist. This might involve offering to pair program or setting up a sync brainstorming session. The goal is to connect them with someone else who can provide expertise or assistance. We are a team, so we succeed and shine together by supporting each other!

People are not their work

Always make suggestions about examples of work, not the person. Say “You didn’t respond to my feedback about the design” instead of “You never listen”. And, when receiving feedback, keep in mind that feedback is the best way to improve, and that others giving you feedback want to see you succeed.

It’s impossible to know everything

We know we must rely on others for the expertise they have that we don’t. It’s okay to admit you don’t know something and to ask for help, even if doing so makes you feel vulnerable. It is never too late to ask a question, and by doing so, you can get the information you need to produce results and to strengthen your own skills.

Don’t display surprise when people say they don’t know something, as it is important that everyone feels comfortable saying “I don’t know” and “I don’t understand.” After all, we're not Lester Crest, who knows everything and not knowing a single thing creeps him out.

⏱️ Efficiency

At BBJProjeK, efficiency means achieving results without unnecessary waste of resources, time, or energy. We prioritize solutions that benefit the entire organization over individual needs. This global efficiency applies to interactions with customers, potential hires, and collaborators.

Prioritizing consistency can be tempting because it simplifies initial implementation and process management. However, we must slow down when optimizing for consistency to ensure it doesn't hinder overall efficiency.

To maximize our internal efficiency, we leverage BBJProjeK's unique work practices and principles. We understand that external partners might have different approaches, and we readily adapt our communication style to ensure effective collaboration. This might involve favoring in-person meetings over asynchronous communication for specific projects.

Write things down

We document everything: in the handbook, in meeting notes, in groups. We do that because “the faintest pencil is better than the sharpest memory.” It is far more efficient to read a document at your convenience than to have to ask and explain. Having something in version control also lets everyone contribute suggestions to improve it.

Boring solutions

Use the simplest and most boring solution for a problem, and remember that “boring” should not be conflated with “bad” or “technical debt.” Don’t pick an interesting technology just to make your work more fun; using established, popular tech will ensure a more stable and more familiar experience for you and other contributors.

Be respectful of others’ 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 necessary, try to make attendance optional for as many people as possible. Any meeting should have an agenda linked from the invite, and you should document the outcome. Instead of having people ask permission, trust their judgment and offer a consultation process if they have questions.

Spending money like it’s your own

Every dollar we spend will have to be earned back. Be as frugal with organization money as you are with your own, it is also very limited. In saying this, we ask team to weigh the cost of purchases against the value that they will bring to the organization.

Consider the degree to which a purchase increases your ability to better accomplish your work and achieve business results relative to cost. Lowering overhead reduces the cost to operate the business and lets us shift spend toward other priority areas.

We have guidelines around this operating principle to help team members better understand our expensing process and expectations.

Accepting mistakes

Not every problem should lead to a new process to prevent them. Additional processes make all actions more inefficient; a mistake only affects one. Once you have accepted the mistake, learn from it. When team members are free to accept mistakes, they can take more calculated risks.

Embracing change

The organization landscape is constantly evolving, with features and team needs. To stay ahead, successful work need to be agile in adapting their roadmaps and structures. This adaptability, however, can present challenges for the team. Changes may involve switching teams, areas of expertise, or even supervision, which can understandably feel disruptive.

However, by embracing the positive aspects of change, such as new opportunities and learning experiences, we can accelerate our organization progress and enhance our chances of success. It's crucial to hold leadership accountable for implementing these changes in a thoughtful and well-planned manner.

🌐 Diversity, Inclusion & Belonging

Diversity, inclusion and belonging are fundamental. We aim to make a significant impact in our efforts to foster an environment where everyone can thrive. We are designing a multidimensional approach to ensure that our organization is a place where people from every background and circumstance feel like they belong and can contribute.

We actively chose to build and institutionalize a culture that is inclusive and supports all team members equally in the process of achieving their goals. We encourage joining the organization in diverse. We work to make everyone feel welcome and to increase the participation of underrepresented minorities and nationalities in our community.

Uncomfortable ideas and conversations

Part of embracing diversity is a willingness to embrace often uncomfortable conversations and situations. This concept is also at the core of inclusion and helping to eliminate the problems that are faced by certain team members who may not be in the majority.

We believe that being willing to embrace discomfort is the path forward to a safe, balanced and inclusive work place for all. Challenge yourself, challenge your own pre-set notions and ideas about different cultures or things you don’t understand. When we are willing to embrace being uncomfortable, we can focus on actually fixing the issues at hand rather than simply “appearing to care”.

Being a mentor

People feel more included when they’re supported. To encourage this, and to support diversified learning across departments, consider Internship for Learning program.

Religion and politics

We generally avoid discussing politics or religion in public forums because it is easy to alienate people that have a minority opinion. This doesn’t mean we never discuss these topics. Because we value diversity, inclusion and belonging, and want all team to feel welcome and contribute equally, we encourage free discussion of operational decisions that can move us toward being a more inclusive organization.

There is sometimes a grey area where advocating for diversity and political activities may intersect. Team should use discretion in grey area communications, because a culture of belonging requires us to be respectful of the broad spectrum of views within our work environment. Please feel empowered to share information that highlights diversity, inclusion and belonging issues and how team can get involved. Avoid posting articles that reference specific political figures or parties.

While it is acceptable for individuals to bring up politics and religion in social contexts such as coffee chats and real-life meetups with other members (with the goal to understand and not judge), always be aware of potential sensitivities, exercise your best judgment, and make sure you stay within in the "boundaries".

Quirkiness

Unexpected and unconventional things make life more interesting. Celebrate and encourage quirky gifts, habits, behavior, and points of view. Open source is a great way to interact with interesting people. We are people who think work is a great way to express themselves.

Nicknames

Some people might choose to use a nickname, for example: “Bob” instead of “Robert”. As long as this is their choice this is perfectly acceptable. We should avoid assigning a nickname to a person without their permission.

See Something, Say Something

We got a wide team from wide backgrounds and cultures. It is then important for each of us to use great judgment in being respectful and inclusive of our teammates. At the same time, we may sometimes not fully realize we have said or done something to offend someone.

It is important that our teammates hold each other accountable and let them know if they have unintentionally or intentionally done something so they can learn and gain additional understanding of perspectives different from our own. It is also important that our teammates don’t feel excluded or minimized by the words we use or the things we do. Thus, we all need to speak up when we see something that isn’t respectful or inclusive.

Family and friends first, work second

Long-lasting relationships are the rocks of life, and come before work. As someone said in our main Telegram discussion group after helping their sister from mental health concerns for several days: “Thanks to the team for providing a culture where “family first” is truly meant”.

👣 Iteration

Merriam-Webster defines iteration as the “the action or a process of iterating or repeating: such as a procedure in which repetition of a sequence of operations yields results successively closer to a desired result.”.

At the organization, we iterate to do the smallest viable and valuable thing, and get it out quickly for feedback. This thing may be additive (adding something) or subtractive (removing something). If you make suggestions that can be excluded from the first iteration, turn them into a separate issue that you link. While you should have a clear vision of the desired outcome, don’t write a large plan; only write the first step.

People that join the organization say they already practice iteration. But this is the value that is the hardest to understand and adopt. People are trained that if you don’t deliver a perfect or polished thing, there will be a problem. If you do just one piece of something, you have to come back to it. Doing the whole thing seems more efficient, even though it isn’t.

If the complete picture is not clear, your work might not be perceived as you want it to be perceived. It seems better to make a comprehensive product. It is possible to ship a minimally viable product while continuing to adhere to the documented quality standards.

Starting with a long-term vision

Iteration involves driving results in pursuit of a long-term vision. While the intermediate goals may change as we iterate, we are unlikely to be successful if we don’t start with a vision of what we are working toward. Shipping that vision in iterations allows us to learn from customers using it and adjust the vision if needed. Iteration for the sake of iteration can lead to inefficiencies and not deliver desired results.

Don’t wait

Don’t wait. When you have something of value like a potential blog post or a small fix, implement it straight away. Right now, everything is fresh in your head and you have the motivation. Inspiration is perishable. Don’t wait until you have a better version. When we don’t wait we signal intent to others that we have a purpose to resolve something.

Setting due dates

Always try to set a due date. If needed, cut scope. If you have something planned for a specific date, make that date. If we planned an announcement for a certain date, we might announce less or indicate what is still uncertain. But we set a due date because having something out there builds trust and gives us better feedback.

Starting off by impacting the fewest users possible

If you do a gradual rollout of your change prefer: few users over many users, internal users (dogfooding) over external ones, environments you get faster feedback about (SaaS) over low feedback ones (self-managed), etc.

Making proposals

If you need to decide something as a team, make a concrete proposal instead of calling a meeting to get everyone’s input. Having a proposal will be a much more effective use of everyone’s time. If you don’t have a proposal, don’t let that stop you from highlighting a problem, but please state that you couldn’t think of a good solution and list any solutions you considered.

By making a proposal you also provide better visibility into the work and the context surrounding it.

Making two-way door decisions

Most decisions are easy to reverse. In these cases, you may go ahead and make them without approval. Only when you can’t reverse them should there be a more thorough discussion. By embracing iteration and making two-way door decisions, we are more efficient and achieve more results.

Making small merge requests

When you are submitting a merge request for a code change, keep it as small as possible. If you are adding a new feature on a project, create a small amount of initial content, get it merged quickly and then add additional features iteratively with subsequent merge requests.

What is not iteration

Iteration is often counterintuitive and difficult to do. To clarify what an iteration is, it helps to see examples of what is not an iteration. Below are some examples of things we’ve seen mistaken as iteration, but don’t meet our definition of iteration.

  • Reducing quality
  • Avoiding or reducing documentation
  • Compromising on security
  • Delivering something that’s not the recommended path or on by default
  • Shipping something of no value
  • Expecting others to fix your work

👁️ Transparency

Be open about as many things as possible. By making information public, we can reduce the threshold to contribution and make collaboration easier. Use public issue trackers, projects, and repositories when possible.

Transparency is not communication. Just because something exists doesn’t mean it’s been communicated to the people who should understand or acknowledge it. On a personal level, be direct when sharing information, and admit when you’ve made a mistake or were wrong.

The transparency value can be hard to follow at times. You might ask yourself: what should be shared, how much to share, whether or not to speak up but definitely take the time to always opt for maximum transparency by adhering to the operating principles below. Often, company values get diluted as they grow, most likely because they do not write anything down. But we will make sure our values scale.

When there are exceptions, material that is not public by default is documented.

Public by default

Everything is public by default. The public process does two things: allows others to benefit from the conversation and acts as a filter. Since there is only a limited amount of time, we prioritize conversations that a wider audience can benefit from.

In line with our value of transparency and being public by default, all team member profiles should be public. Public profiles also enable broader collaboration and efficiencies between teams. If you do not feel comfortable with your full name or location on your profile, please change it to what feels appropriate to you as these are displayed even on private profiles.

Because we are public by default we don’t need to make cases for why things should be transparent. If something is unsafe and needs to remain not public it can be.

Not public

We make information public by default because transparency is one of our values. However it is most important to focus on results. Therefore, a category of information is public unless there is a reason for it not to be. If something is not public, there should be a reference that states a confidential decision was taken with a link to our guidelines, unless legal feels it carries undue risk. We document what is not public by default on our communication page.

info

This doesn't apply to personal usage of the products, for example email, gitlab or others. It's your own usage after all and you have the right to choose the privacy of your personal projects, goals and works

When information is not public, it may also be treated as limited access, only shared with certain teams, or team members due to privacy considerations, contractual obligation, or other reasons that the author or DRI can specify. Certain kinds of information default to limited access, including details about team members or customers who did not give permission to share the information.

Most companies become non-transparent over time because they don’t accept any mistakes. Instead, we should always err on the side of transparency when there is a choice to be made between caution or inaction, and transparency. If we make a mistake, we now know what the limits of transparency are for the organization and we should document this. The only exception to this rule would be in the case when there are legal concerns.

Because some information is not public the public information can be lacking some context. We should be cognizant of that.

Articulating when changing your mind

If you state one thing, and then change course and support a different direction, point, or outcome, articulate this. It is OK to have your position changed by new data. Articulating that an earlier stance is not your current stance provides clarity to others and encourages data-driven decision making.

Single Source of Truth

By having communications and work public to the organization, we have one single source of truth for all team members, users, and other community members. We don’t need separate artifacts with different permissions for different people.

Reproducibility

Enable everybody involved to come to the same conclusion as you. This not only involves reasoning, but also providing, for example: raw data and not just plots; scripts to automate tasks and not just the work they have done; and documenting steps while analyzing a problem. Do your best to make the line of thinking transparent to others, even if they may disagree.

But why values?

Our values provide a kind of guidelines on how we should behave and work. They help us describe the type of behavior that we expect from the organization. They also help us to know what to expect from others.

They allow individuals to determine what to do without asking and they allow teams to make consistent decisions. When teams across the organization reference the same values in their decision making, there is consistency in how decisions are made. This ensures that our culture remains driven by our values.

Lastly, values create a conscious culture that is designed to help you prosper and experience exceptional personal growth.

Permission to Play

From our values we excluded some behaviors that are obvious; we call them our permission to play behavior:

  • Be truthful and honest.
  • Be dependable and reliable.
  • Try to keep promises. If you might not keep a promise, proactively communicate as soon as you suspect it.
  • Be deserving of the trust of our team members, users and customers.
  • Act in the best interest of the members, users, and the organization itself.
  • Act in accordance with the law.
  • Don’t show favoritism as it breeds resentment, destroys morale, and creates disincentives for good performance.

Communication

It’s important for us to practice clear communication in ways that help us stay connected and work more efficiently.

Some effective communication

Assume positive intent by always beginning with a position of positivity and grace.

You are looking at a screen, but you are really talking to a person. If you wouldn’t say it to a person’s face, do not send it to them in a text message.

We live in different locations and often have very different perspectives. We want to know your thoughts, opinions, and feelings on things. We also ask you to consider the guidelines around communicating potentially sensitive topics.

If you say it or type it, own it. If it hurts the company or an individual, even unintentionally, we encourage you to look at things from other points of view and apologize easily. Be a Role Model of our Values.

It is difficult to know what is appropriate in every one of our team members countries. We encourage team members to give feedback and receive feedback in a considerate way.

Internal communication

Internal communication is any work related communication at the organization. Internal Communication includes conversations between team members, wider team discussions, or internal announcements.

Since we believe that all team members must be Managers of One, most communication is handled by the relevant group, but we know that some communications are more sensitive and contentious than others. In those cases, the DRIs may want to engage the Internal Communications function.