Job Title : Senior Python Developer
Location : Canary Wharf (Hybrid)
Contract Length : 12 months
Industry: Oil and Energy, Tech
Role Overview
Are you a talented and experienced python developer who can build and maintain solutions for the financial/energy markets? Do you have a passion for working with large and complex datasets, as well as trading systems and market data? Do you enjoy leading and mentoring a team of data engineers, as well as collaborating with product managers, data scientists, and stakeholders? If so, we have an exciting opportunity for you!
We are looking for a senior python engineer to join our agile squad of engineers working on development of proprietary data and analytics solutions.
As a proactive and self motivating professional you will be responsible for designing, developing, testing, and deploying high-performance, scalable, and reliable solutions that process, analyse and provide access to large volumes of data.
You will also collaborate with other squads, stakeholders, and clients to deliver innovative solutions that meet their needs. You will provide technical guidance and code reviews to your team members, as well as troubleshoot and resolve any issues that arise.
Qualifications and experience
A bachelor's degree or higher in computer science, engineering, or a related field
At least 7 years of professional experience in software development, preferably in the financial services or energy trading industry
Key Skills
Technical skills summary
* Expertise in Python and its ecosystem of libraries and frameworks for data processing, data analysis and data visualisation
* Experience with SQL and Timeseries databases
* Experience with cloud AWS services, such as S3, EC2, RDS etc
* Experience with ETL tools, such as Airflow
* Proficiency in Git, CI/CD, testing tools, producing supporting documentation and best practices
* Quality engineering best practice and tooling including TDD, BDD
Domain and soft skills summary
* Experience with front office trading systems & financial market data
* Experience with large scale data processing and analytics
* Experience with mentoring and coaching of junior staff
* Experience designing innovative solutions while engaging with key business and technology stakeholders
* Experience with providing strong collaborative technical leadership to your team
* Excellent communication and interpersonal skills, with the ability to work effectively in a diverse, fast-paced and dynamic environment
Technical skills (Must have)
* Python 3.9+ - Design Patterns / separation of concern; Logical Data Modelling; OOP fundamentals; Use of python libraries such as pandas, sqlalchemy / psycopg2, Poetry/setuptools; Active engagement with PEP and awareness of new language features
* Python test automation - TDD; BDD; Understanding of unit vs integration vs end to end testing approaches
* DevOps – Git; CI/CD; ADO pipelines (or Jenkins / Groovy Pipeline Libraries); Bash; Docker; Artifactory/PyPI
* SQL - SQLServer/T-SQL; PostgreSQL / PG-SQL; Tuning; Joins; Aggregation; Stored procedures; Transactions
* Cloud Environments – Understanding of principles, technologies and services for AWS / Azure
Technical skills (Should have),
* Kubernetes EKS / AKS / OpenShift including high availability; kubectl/oc Operators; Deployment config / custom resources; Helm Charts; StatefulSets
* Python 3.9+ - parquet / arrow experience
Technical skills (Nice to have),
* Airflow - Detailed understanding of architecture including schedulers, executers, operators, XCom; Understanding DAG execution at scale;
* Databricks experience including Hive / Unity Catalogue; Optimisation; PySpark; Databricks Connect
* Log Analytics including Splunk, Elastic search/Logstash/Kibana, Graphana/LOKI/Prometheus
* SSO experience including Kerberos; Azure AD / Entra ID
* Recent Java experience - Java 17+, SpringBoot 3.x, Maven
* Dataiku Data Science Platform (or similar) – Awareness of platform, principles, core concepts. Experience using the platform a bonus.
We are an equal opportunity employer and value diversity at our company. We do not discriminate on the basis of race, religion, colour, national origin, sex, gender, gender expression, sexual orientation, age, marital status, veteran status, or disability status.