Senior Software Engineer – AI
The National Fire Protection Association’s mission is to help save lives and reduce loss with information, knowledge, and passion. Established in 1896, we are dedicated to the elimination of death, injury, and property and economic loss due to fire, electrical, and related hazards. The Association delivers information and knowledge through more than 300 consensus codes and standards, research, training, education, outreach and advocacy; and by partnering with others who share an interest in furthering the NFPA mission.
To better meet the needs of those who rely on our information and knowledge to keep people and property safe, we are amidst a transformation to expand our influence and further our safety mission. We are becoming increasingly digital and global to grow, thrive, and save more lives from fire, electrical, and other hazards. To accomplish this, we need effective leaders at all levels of the Association who understand what we are striving for, why it is important, and how to execute our vision and who passionately want to see NFPA through this important stage. It is an exciting and empowering time to work at NFPA.
To support NFPA’s growing business needs and digital transformation, the Senior Software Engineer – AI is responsible for developing, maintaining, and enhancing CASI, NFPA’s AI system, and other related AI systems and the applications that leverage them. This role participates throughout the software development lifecycle and collaborates with software developers, business analysts, architects, vendors, partners, and teams across the organization.
The position requires senior-level technical expertise in generative AI, Microsoft technologies, Azure cloud services, application architecture, and software engineering to deliver scalable, reliable, and maintainable solutions that support NFPA’s mission and organizational goals.
Primary Duties/Responsibilities
- Design, develop, test, maintain, and improve AI systems and web-based business applications.
- Develop and support generative AI solutions, including RAG systems, agentic workflows, tool calling, agents and skills, prompt and context engineering, MCP servers, vector databases, semantic search, and large-scale document ingestion and retrieval.
- Integrate software systems, application components, and third-party programs.
- Collaborate with software developers, business analysts, software architects, vendors, and other stakeholders to plan, design, develop, test, and maintain applications.
- Apply application architecture knowledge to guide technical decision-making and problem-solving.
- Design and implement observable, high-throughput RESTful APIs and integrations.
- Produce clean, efficient, well-designed, and testable code based on established specifications and standards.
- Design, develop, and unit test applications in accordance with established development standards.
- Participate in code reviews and mentor and assist other developers in applying software development best practices.
- Analyze, troubleshoot, and resolve technical and application issues.
- Develop and maintain technical documentation to support current and future software development projects.
- Work effectively within legacy application architectures when required.
- Collaborate across teams to meet changing priorities and deadlines while proactively identifying issues and developing long-term solutions.