Job Details - Find Your Perfect Career Opportunity

Software Development Engineer - Backend

Agency Job via JusRecruit

Noida
Full time
Unpaid
PythonSQL

About the Role

Job Description


Function: Software Engineering → Backend Development

Technologies: Python, Django, Flask


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. 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. Use debugging tools like pdb and Sentry to track and resolve issues.


Ensure Code Quality and Version Control: Utilize Git for version control, participate in code reviews, and maintain 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.