JOB TITLE: Principal Software Engineer (Python)
REPORTING TO: Technical Delivery Manager
LOCATION: Remote, Hybrid and Office based options available
This role involves working as a lead Python developer within a distributed agile development team developing new-to-market containerised multi cloud applications. Successful candidates should be highly motivated self-starters with both deep and diverse experience of serverless cloud platforms. Innovation, initiative, continuous improvement and career progression is expected of successful candidates.
- – Provide technical leadership to teams.
- – Architect, design and implement technical solutions for customer projects using Python.
- – Agile requirements specifications, component designs and interface specifications.
- – Test-driven development, component testing and participating in system and integration testing.
- – Contribute to peer reviews of designs, code and test specifications.
- – Mentor junior team members.
- – 10 years’ experience in software engineering roles, including software design, architecture, development and test of scalable, reliable production software.
- – At least 5 years recent python development experience, including the use of python typing.
- – Developing for containers, with knowledge of Docker and Kubernetes.
- – High-scale, highly available REST API microservice architectures using container-based and serverless service.
- – Experience developing for
,and deploying python applications to public or private cloud.
- – Test Automation experience including TDD and BDD using pytest and other test automation tools.
- – Familiarity with common web services, technologies, architectures and related practices to make them reliable
- – Cloud fundamentals certificate in AWS, Azure and/or Google Cloud Platform.
- – Thorough understanding of SQL and NoSQL databases.
- – Experience with Pydantic data validation using python type annotations.
- – Experience of Atlassian Jira and Confluence.