Python Engineering Lead, Remote anywhere in the UK

Discipline: Tech / Dev
Job type: Permanent
Salary: £105,700
Job ref: AP1004
Published: 4 months ago

Python Engineering Lead, Remote anywhere in the UK – Up to £105,700 DOE plus benefits

This leading global data and measurement-driven media agency need a new Engineering Lead to work with some of the most forward-thinking people and brands in tech.

This role requires an experienced engineer looking for an opportunity to lead on technical implementation and continued delivery of core products.

You would use your technical depth and ability to pull together diverse options to produce improved solutions where necessary and to ensure continued smooth operation. You provide input into technical decisions from design through to build and delivery.

Ideally you have some experience supporting and mentoring more junior engineers, recognising the key benefits of building a collaborative, cross functional unit. Initially the role is fully hands-on, with the aim of growing a team to support you.

You are a member of the Engineering Chapter, reporting to the Director of Engineering, and will work alongside members of cross-functional product teams in order to understand the domain, lead technical discussions and directly execute on tasks to support the on-going maintenance and continued feature enhancements of key products.

This Python Engineering Lead’s responsibilities are:

- Building and deployment of back end services communicating over a range of interfaces
- Implementation of interfaces defined together with an Architect
- Estimation and delivery of working code on time and to agreed standards
- Maintaining code standards
- Writing tests (unit tests, BDD tests), working with one or more Product Owners to ensure deployed code meets the definition of done
- Maintaining CICD pipelines
- Cross-team code reviews. You would be aligned with one or two delivery teams working on Products that would fold under Tech Core solutions.
- Writing of proofs of concept for new architecture, techniques and technologies
- Taking part in specification sessions where we define functional and non-functional characteristics of our systems
- Collaborating on designs and solutions that allow us to deliver software on time and to agreed functional and non-functional specification
- Delivery of the solutions that are in line with the approach agreed by the Engineering Chapter
- Providing technical input in order to ensure that the designs are implemented using appropriate tools and techniques
- Taking part in the process of requirements identification alongside the business analysts and product owners
- Address any architectural, implementation or infrastructure issues that may prevent the successful delivery of software; advise on changes needed to remove the root causes of the issues
- Designing and maintaining the topology of services; define, design, own, and guard our APIs
- Learning and expanding the domain knowledge and act as an expert during specification sessions
- Taking part in technical interviews

This Python Engineering Lead will have a proven track of:

- 8+ years of writing clean, well-designed, tested, and reusable code
- Using test driven approach to programming:TDD for unit tests and BDD for functional tests
- Use of web frameworks such as Flask or Django
- Use of SCM i.e Git and platforms such as Github or Gitlab
- Understanding basic architectural patterns, when to apply them and their trade-offs
- Working with microservices communicating over a range of interfaces such as REST, gRPC and event/message based
- Playing a crucial role in every part of the software life-cycle:inception, specification, design, implementation with testing, delivery
- Experience providing technical guidance for local and remote development teams
- Architecting systems that are mainly based on cloud solutions
- Lean delivery, just in time

This Python Engineering Lead will need the following skills:

- Write software using all our core languages (Python, ECMAscript, TypeScript)
- Write software using a service oriented approach.You know its benefits and pitfalls.
- Write software using test driven development, and behaviour driven development
- Implement interfaces based on OpenAPI
- Apply appropriate testing techniques
- Write asynchronous and parallel software
- Write scalable software
- Understand the concept of cloud based software environment and its trade offs
- Ability to express your ideas using diagrams and schemas
- Ability to communicate complex technical and business concepts to a range of audiences
- Design and implement event driven systems
- Effectively communicate with your peers
- Understand and maintain the Continuous Delivery pipelines
- Prototype solutions defined by Product and following agreed patterns
- Acknowledge and be able to explain the trade offs with any technical decision
- Be passionate about improving coding and development practices
- Be proactive in highlighting debt/risks within our software and be part of the solution
- Support and teach junior members of the team

You have knowledge of:

- Python 3 - expert level
- SQL / Database knowledge is essential, relational and non-relational solutions
- Understands how the web works and REST APIs, pub/sub, GRPC, AMQP
- Docker - used to support local development and deployment via CI
- ETL solutions such as Apache Beam or Airflow
- Architectural patterns (Multi-tier, SOA, Hexagonal, Microservices)
- Message and communication patterns:AMQP, RPC, GRPC, REST and Hypermedia
- APIs definition with OpenAPI, and/or Protocol Buffers
- Testing tools and types of testsbehave, Jasmine)
- Specification tools (Gherkin)
- Diagramming solutions (Logical component, ERD, sequence diagrams, UML nice to have)
- Google Cloud or AWS (Experience with GCP preferred i.e Cloud Functions, AppEngine, GKE, PubSub, Big Query)
- Sound knowledge of Git
- Extreme Programming approach

It would be nice...

- Passion for open-source software and contributing to the community
- Experience within the Advertising / Media / Adtech space
- Working with the business sides of Adwords, Facebook, SA360, CM360
- Frontend frameworks (especially Angular)
- Experience working with Data Science specialists on data modelling projects
- Knowledge of networking and cloud-based delivery models

Are you the switched-on, smart, ambitious and tech-savvy Engineering Lead this leading digital/data agency need right now? If so, please get in touch quoting job reference AP1004.