Summary Here at First Utility we want to make a difference. We are changing the face of the energy industry by campaigning for more transparency, better communication and a speedier switching process. Through pioneering technology and sharing our knowledge, we put our customers firmly in control of their energy, so they can spend less on what they need and more on what they want. We are proud to deliver award winning service and as we continue to challenge the industry, our talented people are integral to our journey; our people make that difference. As we continue to grow our Team we now have office locations in Warwick, Coventry, London, Krakow and Hamburg. We're now looking for a Senior Software Engineer with experience with Java to join our Team in Warwick to help us continue to make that difference. Role overview This is a key role within the Digital Platform Product Engineering team, building advanced software solutions for our online business and digital products. The Digital API team are responsible for building a wide range of SOA services that support the development of web and mobile applications. We take an API First approach to our service development and are looking for people experienced in delivering a wide range of services and capabilities that cut across our entire company business. Typical projects our services developers have been/will be involved with include : - Developing services which support both web and mobile clients, supporting iOS and Android
- Integration with Big Data cluster to provide deep analytics of customer activity
- Research and development into the use of predictive analytics to improve customer experience
- Helping build a truly personalised experience for each customer through the delivery of high performance commerce capabilities including prediction, segmentation and personalisation Above all we are an innovative organisation, so we are looking for a passion for technology and a considered approach to software development. You'll be able to give us examples of how you constantly try to innovate, enhance and improve your working environment - collaborating and sharing your learnings with the wider team. Our current technology stack includes (but not limited to) the following: - Java EE (7 and 8)
- JBoss/Wildfly and GlassFish
- RESTEasy/Jersey
- JMS and JMS messaging systems including HornetQ
- SQL across a range of DB technologies (i.e. Oracle, My SQL, PostgresSQL)
- NoSQL across MongoDB and Cassandra
- Spring/Dependency Injection
- Junit/JBehave/Mocking Frameworks for developing unit and functional tests
- Jenkins/Hudson
- Docker
- Spring Boot
- Cassandra

Areas of specific responsibility - Take a leading role in the development of our API First strategy, helping to deliver a range of services that are used both by internal development teams, external third parties and customers
- Take a very involved role in the various agile activities, including leading planning and estimating sessions and reporting progress to their assigned project lead and/or project manager
- Lead design and code reviews and be accountable for the actions taken from these sessions, seeing them through to implementation as agreed Essential criteria You will be passionate about all things JVM and have a thorough knowledge of JVM development including Java EE and/or Scala development environments and possible experience of work with Big Data platforms including Hadoop and Cassandra You will ideally be a graduate with a strong degree in a relevant technical discipline (probably Software Engineering, Information Technology, Mathematics etc.) with commercial experience of developing software solutions as a Java Developer We are passionate about software delivery within an agile environment, so we are looking for candidates who are experienced using Agile Methodology to work in a collaborative way with key business stakeholders to deliver great software. We currently use Lean but this should not limit candidates who have experience of Scrum, XP, DSDM or other recognised agile frameworks. - Expert experience of developing within a Java EE and/or Scala environments and a good knowledge of application servers
- Expert in the development of a layered SOA architecture and implementation and testing of RESTful services
- Ability to analyse, optimise and tune services individually and as a discrete suite
- Experienced working within an Agile Framework - ideally SCRUM or Kanban
- Specific experience of Test-Driven Development, Unit Testing, Continuous Integration and Delivery
- You love working in a team and the buzz that goes along with constant communication, but not afraid to go it alone when required Desirable criteria - Experience of working with SQL database servers such as PostgreSQL or MySQL
- Experience of working with NoSQL database servers such as Mongo DB and Cassandra
- Experience of working with Java Persistence frameworks such as hibernate
- Experience of Big Data programming models, specifically Spark, Cassandra and the wider Apache Hadoop platform
- Experience of Spring Boot, Docker and Wiremock The Benefits As well as a rewarding career, development opportunities and competitive salary, you'll also enjoy 25 days holiday (plus Bank Holidays), pension, option to purchase childcare vouchers, and become eligible for our staff energy tariff along with other great ad-hoc offers. We believe in putting energy into looking after our teams, so you'll benefit from BUPA Private Healthcare, cycle to work scheme, a great working environment with relaxation areas to recharge your batteries and free soft drinks available all day. We also have "Fruity Friday" where fresh fruit is available every week for all employees. To apply please click the APPLY button.