Python Engineer
- Discuss this with your agent
- Open in Claude
- Open in ChatGPT
Prepare application
- Draft this with your agent
- Open in Claude
- Open in ChatGPT
Role details
Tech stack
+29 more
Job description
We are migrating multiple business-critical applications from a single-tenant Hub-and-Spoke architecture to a scalable, multi-tenant, cloud-native backend. The platform must be highly available, secure, scalable, and high-throughput, with a strong focus on async processing, API performance, database efficiency, authentication, and production readiness. This is a delivery-driven engagement with firm deadlines and a broad group of stakeholders. It is a high-visibility position within the organization, with a strong likelihood of extension for engineers who deliver. The Role You will combine hands-on application migration with backend development. You will work independently, own your deliverables end to end, and communicate clearly and proactively with technical and business stakeholders., Migrate business-critical applications from a single-tenant Hub-and-Spoke architecture to a multi-tenant, cloud-native platform Enable multi-tenancy across existing applications and services Design and build new REST APIs and backend functionality using Python and FastAPI Develop scripts and automation for data and configuration migration Design and optimize PostgreSQL schemas, queries, and data access patterns for efficiency at scale Implement async processing and high-throughput API design Implement authentication and security, including SSO, OAuth, OIDC, PKCE, On-Behalf-Of (OBO) flow, and API key authentication Containerize applications with Docker and deploy them on Azure Container Apps Build and maintain CI/CD pipelines in Azure DevOps Ensure production readiness through automated testing, logging, monitoring, and observability Debug, troubleshoot, and optimize performance in production environments Integrate Azure AI services into the backend Technology Stack Languages and frameworks: Python, FastAPI Database and ORM: PostgreSQL, SQLAlchemy Containerization: Docker Cloud: Azure Container Apps, Azure Database for PostgreSQL Flexible Server, Azure AI Search, Azure Document Intelligence, Azure AI Foundry DevOps: Azure DevOps, CI/CD Architecture: Multi-tenant, cloud-native
Requirements
Python development Strong Python development experience Deep FastAPI expertise (essential) Strong object-oriented programming skills and application of SOLID principles Async programming Scripting and automation Database Deep understanding of PostgreSQL and its capabilities Strong database design skills Experience with SQLAlchemy or an equivalent Python ORM (essential), including transactions and connection management NoSQL experience (a plus) API design and development REST API design Rate limiting and validation API versioning and error handling High-throughput API design Authentication and security SSO, OAuth, OIDC, and PKCE On-Behalf-Of (OBO) flow API key authentication Secure API development practices Architecture and scalability Multi-tenant architecture Highly available and scalable systems Resilience and fault tolerance Distributed-system concepts Cloud and containerization Azure-based application architecture Docker and containerized applications Azure DevOps and CI/CD Production engineering Automated testing Logging, monitoring, and observability Debugging and troubleshooting Performance optimization AI fluency Familiarity with RAG, document processing, and visual processing concepts Experience working with AI-assisted development tools (e.g., GitHub Copilot) What Sets a Strong Candidate Apart Direct experience delivering a migration project, ideally moving legacy or single-tenant systems to a multi-tenant, cloud-native architecture A track record of independent ownership: you can clearly explain the technical decisions you made and the parts you personally designed and implemented Clear, proactive communication with stakeholders under tight deadlines Comfort defending architectural and technical decisions in a deep, rigorous technical discussion Interview Process The technical interview will be conducted by a senior engineer and will be in-depth. Expect detailed questions on your hands-on contributions, technical decision-making, and specific examples of ownership from previous projects, particularly around Python, API design, Azure, Docker, security and authentication, and migration work. Please be prepared to discuss what you personally built and delivered, rather than what the team accomplished.
Apply for this position
This job is hosted externally. Click below to view the full posting and apply.
Prepare application
- Draft this with your agent
- Open in Claude
- Open in ChatGPT
Good distractions
Talks and stories from around this role — technically off-topic, practically not.
Moments
Explore playlistsVideos
See allRelated articles
See all
How to Answer the Interview Question: “Why Do You Want to Be a Software Engineer?”
Navigating the AI Shift
Should senior developers refuse interview coding challenges?
How to Answer the “Why Should We Hire You” Interview Question