Software Development: Design, code, test, debug, and maintain software applications using Python and related technologies. Translate software requirements into well-structured, efficient, and maintainable code.
Application Architecture: Participate in the design and architecture of software solutions. Collaborate with architects and technical leads to ensure that the software is built in accordance with best practices and design principles.
Frameworks and Libraries: Utilize Python frameworks and libraries (such as Django, Flask, or NumPy) to streamline application development, enhance functionality, and leverage existing modules.
Database Interaction: Develop database schemas, queries, and data access layers using technologies like SQLAlchemy or Django ORM to ensure efficient data storage and retrieval.
Testing and Quality Assurance: Conduct unit testing, integration testing, and participate in the software quality assurance process. Identify and address software defects and performance bottlenecks.
Troubleshooting and Debugging: Diagnose and resolve software defects and issues by analyzing logs, debugging code, and utilizing development tools and techniques.
Collaboration and Communication: Work closely with cross-functional teams, including business analysts, designers, and other developers, to gather requirements, clarify specifications, and ensure smooth integration of software components.
Documentation and Reporting: Create and maintain technical documentation, including software designs, code comments, and user manuals. Prepare regular progress reports and communicate project status to stakeholders.
Candidates must have hands on coding experience with both Python & AWS
Education: A bachelor's degree in computer science, software engineering, or a related field is often preferred. However, practical experience and relevant certifications can also be valuable.
Python Development Experience: Strong proficiency in Python programming language and its ecosystem. Demonstrated experience in developing and maintaining Python-based applications and systems.
Database and SQL: Experience in working with relational databases (such as MySQL, PostgreSQL, or Oracle) and proficiency in writing SQL queries. Knowledge of ORMs like SQLAlchemy or Django ORM is beneficial.
Software Development Lifecycle: Understanding of software development methodologies, such as Agile or Scrum, and experience working in a collaborative team environment using version control systems (e.g., Git) and issue tracking tools (e.g., JIRA).
Problem-Solving and Analytical Skills: Strong problem-solving abilities and analytical thinking to understand complex requirements, identify solutions, and troubleshoot software issues.
Communication and Collaboration: Excellent communication skills to effectively collaborate with team members, stakeholders, and clients. Ability to translate technical concepts into non-technical terms.