Johnson Controls International (JCI) is seeking a Senior Software Engineer to join our AI Engineering team. This is a hands-on, full-stack role focused on building the front-end and back-end application layers that enable AI teams to deliver enterprise solutions.
You will work alongside AI engineers, data scientists, platform engineers, product teams to move AI use cases from proof of concept into secure, scalable and supportable products. You will build user interfaces in Blazor and React, develop APIs and services in .NET and Python, and integrate applications with generative AI, retrieval-augmented generation (RAG), agentic workflows and enterprise data services.
This role suits an experienced software engineer who understands that successful AI products require more than a model: they require strong application architecture, thoughtful user experience, robust integration, security, observability, testing and disciplined software delivery.
As this is a Cork-based hybrid role requiring attendance in the office three days per week, candidates who are not currently based in Cork or the surrounding area would be expected to relocate.
Full-stack application engineering
Design, build and maintain production-grade web applications that expose AI capabilities through clear, responsive and accessible user experiences.Develop component-based front ends using C#, Razor/Blazor, CSS and JavaScript, applying responsive design, accessibility and reusable design-system patterns.Build secure back-end services and REST APIs using C# and .NET, with Python services where required for AI and data integration.Design application boundaries, contracts and integration patterns across front ends, APIs, AI services, data stores and enterprise platforms.Implement authentication, authorisation, input validation, error handling, auditability and secure management of secrets and configuration.Improve performance, reliability and maintainability through profiling, caching, asynchronous processing and sound engineering patterns.AI application development
Integrate applications with Azure OpenAI and other approved model endpoints, Azure AI Foundry capabilities, AI Search, vector stores and enterprise APIs.Build application experiences for conversational AI, enterprise search, document intelligence, summarisation, recommendations and AI-assisted workflows.Implement streaming responses, citations and source attribution, structured outputs, tool calling, conversation state and human-in-the-loop controls.Collaborate with AI engineers on RAG and agentic solutions, translating model or workflow capabilities into well-designed user-facing features.Implement practical safeguards including prompt and output validation, content filtering, access controls, graceful fallback and clear user feedback.Measure and optimise end-to-end quality, latency, reliability and cost, including the application behaviour around non-deterministic AI responses.Software delivery and operational excellence
Own features through design, implementation, code review, automated testing, deployment, production support and continuous improvement.Create unit, component, integration, contract and end-to-end tests using TypeScript, PowerShell and C# where appropriate, including test strategies for AI-enabled and streaming user journeys.Build and maintain CI/CD pipelines in Azure DevOps, applying quality gates, environment configuration and repeatable release practices.Containerise applications and deploy to Azure services such as App Service, Azure Functions, Azure Container Apps or AKS, as appropriate.Instrument applications with logs, metrics, traces and usage telemetry; diagnose production issues and participate in incident response and root-cause analysis.Contribute to secure coding, accessibility, privacy, Responsible AI, architecture and engineering standards across the AI application portfolio.Technical leadership and collaboration
Work closely with product owners and stakeholders to turn ambiguous business needs into measurable, testable software requirements and incremental delivery plans.Provide technical direction through solution design, architecture discussions, code reviews and pragmatic trade-off decisions.Mentor engineers in full-stack design, software quality, AI integration and production engineering practices.Create reusable components, reference implementations and development patterns that help multiple AI teams deliver consistently.Communicate technical risks, dependencies and options clearly to engineering and non-technical stakeholders.What we look for