Participate in all phases of application development life cycle that includes business requirement gathering, planning, application design and development, test, quality assurance, implementation, improvement and support. Conduct thorough study and analysis of client's business processes to identify and ascertain client's needs and requirements in software applications. Convert client requirements into software solutions and project briefs. Identify alternate solutions and assess them for both technical and business suitability. Participate in the determination of feasibility and scope of a development project. Analyze system requirements and capacity and perform gap analysis. Analyze existing software application systems and the impact and compatibility of new applicants or features. Develop and improve technology roadmap to achieve architectural goals. Participate in the development of technical and functional specifications. Develop various components, features, functions, interfaces, data layers, and sub-systems. Develop web applications using API. Develop proof of concepts and prototype. Develop test strategy, test plans and test cases. Perform various testing to ensure the quality of applications developed. Analyze test results and fix design issues. Conduct technical reviews, write functional and technical documentation and obtain sign-offs. Evaluate and recommend new information technology for application development, data integration, performance monitoring and version control. Apply the theory or principle of software engineering, computer organization, algorithms, operating systems, computer networks, database systems, data structures, software testing, computer programming, object-oriented programming. Also use programming tools, testing tools, and development methodologies in various operating systems, network and databases, including C#, .NET, Java, Selenium IDE & WebDriver, UNIX, TestNG, Agile/Scrum methodology, ASP.NET and VB.NET.
Job requirements: Master or its foreign equivalent degree in Computer Science, Computer Engineering, or Information Technology. Completion of post-secondary level courses (or 3 months of work experience in lieu of the course requirement) related to: 1) algorithms; 2) operating systems; 3) computer networks; 4) database systems; 5) software testing; 6) object-oriented programming; and 7) programming in C# & .NET. Any suitable combination of education, training or experience is acceptable.
Bachelor's degree in Computer Science