Skip to main content

Software development principles

Software development principles


Move fast

Time is finite so avoid wasting it.

Delegate to make best of resources

Use resources wisely by assigning tasks to others when appropriate. Don’t sit on a task that another person can do.

Focus on features that benefit the many

Prefer working on features that benefit the masses over features that benefit the few. Push back on marketing if they violate this principle.

Ignore edge cases that affect few people

When building new features, build for the masses, and don’t code edge cases that affect the few. Edge cases can be addressed once a feature is live and we get feedback from customers.

Avoid stupid bugs that affect few people

Countless bugs affect small numbers of people and we can easily waste resources trying to fix them. Focus on only fixing bugs that affect the masses.

It’s better to break things than move slowly

It’s worse to delay features than to break the web site. Culturally, other departments are conditioned to prefer things breaking than to wait longer for new features to be released. In other words, there are no consequences for making mistakes in order to move faster.

The rate of innovation is what’s important and breaking things to move faster is acceptable.

Offload legal decisions to other departments  

Don’t waste time and energy trying to assess the legality of features. We have a strong legal team that includes multiple in-house lawyers of the highest caliber. It’s generally a waste of time and resources for a non-lawyer to try to determine legal compliance.

Create new teams when sensible

As the scope of work for a team grows too large, we should split into multiple teams to move faster and create more leadership roles.

Practice using AI where possible

AI will continue providing increased value to all departments, but it’s only as good as the person using it. Practice using AI to learn to take advantage of it so we can improve productivity which is the best way to also produce wage improvements.

Avoid polishing too often

Set aside polish tasks and schedule periods to work on polishing once or twice annually at the direction of team leads.

Comments

240 characters left

Sticker Mule

Get updates from Sticker Mule

Get new posts and creative updates.