Senior Software Engineer – Disputes
Summary
Senior Software Engineer on the Disputes technology team in Dublin, designing and evolving scalable, secure backend systems that support the end-to-end dispute lifecycle (initiation, workflow, resolution, arbitration) for critical financial workflows. Focus is on architecture and system design using Java/Spring Boot, microservices, event-driven patterns, REST APIs, and cloud-native tooling (AWS/Az
- We are seeking a Senior Software Engineer to join our Disputes technology team, responsible for designing and evolving the systems that support the end-to-end dispute lifecycle.
- This role focuses on building scalable, resilient, and secure platforms that deliver critical financial workflows while ensuring high availability, regulatory compliance, and excellent customer experience.
- The role emphasizes system design, architecture, and software engineering expertise over manual coding.
- You will be responsible for translating business requirements into robust technical solutions, applying proven software design principles and architectural patterns to solve complex problems in a distributed systems environment.
- You will design and enhance backend services, APIs, workflows, and event-driven systems that support dispute initiation, workflow progression, resolution, and arbitration. Working closely with Product, Architecture, and Platform teams, you will contribute to technical designs, review solutions, and ensure systems are scalable, maintainable, observable, and operationally resilient.
- You will apply modern engineering practices including CI/CD, automated testing, DevOps, observability, and operational excellence.
- The role also includes troubleshooting production issues, performing root cause analysis, and driving continuous improvements to system design and reliability.
- Candidates should have strong experience with Java (Spring Boot) or similar backend technologies, together with deep knowledge of software architecture and distributed systems. Experience designing microservices, event-driven solutions, and large-scale enterprise platforms is essential.
Technical Skills & Qualifications:
A strong understanding of software engineering principles and design patterns is required, including:
- Domain-Driven Design (DDD)
- Event-driven architecture
- CQRS and Event Sourcing
- Workflow and state-machine patterns
- Integration patterns
- Resilience and fault-tolerance patterns
- Cloud-native architectures
- Experience designing RESTful APIs, working with relational and NoSQL databases, and building highly available systems is expected.
- Knowledge of AWS, Azure, Kubernetes, observability, and monitoring practices is advantageous.
- The successful candidate will embrace AI-assisted software engineering, leveraging tools such as GitHub Copilot, Claude, Cursor, and similar technologies throughout the software delivery lifecycle. As AI increasingly accelerates implementation, this role places greater importance on architectural thinking, engineering judgment, software design expertise, and the ability to validate and refine AI-generated solutions to ensure quality, maintainability, security, and alignment with architectural standards.
- You are a self-motivated engineer with a strong sense of ownership and accountability, comfortable operating independently within complex distributed environments. You communicate effectively, collaborate well across teams, and are passionate about designing elegant, scalable, and resilient software solutions.
- A bachelor’s degree in computer science, Software Engineering, or equivalent practical experience is required.
- All activities involving access to corporate information must be performed in compliance with company security policies and standards.