Role Description
Take part in all application development lifecycle phases; Develop customised software solutions using Python as programming language; Be part of a self-organizing Scrum team, actively involved in all team activities; Develop functionalities according to defined acceptance criteria; Contribute to the development of coding guidelines and ensure high code quality in the team; Work within the Scrum Team to deliver the sprint scope in time and with the expected quality; Collaborate with the client’s development staff; Provide technical leadership within the team, setting the technical direction, making critical technical decisions, and ensuring adherence to best practices and coding standards; Take ownership of products, platforms, or components, leading the team in their successful execution and maintenance.
Responsibilities
- Define architecture, scope, timelines, and deliverables, ensuring alignment with business objectives;
- Collaborate closely with other teams, such as product management, design, and quality assurance, to ensure alignment and coordination across all aspects of project delivery;
- Proactively manage incidents directly affecting the team or products, ensuring the team owns the operations of their systems;
- Ensure successful delivery of projects on time, within budget, and to the highest quality standards;
- Drive technical innovation, introducing modern technologies, methodologies, and tools to improve productivity, efficiency, and quality;
Skills and Experience
- Deep understanding of software development principles, architectures, and best practices;
- Proficiency in Python programming and related frameworks (FastAPI, Flask);
- Experience with SQL Alchemy for database interactions and Celery for distributed task processing;
- Azure PaaS Services:
- Experience with Azure PaaS services such as App Services, Function Apps, API Management, Service Bus, Azure Storage, Key Vaults, Azure SQL, Azure Cosmos DB, and Azure AD;
- Experience with web services, Web API, Swagger, Postman, and Microsoft APIM;
- Track record of Test-Driven Development (TDD) and automated testing using testing principles and practices, particularly with PyTest;
- Database Expertise:
- Experience with both SQL and NoSQL databases, including PostgreSQL, CosmoDB, and Redis;
- Familiarity with Infrastructure as Code (IaC) principles and tools such as Terraform, as well as containerisation technologies like Docker;
- Excellent communication skills, including the ability to convey technical concepts, lead meetings, and collaborate with stakeholders effectively;
- Leadership skills, including the ability to inspire and motivate team members, resolve conflicts, and make tough decisions when necessary;
- Initiative-taking attitude, demonstrated by your ability to take initiative, identify opportunities for improvement, and drive positive change within the team;
- Collaboration skills, fostering a culture of collaboration, teamwork, and knowledge sharing within the team and across the organisation;