Share this Job

Senior Software Engineer

Date: 18-Nov-2020

Location: UXBRIDGE, GB

Company: Telefónica S.A.

giffgaff is the commercial brand of Telefónica UK Limited, a leading digital communications company owned by Telefónica S.A. We like to do things a little differently here at giffgaff.

 

We may be a small company, but we like to think big and create some radical waves in the telco land. At the heart of it, we believe in simplicity. A better way to do mobile. We'd rather you stay with us because you want to, not because there's a nasty contract forcing you to. It's why we work our socks off every day to keep you and guess what? It works. We're uSwitch Network of the Year 2019.

 

About the Team:

 

As a technology company software engineering is at the heart of what we do here at giffgaff - our agile engineering teams build and support a set of applications and services that combined create our unique user experience on the giffgaff website, enable our internal teams to work in the most productive and efficient ways and enable a whole range of awesome features via modern APIs.

 

You will be part of the Telecoms team building and supporting an array of critical micro services that receive charging information from external sources which are then mutated and delivered to downstream systems for processing to support day to day activities of giffgaff business.

 

In our team there is no senior or junior everyone’s opinions are respected. We all work together to get the job done and main focus on delivery!

 

Your Role:

 

The quality and maintainability of our software is very important for us, we are looking for engineers with real world experience, especially in terms of the whole development lifecycle.

You will help us design and implement tightly focussed APIs, services and user interfaces and, together with your team, you will support them in production. We want you to share your opinions on how we are doing things - and help us get better! You’ll be embedded into one of our cross-functional product teams to work on a wide variety of creative technical solutions. Depending on the team profile you may be working on user facing applications, internal tools or processes, or APIs and services implementing our core business logic.

 

As part of the Telecoms team you are expected to get your hands dirty with array of technologies e.g. java, micro services, Domain-Driven-Design, AWS, docker, Kubernetes, Prometheus, Grafana, Agile etc... things that you expect from modern tech stack.

 

We like people who are doers with “can do attitude” and who are always willing to go that extra mile to make the tech stack even better.

 

You are expected to pair programme on all stories and share your knowledge with others and most importantly help junior members of the team so that they can develop their skills.

 

You will have lot of opportunity to further your learning/career.

 

Responsibilities:

 

  • Work with a full-stack attitude within a self-organising, cross functional product engineering team using extreme programming practices - notably pair programming and test-driven development
  • Build, support and maintain automated, fault-tolerant, scalable products and solutions that are continuously delivered into our production environment
  • Leverage your experience and skills to assist your team in establishing the best architecture for your products and services
  • Be technically curious, tackling problems without giving up, and producing solutions that less-experienced engineers can use, maintain, and learn from
  • Know how to develop and follow a sense of purpose. Be willing to point out, own, and fix things that are broken about our company and in your own career track

 

Skills & experience:

 

  • Qualifications: Bachelor’s degree in computer science, programming, mathematics, or a related field or equivalent experience. Professional certifications in relevant technologies are expected.

 

  • Essential Skills: Reading & Writing Code, Debugging & Troubleshooting, IDE & OS Basics, Test Driven Development, Pair Programming, Clean Code & Refactoring, Version Control, CI / CD, Algorithms & Data Structures,DI / IoC, Mocks & Stubs, Alerting & Monitoring, Functional & Non-Functional Testing

 

  • Desirable Skills: SOLID Principles, Containerisation & Networking Basics, Twelve Factor App Design, Solution Architecture
     

Plus competency in 5 or more of the following:

 

  • Client-Side Engineering: CSS3, Cypress, ECMAScript (ES6+), HTML5, Jest, React & React Native, SASS, TypeScript
  • Server-Side Engineering: Java 8 with Maven & Spring, JUnit, NodeJS, PHP with Laravel or Zend, Python
  • Additional Technology: Apache & NGINX, AWS, Jenkins, DynamoDB, PostgreSQL, Redis & Oracle, Docker & Kubernetes, ElasticSearch & Kibana, Grafana & Prometheus, Kinesis

 

Additional Information:

 

You will be expected to provide support for your teams products and services outside of normal working hours as a rotational team duty.

 

Finally...

This is a chance to work for one of the most sought after UK companies, highly regarded for its community model. In return for your outstanding efforts, you’ll be rewarded with a competitive salary and excellent benefits. We believe that hard work should be supported and recognised. This position plays an important role across the business, allowing you to work cross functionality, take on more responsibility and gain experience, which will greatly benefit you in the future.