Skills Required:The Senior Programmer will possess knowledge and experience in applications software development principles and methods sufficient to participate in the design, development, testing and implementation of new or modified applications software;operating systems installation and configuration procedures;organization’s operational environment;software design principles, methods and approaches;principles, methods and procedures for designing, developing, optimizing and integrating new and/or reusable systems components;pertinent government regulations;infrastructure requirements, such as bandwidth and server sizing;database management principles and methodologies, including data structures, data modeling, data warehousing and transaction processing;functionality and operability of the current operating environment;systems engineering concepts and factors such as structured design, supportability, survivability, reliability, scalability and maintainability;optimization concepts and methods;establish and maintain cooperative working relationships with those contacted in the course of the work;and speak and write effectively and prepare effective reports. The Senior Programmer, in development of applications software, is responsible for analyzing and refining systems requirements;translating systems requirements into applications prototypes;planning and designing systems architecture;writing, debugging and maintaining code;determining and designing applications architecture;determining output media/formats;designing user interfaces;working with customers to test applications;assuring software and systems quality and functionality;integrating hardware and software components;writing and maintaining program documentation;evaluating new applications software technologies;and/or ensuring the rigorous application of information security/information assurance policies, principles and practices to the delivery of application software services.