Software Developer (Junior/Mid-Level/Senior)
Summary
Designs, develops, tests, and maintains the resort company's mobile, web, and desktop applications, databases, and integrations, plus troubleshooting, deployment, and user support. Stack includes C#, Java, JS/TS, Python, PHP, Node.js/Laravel/Django, Flutter, SQL databases, Git, and Linux/VPS admin. On-site in Bauang with possible future PNG transfer.
Job Summary
The Software Developer is responsible for designing, developing, testing, maintaining, and enhancing mobile, web, and desktop applications and systems. The role involves programming, troubleshooting, system integration, customisation, and technical support to ensure the efficient operation of the Company's software solutions.
Applicants will be assessed for Junior or Senior Software Developer positions based on their technical skills, qualifications, and experience.
Duties and Responsibilities
Design, develop, test, debug, maintain, and enhance mobile, web, and desktop applications.
Write, modify, and maintain program codes based on business and client requirements.
Develop and maintain databases, reports, system interfaces, and integrations.
Design and implement application features, user interfaces, and system enhancements.
Troubleshoot software errors, system issues, and application performance problems.
Assist with software installation, configuration, implementation, and system upgrades.
Perform software testing, identify bugs, and implement necessary corrections and improvements.
Support software customisation and enhancements based on client requirements.
Ensure application functionality, performance, security, and compatibility across supported platforms.
Coordinate with the Development Team and other departments on software projects and technical concerns.
Maintain proper documentation of source codes, system changes, development activities, and technical solutions.
Provide technical assistance and conduct user training when required.
Undergo training and become proficient in all Able software systems and solutions.
Perform other related duties as assigned by the immediate supervisor or Management.
Qualifications
Bachelor's degree in Computer Science, Information Technology, Software Engineering, or a related field.
Knowledge of programming languages such as C#, Java, JavaScript, TypeScript, Python, PHP, or other relevant languages.
Knowledge or experience in mobile, web, and desktop application development, with proficiency appropriate to the position level.
Knowledge of SQL and database management systems such as MySQL, Microsoft SQL Server, or PostgreSQL.
Familiarity with software development, debugging, testing, and troubleshooting.
Knowledge of web applications, APIs, and system integration.
Knowledge of computer hardware, installation, maintenance, troubleshooting, and basic networking is an advantage.
Strong analytical, logical thinking, and problem-solving skills.
Good communication skills and the ability to work independently or as part of a team.
Must be willing to undergo training on all Able software systems and solutions.
Must be willing to accept future assignments or transfer to Papua New Guinea (PNG), subject to applicable employment and immigration requirements.
Experience Requirements — Senior Level
At least five (2-3) years of hands-on experience in system administration.
At least three (2-3) years of hands-on experience in software development.
Technical Skills
Experience in web and backend development using Node.js, Laravel (PHP), and Django (Python).
Experience in mobile application development using Flutter, Android Studio for Android, and Xcode for iOS.
Experience in Linux server and VPS administration, including deployment, configuration, maintenance, backups, and troubleshooting.
Experience with Model Context Protocol (MCP) integrations.
Strong knowledge of Git version control, including branching, merging, resolving merge conflicts, and collaborative development workflows.
Knowledge of REST API development and integration, application security, and secure coding practices.
