Job Description
- Responsible for the architecture design, development, and maintenance of high-quality software applications.
- Participation in architecture design workshops, peer code reviews, unit testing and refactoring.
- Development of exciting new software applications using modern, best practice development techniques, design patterns, and quality standards.
- Participating in solution designs, design workshops, and peer code reviews.
- Applying best practice development techniques, including patterns and coding standards.
- Active participation in the user story and acceptance criteria creation, estimation, and testing.
- Active participation in all aspects of the Scrum framework, including Sprint Goals, Sprint Planning, Sprint Reviews, Daily Stand-ups, and Retrospectives.
- Actively learning new technologies to satisfy business and architectural demands.
Job Requirements
Essential Skills And Experience:
- In-depth knowledge of Python, pandas and its open-source ecosystem, with a focus on parallelized processing (multithread and/or multiprocess).
- Experience working with CSV files in million rows scale
- Familiar with sliding cumulation, rate and other financial algorithms
- Experience working with NumPy or other data manipulation framework
Desirable Skills And Experience:
- Working within a Scrum team
- Experience in SQL Server database (query, indexes and stored procedures)
- Containerisation, Docker, Kubernetes (Jobs and Pods)
- Exposure to messaging e.g. RabbitMQ
- The Atlassian toolset including JIRA, Confluence
- Working with Git.
- Experience with Jenkins and CI/CD Pipelines
- Financial domain knowledge.
- File storage on S3 Bucket