The Federal Emergency Management Agency (FEMA) is the federal coordinator to prepare for, prevent, respond to, and recover from domestic disasters and emergencies. FEMA is responsible for saving lives and protecting property and public health and safety in a natural disaster, act of terrorism, or other manmade disaster. FEMA consists of six primary components: Response and Recovery, Federal Insurance and Mitigation, Protection and National Preparedness, United States Fire Administration, Regional Operations, and Mission Support. FEMA employs Federal Grants as the primary mechanism to accomplish its mission. FEMA currently manages 40+ active grant programs in support of its response, recovery, mitigation and preparedness missions. Collectively, these programs represent approximately 70% of FEMA's total spending.
The FEMA Grants Management Modernization (GMM) SW Architect will be responsible for leading the software development team for the FEMA GMM program for CACI. The position requires extensive experience leading large, complex software development and engineering support programs. The FEMA GMM Software Architect will drive the design, development, and deployment of a next generation high performance Grants Management solution hosted in a hybrid cloud based environment. Successful candidates will possess first-hand experience working in agile development environments, with a strong background using open source and COTS tools for building distributed systems. IT Modernization/Transformation experience is critical given the customers need to consolidate 9 legacy Grants systems into the target solution.
Knowledge and understanding of the FEMA mission and Grants Management process is highly desirable, but not required. Strong agile (preferably scaled agile framework) implementation qualifications are required. The selected candidate will provide input to long and short range planning of projects, development of business solutions, process re-engineering, project scheduling, budgeting, reporting and implementation, with special emphasis on coaching and mentoring software development staff on the planning and execution of critical business initiatives. He/she will be highly skilled in customer and stakeholder relations; will have excellent knowledge of software development best practices and design principles; and a wide range of experience controlling and improving quality of service while reducing the overall cost of development through operational efficiencies.
Responsibilities will include, but not be limited to the following:
- Provides program and portfolio management support; prepares progress reports and updates steering committee/executive management; anticipates issues and ensure timely resolution.
- Coaches and mentor's senior and mid-level staff on the development of software engineering plans, and the identification deliverables and strategies for implementation of agile based software development projects. Must be expert in the analysis of interdependencies, identification of contingencies, and analysis and mitigation of risk in software development projects.
- Leads the design and implementation of enterprise scale software solutions that operate in high performance distributed systems
- Works with solutions team and customers to understand system/software requirements and develop design and implementation solutions that meet business objectives
- Formulates and presents architecture and designs for internal and external customer review
- Participates in and provides oversight of agile development teams. Ability to Mentor development and support teams by guiding SOA development standards and insights into system architecture at a departmental and enterprise level alike.
- I mplements Agile based solutions within a DevOps compliant framework (to include the use of a fully integrated continuous delivery framework).
- Anticipates and prevents problems and roadblocks before they occur; presents technical issues and their impact to management with recommendations for solution.
- Ability to effectively drive innovation and continuous process, service improvement.
- Prescribes test methods, ensures quality of test execution, and ensures that configuration management processes are implemented appropriately and efficiently.Master's degree in Computer Science or Computer Engineering and 10-15 years of related experience. Familiarity with Github, JIRA, Jenkins, Rally, IBM Rational Suite, Version One or similar Application Lifecycle Management suites
- Ability to lead projects to produce scalable, flexible, robust and efficient solutions with modern distributed technologies (SOA (REST and SOAP), microservices, BPM and distributed/clustered database such as Oracle RAC database.
- Ability to design and develop required models and designs for such solutions (process modeling, DB modeling, orchestration models, interface definitions, WSDLs, XSD, security policy, etc.
- Ability to provide written high level and detailed design documents.
- Understanding of governance and policy concepts and ability to create processes and policies and establish governance infrastructures.
- Ability to collaborate with Developers, Program Managers, Testers, and Production Support Engineers to implement innovative technical solutions via iterative approach reducing time to delivery.
- Ability to set clear goals and lead collaborative achievements.
- Skilled in Agile software development (SAFe certified desirable)
- Strong communication skills
- Capacity to work in a fast paced and dynamic environment
- CMMI Level 2, 3 program implementation experience
- Ability to build and maintain positive working relationships with all stakeholders to ensure program success.
U.S. citizenship and Secret clearance is required. Top Secret preferred. Program will be headquartered in the Northern Virginia/National Capital Region.