How we do software

January 05, 2024 •

https://martinbaun.com/blog/posts/how-we-do-software/thumbnail.jpg

This ise the essential guide how we collaborate to fulfill our mission of creating elegant and intuitive software fast and having fun together while we do so. It is an internal document to help new people onboard BaunIt.com. It is not an elegant blog article but more of a work-in-progress document.

Our Mission

Our mission is to craft software that solves our users' problems elegantly, simply, and enjoyably, making it inevitable for users to adore our software.

Guiding collaboration Principles

Our shared understanding of how we build great software is distilled into our guiding principles.

1. Ownership Principle

The more autonomy we can leverage, the more we get done. Taking ownership of tasks is crucial to getting the right stuff and more done. We apply our best judgment and execute instead of asking for permission. When unavoidable, we ask questions but provide potential solutions to our questions.

Ask questions with solutions

We take ownership of the tasks and ensure the work is sound quality.

2. Clarity Principle

Clear communication is essential for productivity. We spend additional time ensuring work and messages are understandable. Feedback is complete and presented in the appropriate channels and format.

3. Simplicity Principle

Our tools, solutions, and processes are simple enough so we can focus on the essentials. Simplicity is a virtue that is hard to obtain but worthwhile, and simple solutions are often the most elegant.

4. Enhancement Of Innovation Principle

Good solutions are plentiful, but they are seldom elegant. We enjoy developing solutions that go above and beyond without being overly groundbreaking.

5. Efficiency over robustness Principle

We're a small company. We want to stay agile. We break with a norm of robustness over efficiency in terms of teams. Instead of duplications of each role, we have more specialized roles. This means we can move fast but might have issues should someone become sick or leave the company. To combat this, we ensure that our solutions are simple so that someone can take over in case of an exit. This also motivates employees as they're responsible and needed by the company. It motives the company to create a good work environment for

6. Habits Principle

We use habits to speed up our efficiency. When we habitualize, we don't need to communicate or discuss. We do. Our meetings are at the same time, the same place, and the same way. Habits reduce distractions and waste.

7. Consistency, unless required Principle.

Consistency helps us move faster and make more simple solutions. Often, a consistent solution is a better solution. Having a fancy button to add when you have no data and then hide it when you have is an awful solution. It requires more work and makes an inconsistent result to the user.

Daily Status Meeting (DSM)

The DSM is every working morning and helps teams get updated on current tasks and get started on new ones.

Everyone delivers a status statement. The purpose is to keep the team up to date while helping to steer the development. A team member might have valuable input about your task. Therefore, delivering an understandable SS is crucial. Keep the SS as concise and precise as possible and within 3 minutes. Consider using verbal, image, video, or demo while presenting.

Example:

I have done these:

I have these things blocking me:

  • Design for the landing page on mobile

I will be working on:

  • Form Tool on Toolbun.com

How We Communicate

We communicate primarily using Goleko.com, and you can ping anyone using their handle in the comments. We also use Telegram for more urgent messages, but please avoid doing so outside working hours, and don't expect people to be on their phones during their working hours.

It is crucial to follow The Guiding Principles while communicating as we communicate mainly async, meaning that you can't expect someone to keep a chat ongoing. If your questions are forward (Clarity) and simple, it will be easy to answer yes, no, or something else. If not, it will strain your teammate's time and energy.

It is always possible to arrange a meeting with the team member if something additional is needed, but favor 1-1 with clear agendas.

Closing

You can always consult our mission statement and values if you're in doubt.