Graduate Software Developer

To apply for this job please visit

Do you want to work to make Power for Good? 

We’re the world’s largest independent renewable energy company. We’re driven by a simple yet powerful vision: to create a future where everyone has access to affordable, zero carbon energy.

We know that achieving our ambitions would be impossible without our people. Because we’re tackling some of the world’s toughest problems, we need the very best people to help us. They’re our most important asset so that’s why we continually invest in them.

RES is a family with a diverse workforce, and we are dedicated to the personal professional growth of our people, no matter what stage of their career they’re at. We can promise you rewarding work which makes a real impact, the chance to learn from inspiring colleagues from across a growing, global network and opportunities to grow personally and professionally.

Our competitive package offers rewards and benefits including pension schemes, flexible working, and top-down emphasis on better work-life balance. We also offer private healthcare, discounted green travel, 25 days holiday with options to buy/sell five days per annum, enhanced family leave and four volunteering days per year so you can make an impact somewhere else.

The Role

The Software Developer role is a key role within the SMART (Site Monitoring, Analysis and Reporting Tool) team. The Software Developer role exists to architect, implement and support new software products for RES Support Services.

The SMART team provides bespoke software solutions across the global wind, solar and energy storage Support Services business. This includes:

  • Retrieving and homogenizing data from a wide range of operational renewable energy power plants, in particular solar farms and wind farms
  • Analyzing operational data from renewable energy power plants, including data from Condition Monitoring Systems
  • Providing flexible reporting solutions for internal and external clients
  • Creating engineering analysis tools used by specialists to detect and prevent faults
  • Using machine learning and artificial intelligence to automate the application of specialist knowledge

The Software Developer has responsibilities including:

  • Working together with the Product Owner and subject matter experts to deliver new software products following the Scrum development methodology
  • Choosing the right technology, architecture and infrastructure for each product in consultation with other software developers and the Product Owner
  • Maintaining high operational performance; monitor and control exceptions and application availability and application performance
  • Assisting the Product Owner with user story definition and estimation
  • Demonstrating new features at wrap up meetings
  • Following and contributing to team working agreement
  • Contributing to the strategic technical direction of the product
  • Delivering work which is applicable to wind, solar and storage assets in all markets
  • Supporting continuous improvement of team tools and practices

The Software Developer will work in a team which includes Software Developers, Product Owners, Software Support Specialists and Data Scientists. The role’s impact is to support growth of the Support Services business through quick integration of new renewable assets and excellent performance of existing analysis and reporting tools.

We believe that small, empowered, self-motivated teams can do big things. We believe in ideas, in aspiring to be the best that we can be, work life balance and a blameless culture based on trusting our developers.

Desired Technologies:

  • Development technologies:
    • C#
    • Python
    • Docker
    • Microsoft Azure
    • Client-side Web development (including Typescript, React and Redux)
    • Continuous Integration Systems (including Azure DevOps)
    • Testing frameworks
    • Version Control systems (in particular Github)
  • Data sources:
    • Web services (HTTP APIs, SOAP)
    • Modbus
    • OPC
    • SQL databases

Knowledge / experience

  • Relevant experience completing software development projects or internships
  • Agile development and Scrum framework
  • Continuous integration and deployment
  • Renewable energy basics


  • Ability to understand users’ success criteria and design software to achieve their required outcomes
  • Ability to integrate with an existing international team
  • Ability to discuss and implement data transformations and numerical algorithms


  • Degree in Computer Science, Science, Engineering or a technical discipline

Our company provides equal employment opportunities (EEO) to all employees and applicants for employment without regard to race, color, religion, sex, national origin, age, disability or genetics.

Job Overview