Job Title: Senior Python Developer
Location: Montreal, QC (Hybrid - 3 days onsite, 2 days remote)
Duration: 1-Year Contract (with potential for extension)
Experience Required: 10+ Years
About the Role:
We are seeking a highly skilled and proactive Senior Python Developer to join our Vulnerability Management Platforms Team. In this hybrid role based in Montreal, you will be responsible for designing and implementing high-performance REST APIs using FastAPI, contributing to a dynamic and fast-paced environment.
You will take full ownership of the services and features you develop, working closely with cross-functional teams to ensure seamless integration and optimal performance.
Key Responsibilities:
- Design and develop scalable, maintainable, and high-performing RESTful APIs using FastAPI, SQLModel, and Redis
- Write clean, efficient, and well-documented Python code
- Design and optimize database schemas and queries (PostgreSQL preferred)
- Implement caching strategies, rate limiting, and performance monitoring
- Develop and maintain automated test suites (unit and integration tests)
- Collaborate with frontend teams for smooth API integration
- Implement workflows for detecting, archiving, and purging stale data
- Ensure robust logging and auditing of data lifecycle processes
- Mentor junior developers and conduct code reviews
- Work with system architects to refine API logic and enhance performance
Required Skills & Qualifications:
- 5+ years of professional Python development experience
- Strong expertise in FastAPI or similar frameworks (Flask, Django REST)
- Deep understanding of REST API design principles
- Proficiency in asynchronous programming with Python
- Solid experience with SQL databases (PostgreSQL preferred)
- Strong knowledge of API security best practices
- Experience with Docker and containerized environments (OpenShift/Kubernetes)
- Familiarity with event-driven architecture and tools like Kafka
- Proficiency in writing unit and integration tests
- Excellent problem-solving skills and attention to detail
- Strong communication skills and ability to work in agile, collaborative teams
- Adaptability and eagerness to learn new tools and technologies