Responsibilities
-
Develop and Maintain Backend Applications: Design, build, and maintain high-quality, scalable backend applications using Python, ensuring robust functionality and performance.
-
Design and Optimize APIs: Build and secure RESTful APIs using FastAPI, Sanic, or Django, implementing best practices for scalability and security.
-
Implement Asynchronous Programming: Leverage asyncio and aiohttp for asynchronous operations, enabling efficient handling of concurrent tasks.
-
Database Management: Create and optimize SQL queries, manage databases using Django ORM or SQLAlchemy, and ensure smooth migrations and indexing for improved database performance.
-
Integrate Cloud Services: Deploy and manage services on AWS, using EC2 S3 RDS, and Lambda, and utilize CloudWatch for application monitoring.
-
Collaborate with CI/CD Pipelines: Integrate code with CI/CD pipelines in Jenkins, GitLab CI, or AWS CodePipeline for continuous deployment and automated testing.
-
Testing and Debugging: Write unit, integration, and functional tests with PyTest or UnitTest, and use debugging tools like pdb and Sentry to track and resolve issues.
-
Ensure Code Quality and Version Control: Utilize Git for version control, participating in code reviews, and maintaining a collaborative environment with the development team.
-
Stay Updated on New Technologies: Continuously learn about the latest trends in Python development, cloud computing, and backend best practices to enhance development efficiency.
Requirements
-
Bachelor's Degree in Computer Science, Software Engineering, or a related field.
-
2 - 4 years of experience in backend development with Python.
-
Strong knowledge of web frameworks, databases, and API development.
Python Proficiency
-
Core Python: Strong understanding of Python syntax, data structures, and built-in libraries.
-
Object-Oriented Programming (OOP): Proficient in OOP principles, including inheritance, encapsulation, polymorphism, and design patterns.
Web Frameworks
-
FastAPI: Skilled in building asynchronous APIs with FastAPI, including using dependency injection, request validation, and async programming.
-
Sanic: Experience with Sanic for building high-performance, asynchronous web applications.
-
Django: Proficient in full-stack development with Django, including ORM, middleware, and Django REST Framework for API development.
Database And SQL
-
SQL Proficiency: Strong command of SQL for managing and optimizing relational databases like PostgreSQL and MySQL.
-
ORM: Experience with Django ORM and SQLAlchemy for streamlined database interactions.
-
Database Optimization: Skilled in optimizing SQL queries, managing indexes, and handling database migrations.
AWS And Cloud Services
-
AWS Services: Hands-on experience with EC2 S3 RDS, Lambda, and CloudWatch for deployment, storage, and monitoring.
-
Serverless Architectures: Familiar with building and deploying serverless applications using AWS Lambda.
API Development And Integration
-
RESTful APIs: Proficient in designing, building, and securing RESTful APIs using frameworks like FastAPI, Sanic, and Django.
-
Authentication/Authorization: Experienced with OAuth, JWT, and session-based authentication mechanisms.
Asynchronous Programming
-
Asyncio and Aiohttp: Skilled in Python's asynchronous capabilities, especially within web frameworks.
-
Concurrency: Knowledge of concurrent operations using async/await, threading, and multiprocessing for efficient task management.
Version Control And CI/CD
-
Git: Proficient in Git for version control and collaborative development.
-
CI/CD Pipelines: Experience in setting up CI/CD pipelines with Jenkins, GitLab CI, or AWS CodePipeline for automated testing and deployment.
Testing And Debugging
-
Unit Testing: Knowledgeable in testing frameworks like PyTest and UnitTest for unit, integration, and functional testing.
-
Debugging Tools: Familiar with debugging tools like pdb, logging, and Sentry for efficient error tracking and monitoring.
This job was posted by Soniya Yadav from Twenty Point Nine Five Ventures.