How to create a green software culture at your company

In today's climate-conscious world, technology companies have a responsibility to minimise their environmental impact. That includes the environmental impact of the software itself. 

It can be easy to look at sustainability tips like building carbon aware products or reducing the size of webpages. But in large companies with complex systems, it can be hard to enact change. 

As a green software advocate, I've learned that implementing sustainable practices doesn't require a complete system overhaul—it starts with small, actionable steps that create lasting change.

Education

  • Start a green software community with a Slack channel

  • Share interesting articles and promote discussion

  • Encourage people to do the Linux Foundation’s Green Software course - it’s free and only takes two hours!

  • Run learning sessions introducing people to green software. 

Getting data

It can be difficult to get people to listen and take action without data to visualise the climate impact of software.  

  • Use tools like Climatiq or Cloud Carbon Footprint to track emissions

  • Use your cloud provider's billing data with carbon calculation tools

  • Starting small—even basic metrics can drive meaningful change.

  • Give metrics to visualise the emissions data, such as the equivalent number of kilometres you would have to drive in a gas car to produce the same amount of emissions. 

It doesn’t need to be perfect - begin with whatever data you can access and build from there.

Ask other engineers at your company to test out using and finding emissions data. I found after a while I had people coming to me with feature requests for our carbon footprint calculator. One engineer said it had sparked him to look more critically at what his team was doing. He had a specific feature request because he had a hypothesis that something weird was going on in a test environment, and he wanted to be able to prove it!

Creating a green software culture

Creating lasting change requires embedding sustainability into your team's ways of working. Here are some easy approaches to start with:

Low-effort

  • Include carbon metrics in sprint reviews and operational health meetings

  • Discuss carbon emission monitoring during retrospectives

  • Add regular data review tasks to sprint planning

  • Demonstrate carbon footprint data to team members

Medium-effort

  • Add carbon footprint impact notes to Jira tickets

  • Include carbon emissions checks in Incident Response and Enhancement (IRE) tasks

  • Implement a dashboard using your carbon emissions data for easier monitoring

What next?

Once engineers have become aware of how their software components are having a carbon emissions impact, here are some ways to make sustainable changes. 

Choose data centre regions with lower emissions factors

Different regions have varying emissions factors based on their energy grid composition. For example:

  • Running an AWS t3a.medium instance in us-east-1 for 1000 hours produces 2.931 kg of CO2e.

  • The same instance in ap-southeast-2 produces 5.34 kg of CO2e.

(Data collected from Climatiq

Consider these strategies:

  • Audit and remove unused resources

  • Migrate resources to regions with lower emissions factors

  • Factor in regional carbon intensity when planning new deployments

Right-Size Your Compute Workloads

Orchestration tools such as Kubernetes allow you to scale up and down resources rapidly based on demand. However to be used in a sustainable way, they need to be right-sized to the workload. 

Too tight a limit and the pod can run out of memory/CPU headroom before a new workload can be spun up.

Too loose a limit, and the workload will be under-utilised, burning energy.

Reviewing your current CPU/memory limits, scaling rules, and dry-start times for your Kubernetes pods tasks. 

Code Efficiency Matters

  • Review and optimise CPU-intensive operations

  • Eliminate redundant code

  • Remember that an efficient pod running continuously may be greener than an inefficient lambda running intermittently

Clean Up and Maintain

  • Regularly decommission unused resources

  • Implement automated shutdown schedules for non-production environments during non-work hours

  • Document procedures for manual environment startup during incidents

  • Consider tools like kube-green for automatic environment management

Data Management

  • Implement or review data retention policies

  • Minimise stored data where possible

  • Optimise API responses to reduce transmitted data

Measuring Success

Track your progress through:

  • Regular monitoring of carbon emissions

  • Cost reduction metrics

  • Resource utilisation improvements

  • Team engagement with green initiatives

Conclusion

Implementing green software practices is a journey that begins with small steps. By focusing on measurement, culture change, and practical optimisations, any organisation can significantly reduce its carbon footprint while maintaining - or even improving - system performance.

Remember: every optimization counts, and collective small actions lead to significant environmental impact. Start today with whatever resources you have available, and build from there.

Photo by Marvin Meyer on Unsplash
Next
Next

How to create authentic connections to boost your career