Job Description
As a seasoned Python Developer, you will design and implement robust, long-running Python daemon processes that handle high-reliability, event-driven ETL workflows without local data persistence. You will also build and manage processes that integrate multiple APIs, dynamically transforming and routing data between systems in real time.
The ideal candidate will have strong expertise in Python with an emphasis on daemon architecture, threading, asynchronous programming, signal handling, and memory-efficient coding practices. Additionally, they will have proven experience building and maintaining daemon processes, including error recovery, resource management, and graceful shutdown.
Required Skills and Qualifications
* 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.
Benefits
This role involves designing, developing, and maintaining a Python-based application and daemon process that dynamically integrates with external APIs to extract, transform, and load (ETL) data into another application's API.
The solution operates within an Azure App Container instance and adheres to a stateless, cloud-native architecture. The codebase is managed through our enterprise Git repository.
Others
* 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.