We are looking for a highly skilled Senior Python Developer to work with us in the development of robust, scalable, and secure serverless applications on AWS. As a critical member of our engineering team, you will use your expertise in Python to design and build cloud-native applications that leverage the power of AWS serverless technologies.
Key Responsibilities:
- Serverless Application Development: Design and develop AWS Lambda-based serverless applications and RESTful APIs using frameworks like Flask or FastAPI, integrated with AWS API Gateway.
- Backend Logic and Event-Driven Architectures: Build backend logic using Python for event-driven architectures with services like SNS, SQS, and Kinesis, while leveraging Python’s libraries for data processing and file handling.
- Asynchronous Programming: Utilize asynchronous programming in Python (asyncio, aiohttp) to efficiently manage concurrent tasks in distributed environments.
- Data Processing Pipelines: Design and implement serverless data processing pipelines using Python for workflows with AWS services like S3, Lambda, and DynamoDB.
- Optimization and Performance: Optimize Python applications for performance and scalability by implementing caching mechanisms, asynchronous calls, and minimizing latency.
- Testing, Debugging, and Monitoring: Implement unit testing with PyTest, and use AWS CloudWatch, X-Ray, and other tools to monitor, log, debug, and troubleshoot applications.
- Security and Authentication: Ensure adherence to AWS security best practices (IAM, encryption, VPC), and implement authentication mechanisms using AWS Cognito or Python JWT libraries.
- Collaboration and Mentorship: Collaborate with DevOps teams for CI/CD integration using AWS CodePipeline, CodeBuild, or Jenkins, and mentor junior developers on best practices and architecture decisions.