Java Software Engineer
As a Java Software Engineer you’ll be working alongside other developers, client side developers, QA engineers and testers to build the systems which power the national lotteries in the UK, Ireland and mainland Europe and, as we expand, other lotteries around the world. Our systems need to operate at large scale and high availability and you will be ensuring that we can continue to scale as the platform and user base grows.
You’ll be involved in the breakdown, estimation, development, testing and delivery of features into the software before deployment and support by application support teams. You’ll also need to bring your experience into the team, promoting high quality code, good engineering practices and clear documentation. You’ll be making recommendations on technologies to deploy, for our products as well as to support the development process itself.
We will expect you to:
- Design, build and test features on our existing platforms and new services.
- Work in a mixed discipline (development, testing, QA) agile team and engage in all aspects of the software development process
- Translate functional specifications and large work items into logical, component-based technical designs.
- Understand software performance metrics and use them to deliver high performance, scalable software
- Apply best engineering practices to software development, including unit testing, integration testing,
- Review others’ code, encourage good coding standards and raising the quality bar of the team
- Writing documentation to cover code, architecture and any other project artefacts and keeping it up to date
- Mentoring and pairing with other developers
- Provide in depth technical assistance on the software to the application support teams
- Keep abreast of and make recommendations on technologies and techniques to use within the team
What you must have:
- Software development in Java 8 with a strong bias for quality and engineering excellence
- Experience in building low latency, scalable e-commerce systems.
- Great design and problem solving skills, with demonstrable experience in building simple implementations to complex problems and object oriented design
- Significant experience developing with multiple java technologies (e.g. Spring, JMS, J2EE, Groovy, Grails, Hibernate, etc)
- Strong knowledge of building distributed systems using Web Services, ESBs, asynchronous messaging, service versioning/backwards compatibility issues
- It would also be beneficial if the candidate had some testing experience using the Spock framework.
- Strong knowledge and experience in testing and/or developing Web services (REST and/or SOAP).
What we will do:
We will provide you with a series of challenging projects together with the tools, equipment and support to give you the best possible chance of succeeding. Most importantly, we will give you the opportunity to work in a culture that is energetic, passionate and innovative and you’ll get to work with some of the most impressive people in technology! Bring your passion, curiosity, talent and innovation to our team and we will give you an environment full of challenges to flourish in.Salary depends on experience but is always competitive plus an annual bonus tied to both your and the company’s performance. In addition we provide a range of other benefits including matched contribution pension up to 8%, private medial cover, life assurance, permanent health insurance, subsidised gym membership and childcare vouchers etc. as well as the opportunity to get involved in good causes initiative and events