
Senior Software Engineer (API, Fraud Platform)
Mastercard
Visa & sponsorship
- IE Critical Skills: this role is on the national occupation list. The posting doesn't state a salary we could check against the threshold.
Job description
-
We are hiring a Senior Java Software Engineer to join a Dublin-based engineering team working on Mastercard’s real-time decisioning platform. The team designs, builds and operates a high-performance, distributed, in-memory data caching layer that supports mission-critical transaction processing at global scale, with a strong focus on low latency, high availability and resiliency
-
This is a hands-on senior role for an engineer who enjoys working close to complex distributed systems, owning features end-to-end, and helping shape technical direction within a collaborative Agile team
-
End-to-end delivery — Own complex features and services across the full software development lifecycle: architecture, design, development, testing, deployment, rollback planning and documentation
-
Design & innovation — Design and implement high-performance, scalable and secure Java capabilities; apply advanced design patterns and API standards; produce high- and low-level design documentation to a professional standard
-
Independent problem-solving — Drive solutions for complex problems; debug and troubleshoot across multi-tiered systems, including core, heap and thread-dump analysis; design resilient solutions
-
Technical leadership & influence — Lead code, design and process trade-off discussions; drive adoption of coding standards and frameworks; review code, tests and automation produced by other team members
-
Release & delivery coordination — Support coordinated releases across a follow-the-sun, multi-region engineering model, including scope tracking, cross-team sign-offs and release execution
-
Operational excellence — Participate in on-call support; lead incident management, root-cause analysis and remediation; proactively improve performance and stability metrics
-
Stakeholder engagement — Contribute to prioritisation with Product and Business stakeholders; lead demos and acceptance discussions with Product Owners; report status and manage risks in owned service areas
-
Mentoring & knowledge sharing — Mentor less-experienced engineers, deliver knowledge-transfer and brown-bag sessions, and help build shared understanding across the team
-
Continuous improvement — Identify inefficiencies and drive automation of build, operate and run activities; research and evaluate emerging technologies and frameworks- Understanding of secure development practices (secure-by-design) and awareness of PCI-DSS considerations for handling payment card data
-
CI/CD proficiency — tools such as Jenkins and Maven; source control in a multi-developer, distributed environment
-
Familiarity with observability and monitoring tooling for alerting, dashboards and performance analysis
-
Shows initiative, takes on challenging opportunities, and demonstrates end-to-end ownership
-
Strong proficiency with modern Java (JDK 17 or later); distributed systems and multi-threading experience
-
Experience with distributed caching or in-memory data grid technologies (e.g. Apache Geode, Hazelcast, Redis, Coherence) is highly desirable
-
Expertise in JUnit or equivalent automated testing frameworks; designing test plans across unit, regression, performance and integration
-
Experience with Spring, Spring Boot, Hibernate, RESTful APIs, JSON; application servers (e.g. JBoss/Tomcat); Shell scripting
-
Solid experience with Linux, SQL and message-queuing systems, and with design patterns
-
Excellent written and verbal communication and strong cross-team, cross-geography collaboration
-
Passionate about Agile ways of working (SAFe / SCRUM), code quality and engineering best practices
-
Bachelor’s degree in Computer Science, Information Technology or equivalent work experience
-
Driven, highly motivated, strong team player. Fluency in English