1 day ago
The role is to work as a software developer in the Unified Communications and Connectivity Practice's Software Engineering team. This will involve working in a team of developers to build the next generation platform to allow our customers to consume next generation unified communications and connectivity products in a cloud native manner.
The role will involve understanding and implementing APIs and creating software to build cloud native applications. A good understanding of micro-services architectures and micro-service design patterns (SAGA, CQRS, Event Sourcing, Domain Driven Design), functions as a service (AWS Lambda), infrastructure as a service (Amazon Web Services, Google Cloud) will be needed as part of this role, Knowledge of object oriented development and skill in an appropriate language is essential, along with sound knowledge of software design patterns, and SOLID principles. We may expand the languages we use as the microservices we develop require, so a willingness to adapt to new frameworks is also desirable.
An understanding of Infrastructure as Code, and tooling such as Terraform will be needed or learned.
The team will be managing work through the Scrum or Kanban framework, so good knowledge of this and how to work within it is essential.
This role will be to deliver on the following:
Take a shift-left approach to development, ensuring that testing and security are at the heart of the software created, using techniques such as TDD and BDD.
Work in a team to produce emergent design for a microservices based architecture
Work with Vodafone architects on new designs, providing input into the best way to solve problems with software development
Bring your ideas into to the Platform team management on how best to enhance our software engineering capability. Keep up to date on current thinking, and design patterns in software development to ensure that software produced remains fresh
Work in a DevOps team to develop new software for the UC Platform based on the Product Owner's backlog to offer our customers a cloud native experience in consuming our services.
Research open-source projects that Vodafone could leverage to create new services or enhance our software architecture.
Ensure that software produced has excellent unit testing coverage to ensure that changes can be made safely.
Create software to solve Vodafone business problems in Unified Communications Connectivity Platform
Actively contribute to the team improvement activities
Learn new things and put them into practice
Own tasks committed to and see through to completion
Core competencies, knowledge and experience
Ability to adapt to new development languages and frameworks
Working in agile teams
Must have technical skills:
A demonstrated ability to create software to solve business problems