Job Title: Senior Python Developer
Location: London, UK (3 days in office)
SC Cleared: Required
Job Type: Full-Time
Experience: 10+ years
About the Role:
We are seeking a highly skilled and versatile Senior Developer to join our team and contribute to the
development and maintenance of our cutting-edge Azure Databricks platform for economic data. This
platform is critical for our Monetary Analysis, Forecasting, and Modelling activities. The Senior
Developer will be responsible for both front-end and back-end development, with a focus on Python,
including the challenging but rewarding task of reverse engineering an existing codebase to integrate
new features and improvements. This role requires a strong understanding of software development
principles, experience with various programming languages and frameworks, and a passion for building
high-quality, scalable, and maintainable software.
Drive the development of MVPs, ensuring timely delivery and alignment with business goals.
Key Responsibilities:
* Full-Stack Development:
* Contribute to both front-end and back-end development of applications and APIs
* Interacting with the Azure Databricks platform.
* Develop user interfaces using modern front-end frameworks (e.g., React, Angular,
* Vue.js) and ensure a seamless user experience.
* Develop robust and efficient back-end services and APIs using Python.
* Python Development:
* Develop and maintain Python code for data processing, API development, and
* Integration with the Azure Databricks environment.
* Utilise relevant Python libraries and frameworks (e.g., Flask, Django, Pandas, NumPy).
* Collaborate with cross-functional teams to build and enhance banking applications
* Work closely with UI/UX Designers to integrate visualizations seamlessly into web applications or
* other platforms
* Work on data interfaces to connect various systems within the bank.
* Write unit and integration tests to ensure code quality and reliability.
* .NET Development (Optional):
* Develop and maintain .NET code for back-end services, APIs, and integrations with other
* systems.
* Utilise relevant .NET frameworks and technologies (e.g., ASP.NET Core, C#, Entity
* Framework).
* Write unit and integration tests to ensure code quality and reliability.
* Reverse Engineering:
* Analyse and understand existing codebases (potentially Python) to identify areas for
* improvement, bug fixes, and new feature implementation.
* Document findings and create clear specifications for changes.
* Implement changes while maintaining the stability and functionality of the existing
* system.
* API Development & Integration:
* Design and develop RESTful APIs for data access and integration with other systems.
* Document APIs using OpenAPI (Swagger) or similar specifications.
* Ensure API security and performance.
* Database Interaction:
* Work with various databases (e.g., SQL Server, Azure SQL Database, NoSQL databases)
* to store and retrieve data.
* Write efficient database queries and optimise database performance.
* Testing & Quality Assurance:
* Write unit, integration, and end-to-end tests to ensure code quality and reliability.
* Participate in code reviews and contribute to improving code quality.
* Collaboration & Communication:
* Collaborate closely with other developers, data engineers, and other team members.
* Communicate technical concepts effectively to both technical and non-technical
* audiences.
Essential Skills & Experience:
• 10+ years of experience in software development, with a focus on both front-end and back-end
development.
• Strong proficiency in Python.
• Experience with front-end frameworks (e.g., React, Angular, Vue.js).
• Experience with API development and integration (RESTful APIs).
• Experience working with databases (SQL and NoSQL).
• Experience with version control systems (e.g., Git).
• Solid understanding of software development principles and best practices.
• Excellent problem-solving and debugging skills.
• Strong communication and teamwork skills.
• Demonstratable experience of reverse engineering existing codebases.
• Experience with Azure cloud platform and services.
• Experience with Azure Databricks.
• Experience with containerisation (Docker) and orchestration (Kubernetes).
• Experience with CI/CD pipelines.
• Experience with testing frameworks (e.g., pytest, xUnit).
• Familiarity with economic data or financial markets.