- 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 Senior 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.
- Advanced understanding of the Java language and development methodologies
- Have the ability to work across multiple different development teams, rapidly becoming an active contributor to a new software product
- Working closely with the R&D team when required, rapidly adopting new technologies and frameworks for use in production in Development
- Provide customer support for installed Utilisoft products by identifying, diagnosing and providing a resolution to issues.
- 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.
- 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 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 active and keen interest in the Java development eco-system. Continually keep up-to-date with the latest tools, frameworks and technologies available on the JVM and how these can be applied within Utiligroup
- Maintain and ensure a high level of development standard across the business in accordance with the Utiligroup development standards
- Active mentoring of software engineers via pair programming, code reviews, etc.
- Actively engaging in design and architecture workshops, leading technical workshops and driving change in the Development department.
- Leading product development from a technical perspective, engaging with all areas of the Business.
You will have:
- Commercial experience and successful delivery of numerous software products, with most if not all 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, presentation 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
Skills & 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 5+ years development experience within an industrial setting.
You will have:
- Good problem solving techniques
- Good inter-personal skills with the ability to technical teams
- Ability to work well within a team and coach software engineers
- Be a self-starter and show initiative with the ability to lead groups of software engineers
- Good understanding of full IT lifecycle, with detailed knowledge of at least one of the following; Analysis/Design, Software Engineering, Testing, Implementation
- ISO Responsibilities
- ISO Staff Awareness
- Follow IMS Policies
- Reporting of Incidents