Skip to main content

Software Engineer

Persona

Writes energy-efficient code, implements green coding practices, and optimizes algorithms to reduce software carbon footprint.

13 patterns

Development

Cache static data

From an energy-efficiency perspective, it's better to reduce network traffic by reading the data locally through a cache rather than accessing it remotely over the network. Shortening the distance a network packet travels means that less energy is required to transmit it. Similarly, from an embodied carbon perspective, we are more efficient with hardware when a network packet traverses through less computing equipment.

  • networking
  • size:small
Optimize agent orchestration to reduce unnecessary model calls

Design agentic AI workflows to minimise redundant model invocations and unnecessary compute through caching, conditional logic, and efficient orchestration patterns.

  • ai
  • compute
  • machine-learning
  • size:medium
Reduce transmitted data

From an energy-efficiency perspective, it's better to minimize the size of the data transmitted so that less energy is required because the network traffic is reduced.

  • networking
  • size:small
Use Asynchronous network calls instead of synchronous

When making calls across process boundaries to either databases or file systems or REST APIs, relying on synchronous calls can cause the calling thread to become blocked, putting additional load on the CPU

  • cloud
  • size:medium
Use compiled languages

Interpreted languages re-parse and compile code on every execution, consuming more energy than pre-compiled binaries, which perform compilation once and run more efficiently at runtime.

  • cloud
  • programming-language
  • size:small
Use right-sized and energy-efficient AI models

Select and optimize AI models that are appropriately sized for the task to reduce compute, memory, and energy consumption during training and inference.

  • ai
  • compute
  • machine-learning
  • size:medium