Responsibilities: Participate in all stages of System Development Life Cycle Produce clean, efficient code based on specifications and ensure written codes are adherence to best practices, standards, and guidelines Timely delivery of development work with quality, meeting the users’ requirement Provide on-going application support as part of the development team Troubleshooting issues raised by users and providing its resolution Participate in any other IT related task as assigned and ensure assigned tasks are delivered on time. Design and plan for system process flow and database structure Enhance applications by identifying opportunities for on-going improvements, e.g. refactoring, performance tuning and bug fixing Develop the documentations such as functional specifications, technical specifications, user manuals etc and update relevant documents on all changes in a timely manner. Collaborate with QA engineers to test software solutions and ensure they meet functional and non-functional requirements Stay up-to-date with emerging technologies and programming languages and apply them to our software solutions Provide technical input to impact analysis and change control Accurately report project status to senior/team lead/head of the development team
Technical Requirements: Bachelor's degree/diploma in computer science, engineering, or a related field Minimum 2 to 4 years of relevant working experience in Web application Development involving both front-end and back-end applications Hands-on development skill in Java platform (Spring and AngularJS Framework). Strong working experience with SQL and Stored Procedure Significant experience in MS SQL DB/ PostgreSQL DB Technical skill in JavaScript, Bootstrap, Node.Js, jQuery, CSS, or other scripting languages Experience in JSON, Web Services, API, Crystal Reports Experience in .NET (C#) is an AdvantageFamiliar with JasperReports, IntelliJ IDEA/VS CodeFamiliar with code versioning tools such as Bitbucket Knowledge in Kubernetes, Docker, Jenkins, DevOps, other Container platforms Proactive team player, working collaboratively with cross-functional teams and with ability to communicate efficiently and effectively at all levels. Strong knowledge of software development methodologies (e.g. Agile, Waterfall), tools, and processes Strong analytical and problem-solving skills, with the ability to think critically and creatively Ability to manage multiple projects simultaneously, prioritizes tasks, and meets deadlines Proven ability to be flexible and work hard, both independently and in a team environment with changing priorities and tight deadlines