Middle/Senior Python Developer
Description:
Client’s team consists of 100+ engineers, designers, data, and product people, working in small inter-disciplinary teams closely with creative agencies, media agencies, and with their customers, to develop and scale their platform, a leading digital advertising optimization suite that delivers amazing outcomes for brands and audiences.
As a Python Engineer you will work side by side with a Product Manager, a Design Lead or Data Scientist, and your engineering team to design, build, deliver and operate purposeful solutions. The role is a hands on development role, involving contributing to product strategy, crafting scalable and reliable architectures, developing features, building automations, owning tests, coaching and supporting junior engineers, and contributing to the wider team’s evolution of our principles and practices, and the tools we use. The role has no line management responsibilities.
Their data platform is built with Python and Airflow, deployed using CI/CD, heavily exploits automations, and runs on AWS, GCP, k8s, Snowflake and more. Their efforts in data engineering support their adserving platform which serves 9 petabytes and 77 billion objects annually, which amounts to 20 billion ad impressions across the globe.
Requirements:
- 2+ years of software development experience
- Strong English, good communication and documentation skills
- Experience in designing, building, and operating data-oriented solutions
- Good SQL development, query optimization and data pipeline development skills
- Experience using cloud platforms including AWS and GCP
- Experience with Docker and Kubernetes strongly preferred.
- Experience in SaaS product engineering and operations highly desirable.
- Experience in employing TDD, BDD or ATDD highly desirable
- A focus on continuous learning and improving, both technically and professionally, in your industry, for you and
your teams - Demonstrated resilience, with experience working in ambiguous situations
Job responsibilities:
- Develop software as a member of one of our engineering teams, participating in all stages of development,
delivery and operations, together with your tech lead, colleagues, Product, Data Science, and Design leaders. - Develop solutions that are simple, scalable, reliable, secure, maintainable, and make a measurable impact.
- Develop and deliver new features, maintain our product, and drive growth to hit team KPIs.
- Employ modern pragmatic engineering principles, practices, and tooling, including TDD/BDD/ATDD, XP, QA Engineering, Trunk Based Development, Continuous Delivery, automation, DevSecOps, and Site Reliability Engineering.
- Contribute to driving ongoing improvements to our engineering principles, practices, and tooling. Provide support & mentorship to junior engineers, prioritising continuous learning and development.
- Develop and maintain a contemporary understanding of AdTech developments, industry standards, partner and competitor platform developments, and commercial models, from an engineering perspective. Combined these insights with technical expertise to contribute to our strategy and plans, influence product design, shape our roadmap, and help plan delivery.