Sustainable Development

Sustainable Development is a set of principles for software teams to use to operate in healthy and productive ways, and for the long term.

Software teams practicing Sustainable Development follow guidelines that benefit them in three areas:

Why Practice Sustainable Development?

High pressure and stress is becoming the norm in the software industry. Toxic, unreasonable work environments are easy to find, and engineers in them regularly burn out, leave their jobs, and even abandon the industry entirely. Employees are working longer hours during the week and on weekends, and fully “disconnected” vacations are getting rarer.

Unsustainable work practices are bad for business:

Engineers perform better when they are less stressed, rested, and get to focus on their work for a reasonable number of hours in a day. Sustainable Development gives teams a framework for reducing stress and burnout, and fostering intellectual creativity.

As the Agile Manifesto states,

“Agile processes promote sustainable development. The sponsors, developers, and users should be able to maintain a constant pace indefinitely.”

If your team practices Agile development, then it should also work sustainably.

Practicing Sustainable Development

Development teams wanting to adopt Sustainable Development simply write down the practices they wish to embrace, and then commit to following them. Each practice should benefit the team in at least one of the three areas of sustainability (physical, emotional, or cognitive).

Key to the success of any team’s roll-out of Sustainable Development is the cooperation of management in the definition of their own practices, and in their continuous improvement.

Suggested Sample Practices

No two teams operate the same way, so every team adopting Sustainable Development does so in ways appropriate for them and the needs of their business. As your team adopts Sustainable Development, feel free to use any of these practices, modify them, or just write your own.

Remember, these are only samples to help in your own journey to sustainable development. Your team should decide what is sustainable based on your own unique constraints and challenges.


For more information, see the FAQ.

Sustainable Development was created by Brian Kelly and is released under the Creative Commons CC BY 4.0 License. If you have feedback, or would like to share your team’s sustainable practices, please file a GitHub issue.