Responsibilities / Introduction
a) Lead and manage a team of 4-6 software engineers in Singapore and across multiple ASEAN locations, motivating and growing technical expertise in line with each developer's individual career aspirations b) Introduce and establish clear processes and coding standards to ensure consistently high code quality, including adoption of industry best-practices and automated developmental tools where appropriate, e.g. TDD, CI c) Provide expert technical guidance to the engineering team, reviewing final Pull Requests before code merge and deployment to production, always making sure that the DevOps environment is stable and resilient d) Plan and execute initiatives to improve the Company's core technological stack to maintain a stable product infrastructure with 99.999% uptime and high system-response rate for a large enterprise-user base e) In partnership with the Company's Founder, define, prioritize, plan and drive the execution of the technological vision and engineering team structure and roles required to achieve the company's growth objectives f) Drive the Company's ongoing R&D programs with research collaborators in academia and industry to implement Artificial Intelligence to improve and optimize key engineering components of the product tech stack g) Guide and work closely with senior engineers to architecture, develop and deploy new features and enhancements to enterprise web- and mobile-based applications in a true SaaS, multi-tenant environment h) Ensure that QA function works closely in sync with Product and Engineering, with clearly described processes for unit testing, regression & preflight testing, issues & bug reporting, and other best-practices in QA i) Participate in the specification of new features and enhancements being prioritized by the Design and Product teams, including tech feasibility of functions and various interfaces of products or features to be developed. j) Continually validate and ensure overall system stability, scalability, security and portability in line with the Company's growing business needs and constantly evolving technological progression
Requirement
1. Bachelor’s or Master’s degree in Computer Science or related field from a top university. 2. Minimum 8 years of hands-on software development experience 3. Minimum 3 years of experience as software engineering manager or technical lead 4. People management experience, in particular in hiring, motivating and conducting performance review of engineers. 5. Providing coaching and regular feedback to team members on periodic basis 6. Work with the engineering team to plan and track development of all projects through delivery to production - make sure projects are delivered on budget and on time. - Provide project status information to the product team, customer support 7. Experience in software development methodologies 8. Experience in developing real-time web applications 9. Experience in building and integrating large-scale software systems 10. Involvement in complete software development life cycle of at least one project 11. Strong knowledge in software/web architectures and design patterns 12. Strong experience in at least one software/web development language 13. Experience with software and web engineering tools 14. Experience with continuous integration and code management repository tools 15. Strong technical leadership and collaboration skills. 16. Good technical writing and presentation skills 17. Excellent communication skills and strong decision-making skills 18. Critical thinking and problem-solving skills 19. Highly adept at project management in a demanding fast-changing environment with tight deadlines and scarce resources. Ability to multi-task is key. 20. Team player 21. Good time-management skills