Senior Python Developer
We are seeking a highly experienced Senior Python Developer to join our team and design, develop, and maintain a Python-based application and daemon process.
Key Responsibilities:
* Design and implement robust, long-running Python daemon processes that handle high-reliability, event-driven ETL workflows without local data persistence.
* Build and manage processes that integrate multiple APIs, dynamically transforming and routing data between systems in real time.
* Develop and deploy the daemonised application within Azure App Containers, ensuring performance, fault tolerance, and stateless design.
* Collaborate with infrastructure teams to ensure CI/CD pipelines, observability, automated testing, and logging meet enterprise standards.
* Maintain high standards of code structure, documentation, and automated testing. Produce solution and code level architecture and operational documentation for maintainability.
* Continuously monitor and optimise system performance, logging, exception handling, and service availability in a production environment.
Required Skills:
* Advanced Python Development: Strong expertise in Python with an emphasis on daemon architecture, threading, asynchronous programming, signal handling, and memory-efficient coding practices.
* Daemon Lifecycle Management: Proven experience building and maintaining daemon processes, including error recovery, resource management, and graceful shutdown.
* Cloud-Native DevOps Skills: Proficiency with Docker, container orchestration, CI/CD (GitHub Actions, Azure DevOps), and managing infrastructure via code.
* Asynchronous Programming: Solid understanding of asyncio, aiohttp, or equivalent libraries for building non-blocking, event-driven applications.
* API Integration: Extensive experience with RESTful APIs, including handling authentication, pagination, retries, rate limits, and failure scenarios.
* Source Control & Collaboration: Proficiency with Git, pull requests, and code reviews in an enterprise environment.
* Testing & Automation: Experience with unit testing, mocking APIs, integration tests, and automated deployment pipelines.
Desired Attributes:
* Leadership & Mentorship: Ability to guide technical decisions, mentor junior developers, and lead by example in code quality and software design.
* Problem Solver: Analytical thinker who excels at debugging, system analysis, and improving existing architecture.
* Continuous Learner: Open to new technologies, best practices, and evolving DevOps and cloud trends.