Writes, debugs, executes and maintains the source code for software applications. Typically works under the direction of a Lead Developer. Likely to involve working closely with business analysts to ensure requirements are clear and well understood, with other developers to ensure the approach and code can be integrated, and with the application software testers to support their testing plans and resolve bugs. Also needs to conduct their own unit tests and ensure their code meets any performance standards. Analyze system requirements, including identifying program interactions and appropriate interfaces between impacted subsystems in a timely manner. Make recommendations towards the development of new code or reuse of existing code. May lead assigned projects, including assigning tasks, coordinating efforts, and monitoring performance. Required to participate in on-call rotation to support production issues outside of regular business hours. May recommend modern technologies and methodologies to management for meeting business needs plus support systems built on legacy technologies. Participate in software system testing and validation procedures, programming and documenting new and legacy third party systems. Ability to rapidly assess production incidents to maintain systems available within SLA. Provide technical advice and assists in solving programming problems, including outside of normal business hours. Write and/or review system specifications, including output requirements and flow charts. Assist in preparing project plans using project management tools. Review test results; document test activities, record remedial actions and participate in re-test. Ensure proper analysis of problems and programming approaches to prevent rework and schedule slippage. Identify and understand issues, problems, and opportunities; compare data from various sources to draw conclusions. Clearly convey information and ideas through a variety of communication channels to individuals or groups in a manner that engages understand and retain the message including when communicating to Senior management and business partners. Demonstrate a satisfactory level of technical and professional skill or knowledge in position-related areas. Develop and use collaborative relationships to facilitate the accomplishment of work goals.