To be discussed
Contract Type
Contract Type
Full Time


Utiligroup (An Energy Services Group Company) is a market-leading provider of innovative technology and services to the utilities and energy industry. We are creating a more competitive utilities sector, improving our customer’s lives through better service and greater choice and guiding our clients through complex industry change. Our purpose is to make utilities smarter for everyone. We deploy our technology and talent to deliver innovation and automation through our SaaS and Business Process Management solutions from which we create actionable data analytics and insight. To date, Utiligroup has enabled a significant number of new entrant energy suppliers to enter the industry and we manage several million customers on behalf of suppliers and metering companies. Clients include a host of well-known energy providers, both UK and overseas-based.

As a Software Engineer, you shall be expected to develop and unit test software to the Utilisoft Java Development Standards ensuring all products are of acceptable quality to the end customer.  You shall participate in design and planning of software solutions to the requirements specification.  You shall be managed and report directly to a Software Engineering Team Lead on behalf of the Software Engineering Manager.


  • Provide customer support for installed Utilisoft products by identifying, diagnosing and providing a resolution.
  • To provide application support by resolving complex queries raised through the service desk to the agreed service level.
  • To assist in the definition of feasible, cost-effective solutions to meet the agreed functional and non-functional requirements.
  • To understand GUI standards and assist users in interpreting these as required; liaising with the users and undertaking GUI design and prototyping.
  • To participate in the design and architecture of the software solution.
  • Also to undertake and participate in quality reviews.
  • To assist in the identification of opportunities for component and technology re-use.
  • To appreciate the importance of design and software specifications.
  • To construct and document new and amended software in accordance with Utilisoft standards, to meet the requirements of the design/program specification.
  • To understand the principles and objectives of user documentation; assist in the preparation of user documentation.
  • To contribute to the project planning process by providing estimates of effort and elapsed time for the assigned work; to advise of any deviations from the plan, and recommend corrective actions.
  • To understand the importance of quality control, to comply with all relevant standards and procedures and participate in quality assurance and control activities.
  • To understand the importance of change control and work within a formal change control system.
  • To report progress and participate in progress meetings.
  • Have an interest in the Java eco-system, read about new frameworks, keep up to date with new language features and think how these can be applied to existing products
  • Active mentoring of junior software engineers via pair programming, code reviews, etc.

About You

You must have:

  • At least 12 months of commercial experience of software development, with one or more of the following technologies: Java, Spring, Hibernate, Maven, GIT, JUnit, JQuery, HTML & CSS
  • Proven experience of software development projects and a commitment to utilising development methodologies is essential
  • Ability to provide software process improvements is essential
  • Excellent written and oral communications
  • Working knowledge of the Energy Industry is desirable, but not essential
  • Working in an agile software development environment is desirable, but no essential

Qualifications & Experience


  • A minimum 2:1 Degree in Computer/IT related discipline or an active GitHub profile with a keen interest in Java.
  • A minimum of 12 months’ development experience within a commercial environment

You will have:

  • Good problem solving techniques
  • Good inter-personal skills
  • Ability to work well within a team and coach junior software engineers
  • Be a self-starter and show initiative with the ability to lead small groups of junior software engineers
  • Good understanding of full IT lifecycle, with detailed knowledge of at least one of the following; Analysis/Design, Software Engineering, Testing, Implementation

Other Responsibilities

  • ISO Responsibilities
  • ISO Staff Awareness
  • Follow IMS Policies
  • Reporting of Incidents
  • GDPR Knowledge