# Senior Software Engineer (Python)

**Company:** [Qode](https://jobs.workable.com/companies/d9Gs4Q7pnWjZVXU2mK6CGd.md)
**Location:** Ho Chi Minh, Vietnam
**Workplace:** on site
**Employment type:** Full-time

[Apply for this job](https://jobs.workable.com/view/ed5fd994-5477-40e2-9af7-ae87500bf8f9)

## Description

**About the Role**

We are seeking an experienced **Senior Software Engineer** with strong technical expertise, analytical thinking, and the ability to independently deliver high-quality software solutions.

You will be responsible for developing and enhancing complex applications, translating business requirements into technical solutions, and ensuring software quality, reliability, and maintainability.

The ideal candidate is a hands-on engineer who can navigate complex technical challenges, collaborate effectively with international stakeholders, and support the development of other engineers.

**_Work Location:_** **_Onsite in Ho Chi Minh_**

**Key Responsibilities**

**Software Development & Technical Design**

-   Design, develop, test, and maintain software applications using Python, Java, and other relevant technologies.
-   Translate functional and business requirements into clear, scalable technical specifications.
-   Analyze complex requirements, identify dependencies, and anticipate potential technical challenges.
-   Develop advanced application features and components while ensuring code quality, performance, and maintainability.
-   Understand existing application architecture, integration points, and data structures to deliver effective technical solutions.
-   Evaluate existing code and components for reuse or enhancement before introducing new implementations.
-   Follow established coding standards, development processes, and software quality guidelines.

**Problem-Solving & Application Support**

-   Independently investigate complex software defects, identify root causes, and implement sustainable solutions.
-   Troubleshoot application issues and provide technical support within agreed service expectations.
-   Identify potential risks affecting functionality, performance, scalability, or delivery timelines.
-   Communicate technical issues and proposed solutions clearly to both technical and non-technical stakeholders.
-   Maintain accurate technical documentation, troubleshooting records, and development updates.

**Collaboration & Technical Mentorship**

-   Collaborate with engineers, technical leads, and business stakeholders to clarify requirements and deliver solutions.
-   Conduct code reviews and provide constructive feedback to improve engineering quality.
-   Mentor junior engineers through technical guidance, knowledge sharing, and problem-solving support.
-   Proactively communicate progress, dependencies, risks, and blockers.
-   Contribute to continuous improvement of development practices and team effectiveness.

**Ownership & Delivery**

-   Take ownership of assigned technical deliverables from requirement analysis through implementation, testing, and release support.
-   Estimate effort, prioritize technical activities, and deliver within agreed timelines.
-   Work independently with limited supervision while maintaining alignment with the broader engineering team.
-   Identify opportunities to improve application quality, engineering efficiency, and maintainability.

**Requirements**

-   At least 5 years of professional software development experience.
-   Strong hands-on programming experience with **Python** and/or **Java**.
-   Solid understanding of object-oriented programming, algorithms, data structures, and software design principles.
-   Experience developing, maintaining, and troubleshooting complex software applications.
-   Ability to translate functional requirements into technical designs and implementation plans.
-   Good understanding of software architecture, application integration, databases, and system dependencies.
-   Experience with debugging, automated testing, version control, and code review practices.
-   Strong analytical thinking, root-cause analysis, and independent problem-solving capabilities.
-   Ability to manage technical priorities, identify delivery risks, and communicate proactively.
-   Experience collaborating with cross-functional or international engineering teams.
-   Willingness to learn and work with unfamiliar programming languages, proprietary systems, and complex enterprise applications.

**Nice to Have**

-   Experience with SQL, relational databases, and data-intensive applications.
-   Experience with REST APIs, backend services, and system integration.
-   Exposure to enterprise software or business-critical applications.
-   Experience supporting production applications and investigating customer-reported issues.
-   Experience mentoring junior engineers or conducting technical knowledge-sharing sessions.
-   Familiarity with Agile/Scrum methodologies.
-   Experience in healthcare technology, financial services, or other regulated industries.

**What We Offer**

-   Opportunities to work on challenging international software engineering projects.
-   Ownership of meaningful technical deliverables and complex engineering challenges.
-   A collaborative environment that values engineering excellence, accountability, and knowledge sharing.
-   Opportunities to mentor other engineers and contribute to technical best practices.
-   Continuous learning and professional development opportunities.
-   Long-term career growth within a technology-focused organization.
