About the job Sr. Software Engineer
About the Role
The Senior Software Engineer is a technical role responsible for the design, development, and optimization of scalable applications and APIs using Python 3.x, Django, and Django Rest Framework (DRF). The engineer ensures high performance, security, and reliability while integrating with third-party services and managing MySQL/PostgreSQL databases. This role involves Linux server deployment, CI/CD pipeline implementation, and collaboration with cross-functional teams (Product, DevOps, Design) to deliver robust solutions.
By leveraging best practices in software architecture, automated testing, and documentation, the Senior Software Engineer drives efficient problem resolution and maintains high code quality. This position plays a critical role in customer satisfaction and product success through timely delivery, scalable design, and adherence to security and performance standards.
What You Will Do
Essential Job Functions:
- Develop and maintain robust, scalable web applications using Python 3.x, Django, and Django Rest Framework (DRF).
- Develop and maintain micro services in Python 3.x
- Design, implement, and manage RESTful APIs for internal and external integrations.
- Optimize application performance and ensure secure, maintainable code.
- Work with MySQL and PostgreSQL databases for schema design, data migration, and query optimization.
- Deploy, monitor, and troubleshoot applications on Linux servers.
- Set up and manage CI/CD pipelines to streamline development and deployment.
- Collaborate closely with cross-functional teams including DevOps, Product, and QA.
- Integrate third-party APIs and cloud services to extend platform capabilities.
- Contribute to architectural discussions and provide innovative technical solutions.
- Stay up to date with industry trends, tools, and technologies.
- AI/ML agent integration or development.
- Deploy and monitor the code with Docker, Kubernetes.
What Qualifies You
- Comfortable with debugging, troubleshooting, and optimizing performance in complex systems.
- Experience working through the entire software development lifecycle, from design to deployment and support.
- Solid understanding of software development principles, including design patterns, data structures, and object-oriented programming.
- Comfortable working in agile environments with continuous delivery and integration cycles.
- Experience with Docker, Kubernetes, or other container/orchestration tools.
- Proficiency in asynchronous programming (asyncio, Celery).
- Self-starter: uses an appropriate sense of urgency and has capability of resolving complex technical problems and works both independently and collaboratively with a team
- Willingness and desire to continue advancing technical expertise in collaboration with Engineers and Architects through the pursuit of technical certifications.
- Have strong communication skills (written, verbal, presentation)
- Ability to follow and document standard processes and procedures
- Ability to stay calm under pressure in a fast-paced environment, maintain a positive attitude, and quickly adapt to changing priorities and new technologies
- Open to feedback and continuously looking for ways to improve systems, processes, and yourself.