Our friends at ADLIB caught up with last week’s GreenTech South West speaker, Asim Hussain, Green Cloud Advocacy Lead for Microsoft to talk about building carbon-efficient applications. Check out their chat below and make sure to register for September’s GreenTech event!

ADLIB: Have you always been interested in sustainable software engineering? What sparked your interest in the topic?

Asim: So, I didn’t coin the term Sustainable Software Engineering, but what I can lay claim to is writing the 8 Principles of Sustainable Software Engineering, which you can find at principles.green.

I’m still, I believe, the only Developer Relations Person with a focus on ‘green’ in any company, let alone a company the size of Microsoft.

That gives me a unique perspective, but also a unique focus. My focus is “Developers”, specifically the “green Developer community”. So for instance, the people who would attend this meetup. My job is to help this community understand how to be green in the cloud.

I convinced my management that this role needed to exist, but after they accepted and I slid into it, I realised that there wasn’t much out there in terms of “green advice for Developers”. Lots of advice for how to set up hardware, how to cool data centres, but what actually can an Engineer do in their day to day which can make a difference. That drove a ton of research on my side, the field is still very academic, so it involved reading lots of academic papers, but I couldn’t expect other Developers in this space to do the same. So I decided to make the attempt of summarising all the general advice in the papers into a set of principles: the ‘Principles Of Sustainable Software Engineering’ was born. Now people are writing articles about it and giving presentations about it, it’s been exciting to see it grow and become adopted.

ADLIB: For those who missed your talk at GreenTech South-West, can you give us a summary?

Asim: I gave an overview of the field, and especially the 8 core first principles. It’s a lightning speed intro into the 8 principles. They are so new to a lot of people that you need a basis in them before you can talk about more complex scenarios or use cases.

ADLIB: Why is it important to start developing applications in a sustainable way?

Asim: It’s a relatively big part of the carbon pie but interestingly, with a small number of people who can impact it.

Just cloud computing is estimated to be between 2-3% of global carbon emissions. Once you factor in all of computing, laptops, devices, everything. That is estimated to be between 9-15%. There are about 20 million developers in the world, so about 0.003% of the world’s population. Even if we just focus on the cloud, 0.003% of the world’s population can have an impact on up to 3% of all the carbon emissions, because the applications we make are used by 1000s of millions of people. Our decisions can have an outsized impact. That’s why I think it’s important that we work in this space, it’s a part of the pie we can impact easier than the rest.

Also, we don’t work in isolation. We work with others in companies or industries. If we started to normalise conversations about sustainability in our tech meetings, it becomes normal for green decisions to bubble up. Then maybe the procurement department in the company starts asking the same questions, maybe the HR department, maybe the catering department. It’s not just us, we can be the catalyst to show other people in other departments it’s ok to talk about this and prioritise this in your work.

ADLIB: Can you give us a really quick summary of the 8 principles of sustainable software engineering?

Asim: I’m just copying and pasting this from the website because I think it gives the best summary…

The Principles of Sustainable Software Engineering are a core set of competencies needed to define, build and run sustainable software applications.

These eight principles form a shared understanding of what it means to be a Sustainable Software Engineer independent of:

  • Application domain.
  • Industry.
  • Organization size or type.
  • Cloud vendor or self-hosted.
  • Programming language or framework.

Through the synthesis of this knowledge, a Sustainable Software Engineer (SSE) can make decisions which have a meaningful impact on the carbon pollution of their applications.

ADLIB: Where can we find out more about this?

Asim: The best place to learn more about Sustainable Software Engineering right now is the site principles.green but a few of us at Microsoft have also launched a Sustainable Software Engineering blog at https://devblogs.microsoft.com/sustainable-software/. Over the coming weeks and months, we’ll be posting things from thought pieces to actual use cases of SSE in practice, I’m very excited about the blog, it’s turning into a bit of a rallying cry to everyone working in this space at Microsoft.

Thank you Asim for the chat.

September’s event is on ‘An evidence-based approach to tackling the climate crisis fairly in cities’ featuring Sara Telahoun, Senior Consultant and Cities Specialist at Anthesis. Sign up now to hear from Sara on 29 September.