Senior Software Engineer - (Python + PostgreSQL)
Ishan Technologies
Ahmedabad, Gujarat, India
Job Purpose
To design, develop, integrate, deploy and maintain scalable and secure software applications using Python and PostgreSQL. The role will contribute to solution design, technical implementation, code quality, production support and continuous improvement while providing technical guidance to junior developers.
Key Responsibilities
- Design, develop and maintain robust, scalable and secure applications using Python.
- Develop and enhance applications using Django, FastAPI, Flask or equivalent Python web frameworks.
- Design, develop and integrate REST APIs and web services for internal and external systems.
- Work with PostgreSQL and other relational databases, including SQL queries, schema/database design, indexing and performance optimization.
- Apply Object-Oriented Programming, software architecture principles, coding standards and secure coding practices.
- Understand technical requirements and contribute to solution design, estimation and implementation planning.
- Conduct code reviews and ensure adherence to coding standards, maintainability, security and quality practices.
- Use Git or other version-control systems and collaborate through established software development practices.
- Handle application deployment, debugging, troubleshooting and production support, preferably in Linux environments.
- Identify and resolve application defects, performance issues and production incidents in a timely manner.
- Collaborate with Product, QA, DevOps and other technology stakeholders.
- Provide technical guidance and mentoring to junior developers.
- Contribute to continuous improvement of development processes, application performance and engineering best practices.
- Work with Docker/containerization, CI/CD, cloud platforms, microservices, Redis/message queues where applicable.
- Support AI/ML applications, Generative AI/LLM solutions or AI API integrations where relevant.
Qualification & Experience
- Education: B.E./B.Tech. in Computer Engineering / Information Technology or MCA.
- Experience: Minimum 06 years of work experience in Software Application Development, with relevant experience in Python-based application development.
- Age: Minimum 27 years and maximum 38 years.
- Certifications (if any): Relevant Python, cloud, database, software engineering or technology certifications will be an added advantage.
Required Skills & Competencies
(1) Technical Skills:
- Python application development; Django, FastAPI, Flask or equivalent.
- PostgreSQL/relational databases, SQL, database design and performance optimization.
- REST APIs/Web Services, Git, Linux, debugging and production support.
- Software architecture, OOP, secure coding and development best practices.
- Application deployment and troubleshooting.
- Added advantage: Docker, CI/CD, cloud platforms, microservices, Redis/message queues.
- Added advantage: AI/ML applications, Generative AI/LLM integration and AI APIs.
(2) Functional Skills:
- Requirement understanding and technical analysis.
- Solution design and application development.
- Code review, defect resolution and production support.
- Performance optimization and technical problem solving.
- Cross-functional collaboration with QA, DevOps, Product and Technology teams.
(3) Behavioral Competencies:
- Strong analytical and problem-solving ability.
- Ownership and accountability.
- Clear technical communication and collaboration.
- Ability to mentor and guide junior developers.
- Attention to quality, security and maintainability.
- Continuous learning and adaptability.