Produce application software that delivers requested functionality by following the unified software development process. Delivers quality software by possessing a working knowledge of modern modular programming techniques for construction, testing and implementation of customer needs. Converts detailed requirements and designs into language processable by computer. Perform software testing, corrects program errors, using methods such as modifying program or altering sequence of program steps.
Confers with customer and stakeholders involved or affected by the application to resolve questions of program intent, data input, output requirements, and inclusion of data quality and internal checks and controls. Prepares, or receives from business analyst, detailed use cases and activity diagrams to illustrate the customer needs and the sequence of steps that the software must follow that describe input, output, and logical operations involved. Collaborates with customers and if appropriate, the business analyst to obtain and analyze project specifications (use cases and activity diagrams). Proposes a viable overall design approach by analyzing the possible courses of action and associated impacts.
Participates in formal reviews with use cases and activity diagrams to understand the problem to be solved. Analyzes, reviews, and rewrites programs to increase operating efficiency or to adapt program to new requirements. Evaluates and recommends software and hardware to meet specific business needs or requirements.
Actively participate in the development of functional and technical design documents such as user interface wire frames and working prototypes, database designs using entity relationship models and/or object relational modeling. Compiles and writes documentation of program development and subsequent revisions.
Develops documents and presents project implementation plans. Appropriately and effectively communicates project status to all necessary parties. Actively utilizes project and time management skills to complete projects within specified timeframes.
Understanding and showing respect and appreciation for the uniqueness of all individuals; leveraging differences in others' perspectives and ideas; appreciating cultural differences and adjusting one's approach to successfully integrate with others who are different from oneself
Excellent verbal, written and/or interpersonal communication skills
Experience designing, developing and coding programming using JAVA, JSP, MySQL and must be capable of working on Linux, Unix and Windows environments
Strong knowledge of relational databases and database programming