Software Engineer II

Mastercard · O'Fallon, Missouri

onsitefull-time3-6 years

posted 22h

Our Purpose Mastercard powers economies and empowers people in 200+ countries and territories worldwide. Together with our customers, we’re helping build a sustainable economy where everyone can prosper. We support a wide range of digital payments choices, making transactions secure, simple, smart and accessible. Our technology and innovation, partnerships and networks combine to deliver a unique set of products and services that help people, businesses and governments realize their greatest potential. Title and Summary Software Engineer II Overview The Mastercard Authentication Program owns how consumer authentication works across both in-store and e-commerce use cases. This role contributes to building and operating best-in-class authentication products such as ID Check, Token Authentication Service, and Token Authentication Framework, driving adoption, scale, and revenue growth. This position sits at the intersection of Site Reliability Engineering, platform engineering, and release engineering, ensuring our platforms are scalable, resilient, secure, and production-ready across hybrid environments (Kubernetes, cloud, and on-prem). As a Software Engineer II, you will contribute to building scalable backend services using Java/Spring and modern user interfaces using Angular and Node.js within a distributed architecture. You will support end-to-end delivery including solution design, development, testing, deployment, and production support while adhering to engineering best practices for code quality, security, performance, and reliability. Working closely with cross-functional teams, you will help deliver production-grade solutions and continuously improve your skills across cloud platforms, DevOps practices, observability, and software architecture. You will also leverage AI-assisted development tools to enhance productivity and support multiple phases of the software development lifecycle. Role In this role, you will: • Design, develop, and own Java-based backend services and REST APIs in a distributed architecture. • Build and enhance UI applications using Angular and Node.js. • Own end-to-end delivery including solution design, development, testing, deployment, configuration, documentation, and operational support. • Participate in technical design sessions, architectural reviews, and solution planning to help deliver scalable, resilient, secure, and maintainable software solutions. • Ensure high-quality code through peer code reviews, automated testing, and adherence to engineering standards and best practices. • Design, develop, and maintain unit, functional, and integration tests to ensure software quality and reliability. • Apply secure coding standards and security best practices throughout the software development lifecycle, proactively identifying and remediating vulnerabilities. • Drive engineering best practices including clean architecture, performance optimization, resiliency, scalability, and observability. • Analyze application and system performance, identifying opportunities for optimization and scalability improvements. • Troubleshoot complex production issues, perform root cause analysis, and implement corrective actions to improve platform stability and operational excellence. • Collaborate with cross-functional teams to deliver high-quality software solutions that meet business and customer needs. All About You Requirements • Strong hands-on experience in Java, Spring Boot, and REST APIs. • Hands-on experience with Angular (2+) and Node.js. • Experience building and maintaining scalable, production-grade applications. • Strong problem-solving, troubleshooting, and debugging skills in distributed systems. • Solid understanding of software design principles, object-oriented programming, and software engineering best practices. • Understanding of software architecture concepts, design patterns, and scalable distributed application design. • Experience designing and executing unit, functional, and integ