Senior Applications Developer

Washington D.C.
Nov 09, 2018
Nov 23, 2018
Full Time
Job Description Summary:
Leads and provides expertise in the creation of application strategies and development platforms. Conceptualizes, develops, and implements enterprise level application and custom integration solutions including major enhancements and interfaces, functions, and features. Designs and develops complex and business critical software solutions, utilizing appropriate software engineering processes. Develops programming and development standards and procedures as well as programming architectures for code reuse. Prepares feasibility studies of potential systems, including application architectures, computing platforms, and networking configurations. Leads post-implementation analyses. Researches and maintains knowledge in emerging technologies for possible application to business. Serves as a technical expert and critical technical resource across multiple disciplines.

Performs work requiring advanced technical knowledge, often involving multiple phases and significant collaboration. Applies in-depth technical knowledge to independently and innovatively solve a full range of complex and sometimes unusual problems that impact organizational success. Brings industry-level expertise to function, and recommends changes to remain up-to-date or competitive. Establishes processes and procedures to ensure the effective and efficient operation of a complex function. Acts as a technical project leader.
Job Description:
ESSENTIAL JOB DUTIES:\n\n1. Leads and provides expertise in the creation of application strategies, collaborating with staff to identify application opportunities and solutions. Formulates and defines system scope and objectives.\n\n2. Conceptualizes, designs, develops, and implements complex business and management information systems, enterprise level applications, and custom integration solutions including major enhancements and interfaces, functions, and features.\n\n3. Analyzes requirements and processes and identifies gaps and weaknesses through complete process analysis and design/redesign.\n\n4. Proposes and demonstrates system design options to solve problems identified in process analyses. Models applications using relationship diagrams. Develops system architecture for applications. Creates logical/physical models for back end integration with database management systems. Ensures integration with other systems and technologies.\n\n5. Reverse engineers applications for re-modeling. Responsible for enterprise data repositories.\n\n6. Develops web-based applications. Builds capacity by enhancing inter-database and interdepartmental data interchange.\n\n7. Performs application debugging and collaborates on integration efforts related to other information systems in collaboration with system engineers.\n\n8. Investigates new development technologies and their potential application to business. Identifies and recommends potential future enhancements as identified in overall process redesign. Provides feedback and recommended use of various technologies to senior management and staff.\n\n9. Serves as a technical expert and resource across multiple disciplines. Mentors and guides less senior developers.\n\n10. May prepare feasibility studies of potential systems and lead post-implementation analyses.\n\n11. May instruct, direct, and review the work of other applications systems analyses and programming personnel. May have quality assurance review responsibilities.\n\nNONESSENTIAL JOB DUTIES\n\nRelated duties and special projects as assigned.\nJOB SPECIFICATIONS\n\nRequired Knowledge, Skills, and Abilities: In-depth knowledge of state-of-the-art programming languages and object-oriented approaches in designing, coding, testing, and debugging programs. Thorough understanding and ability to consistently apply the attributes and processes of current application development methodologies. Ability to solve problems of substantial variety and complexity. Ability to undertake tasks broad in nature, requiring ingenuity, and originality and serve as a resource to others in the resolution of complex problems and issues. Ability to operate independently, and exercise significant latitude for independent judgment, discretion, and action. Ability to work successfully in a team environment. Ability to develop relationships with co-workers and employees in other National Academies' departments. Excellent communication skills with a proven ability to effectively interact with all levels of employees.\n\nMinimum Education/Training Requirements: Bachelor's Degree in Computer Science or related field, or equivalent knowledge.\n\nMinimum Experience: Seven years of related professional experience.\n\nPhysical Capabilities: Ability to work at a computer for extended periods of time.\n\nRequired Licenses, Certification or Registration: MCSE, RedHat certification or equivalent certifications preferred.\n\nSupervisory Responsibilities/Controls: Reports to Director. General direction is provided.\n\nWork Environment: Office environment with occasional travel between National Academies' facilities and to off-site locations.\n\nAny qualification to be considered equivalent, in lieu of stated minimum, requires the prior approval of the Office of Human Resources.\n\nThe above statements are intended to describe the general nature and level of work performed by employees assigned to this job. They are not intended to be an exhaustive list of all responsibilities, duties and skills required of personnel so classified. Some functions in this description may be specific to a particular unit of the National Academies and not applicable to other units.Employee Type:EmployeeScheduled Weekly Hours:37.5City/State:Washington, District of Columbia