Job Description
The primary role of the Software Engineer is to develop software applications that would be used by the Company or the Group itself to support its business operations. The candidate shall be involved in the whole software development lifecycle from requirements elicitation, design, implementation, testing, deployment, maintenance, to evolution.
Key Responsibilities:
· Providing efficient technical solutions to problems and implement them in a timely, secure, and optimal manner;
· Liaising with business stakeholders and gather requirements;
· Maintaining software systems, including certain legacy ones, in order to ensure business continuity. This would include implementing bug fixes, change requests, etc.;
· Writing concise technical documentation on the developed software systems;
· Designing and developing a processing platform using various configuration management technologies;
· Analysing, designing and developing tests and test-automation suites;
· Testing software development methodology in an agile environment;
· Working alongside team members to elevate technology and consistently apply best practices;
· The candidate must be open-minded and passionate about Information Technology. Besides having a solid degree in Computer Science or IT from a reputable university, the candidate has to be equipped with the relevant strong hard-skills and soft-skills:
Job Requirements
Hard-Skills
Strong skills, understanding and knowledge in:
· OOPS, UML, and Docker;
· Algorithms and implementing them in applications;
· SQL query writing and databases like PostgreSQL, MySQL, MongoDB, and cloud-based DBMS (e.g. DynamoDB, Table Store);
· Programming skills such as Python, Java/JEE, PHP, C and C++ ;
· Frameworks such as Django, Spring MVC, CodeIgniter, Yii, Flask;
· Configuring web servers to meet the demands of the application;
· Data migration, transformation, and scripting.
Familiarity with:
· SDLC (Software Development Life Cycle) and/or Agile methodologies;
· HTML & CSS as well as Responsive designs (knowledge of HTML5 and CSS3 would be a plus);
· Javascript frameworks and libraries such as JQuery, Bootstrap, ReactJS, NodeJS;
· Design and development concepts on mobile platforms, web services integration (such as RESTful services);
· Both Linux/Unix and Windows environments;
· Tools such as SVN, Gitlab, Bitbucket, Jenkins;
· Session management & authentication as well as Data privacy, security and protection on all applications.
Soft-Skills
· The ability to work with minimal supervision in a dynamic environment and as a team player;
· Excellent communication skills;
· High resourcefulness and creativity;
· Strong analytical and time management skills.