Senior Java Developer

  • Job Reference: 00002056-1
  • Date Posted: 23 January 2020
  • Employer: Telefónica S.A.
  • Website:
  • Location: Slough, Buckinghamshire
  • Salary: On Application
  • Sector: I.T. & Communications

Job Description

O2 is the commercial brand of Telefonica UK Limited, a leading digital communications company owned by Telefonica S.A. With over 25 million customers across the UK, O2 is one of the world's most innovative companies putting our customers at the heart of everything we do.

We are more than just a network. We open up the endless possibilities of technology, connecting our customers to the things that they love and exploring new ways to open up the world for them.

We are always on the lookout for great talent. Just like our customers, we offer our employees more. From a choice of benefits, rewards, training and ongoing career development there are many reasons to join O2.

About the Team:

DDI are the digital engine room of O2.

We understand the needs of the business to deliver products & services into the hands of our customers by using the best people, tools & techniques. We blend technical knowledge, efficiency and innovation to deliver digital solutions with momentum, quality and robustness.

Your Role:

We are looking for a Senior Java Developer with passion and energy, a strong desire to learn and improve and a commitment to driving our product journey forward. You'll have to make tough decisions, implement best practices and provide compromises when situations are not ideal. The candidate will have experience of working in Agile teams preferably in the Digital domain. The Tech Lead will be helping development teams build highly scalable products as a member of O2's Digital, Data and Innovation team. Working under the vision of a product owner and alongside developers, UX team, operational experts and our delivery team, you will be responsible for making sure that features are delivered with the highest possible quality.

You will work closely with your team of Software Developers and Designers across multiple platforms and technologies to create products that are consistent, highly usable and reliable. You will be expected to perform end-to-end systems analysis, design and development utilizing industry best practices.

We expect the you to collaborate within the team as well as push new ideas for the wider business on better ways to do things. We will want you to help coach the development team on software engineering best practices. Defining strategy and educating others, which will be key elements of this role. We expect you will take pride in any platform that you build and manage


  • Be an active contributing member of an agile development team
  • The role will be a mix of hands on and product strategy, architecture, code reviews and collaboration with various stakeholders.
  • Assist in architecting systems and applications.
  • Evaluate and identify new technologies for implementation
  • Cross team collaboration to assess system usage trends and identify potential performance constraints
  • Line management and mentorship of developers and apprentices. Helping with recruitment as well as contributing to developer forums
  • Enhance system architecture to improve continuous software integration and deployment model within a DevOps environment
  • Liaise with users to understand business needs and opportunities
  • Support, maintain and document software functionality
  • Play an active part in sprint planning, backlog grooming and task estimation
  • Costing new or modified systems
  • Systems analysis, design and development
  • Integrate software with existing systems
  • Software testing and quality assurance

Skills & experience:

  • Hands on development experience with Java8, & related technologies such as Spring MVC, Spring Boot, Tomcat, Gradle, Swagger
  • Excellent knowledge of software, theoretical principles of computing, and distributed computer systems.
  • Excellent knowledge of service orientated and/or microservice architecture
  • Good experience of continuous integration / continuous delivery with knowledge of tools such as Jenkins, Ansible, Git, Sonarqube.
  • Experience of working with relational and non-relational databases
  • Experience of performance testing frameworks such as Gatling
  • Ability to use presentation tools and create diagrams, models, flowcharts and layouts to articulate software capabilities.
  • Experience using monitoring and alerting tools such as the ELK stack, Graphite/Grafana
  • Experience of working with Product Managers on PoC's and provide demos and feedback for new best of breed technologies
  • Implement solutions with risk and security requirements in mind.
  • Must have experience working within an Agile / Scrum development environment
  • Experience of working on a cloud platform such as AWS

Salary and benefits:

We are looking to pay a competitive salary (depending on experience) for this position, and in addition we have some great benefits that could include a bonus, life cover, health care, holiday entitlement and lots of flexible benefits too.

Telefonica's commitment to a great work-life balance allows us to consider flexible approaches to working. Like to know more? Feel free to raise it.

Joining Telefonica means opening up a world of freedom, support and possibility. A fascinating world where you'll be able to think bigger, be bolder and try new things. And where there are endless opportunities to develop your career.

There's so much to discover. Your adventure starts here.