Software Engineer - Python
DescriptionQuantumBlack helps companies use data to drive decisions. We combine business experience, expertise in large-scale data analysis and visualisation, and advanced software engineering know-how to deliver results. From aerospace to finance to Formula One, we help companies prototype, develop, and deploy bespoke data science and data visualisation solutions to make better decisions.
What You'll Do
You will be working on the frameworks and libraries that our teams of Data Scientists and Data Engineers used to go from data to impact. You will master, demonstrate and develop best-practice around modern tools that support rapid development of analytics solutions like Python, Spark, Luigi, Airflow and others. You will learn to deeply understand the data science and data engineering process and develop impactful and reusable patterns and abstractions. You will collaboratively advance the state of art in QuantumBlack and for our clients. You will experience the thrill of building a growing product and evolving the engineering process to handle more users, harder problems and more advanced client situations.
We define engineering across six core axises: technical; execution; collaboration and communication; influence; and maturity. As an engineer on a QuantumBlack team you’re expected to role model these behaviours for your peers, junior engineers, and wider colleagues
- Experience delivering high quality Python code
- Significant experience collaborating in a product engineering environment
- Strong experience in working as part of a multi-disciplinary team
- Experience working in highly scaled data problems (e.g, distributed computing, Spark, Kafka)
- Working on or contributing to frameworks and tools, either internal or open source
- Experience working with production AI/ML it would be a strong advantage
- Focused on technical decision-making, leading work that affects one or more complex systems and high-demand areas
- Experience independently scoping and implementing solutions for your product
- Guiding our processes, whilst also helping us to define them
- Consistently delivering code that possesses quality and maintainability
- Writing and collaborating on highly insightful, comprehensive code reviews
- Extraordinary in-depth understanding of your assets architecture, systematically thinking through potential design impacts on other teams and the company
- Being a go-to guide in an area, with an increasingly strategic mindset
- You should explore technologies with sizable potential impact for your asset
- You should be able to successfully plan and execute projects involving multiple engineers and complex requirements, prioritising strategically.
- You should avoid monolithic deliverables and breas down complex tasks quickly
- You should ask for mentorship in unfamiliar areas, pull in others as needed, and persist when challenged with roadblocks
- Using analytics and product understanding to inform decisions and measure impact
- Executing pragmatically, consistently delivering high-quality, non-disruptive releases.
- You should identify, define, and solve strategic problems, thinking holistically about the whole system.