Lead Software Engineer
- Published on
Our Purpose
Mastercard powers economies and empowers people in 200+ countries and territories worldwide. Together with our customers, we are building a sustainable economy where everyone can prosper, supporting a wide range of digital payment choices that ensure secure, simple, smart, and accessible transactions.
Title and Summary
Position: Lead Software Engineer
Department: Mastercard Builders' Enablement Program
Overview:
The Mastercard Builders' Enablement Program has an exciting opportunity for a Lead Software Engineer. As part of Mastercard's Team ONE, we empower over 6000 Engineers globally by providing a great developer experience that enables teams to deliver innovative payment solutions for millions of customers.
Key Responsibilities
In this role, you will:
- Design and implement microservice capabilities in Java
- Develop high-quality, secure, scalable, and maintainable software solutions
- Apply best practices for automated testing, automated code quality, automated delivery, and monitoring
- Mentor junior engineers through technical advice, documentation, and code reviews
- Collaborate with Leads, Developers, and Product Owners to ensure timely delivery of business value
- Work with a cross-functional and geographically distributed team to enhance our developer experience
- Ensure adherence to Mastercard Engineering Principles, standards, and security guidelines
- Participate in the Software Engineering Guild to share knowledge and best practices
Required Skills
- 10+ years of experience in OOP/OOAD with Java JDK 8 or higher; knowledge of Go is a plus.
- Proficient in Tomcat, Spring Boot, Spring Security, Hibernate, REST microservices architecture.
- Experience with Kubernetes and container technologies.
- Knowledge of Design Patterns and Enterprise Integration Patterns.
- Familiarity with SQL, multithreading, message queuing, and distributed systems.
- Experience with cloud platforms (Azure, AWS, GCP) including understanding their security and networking features.
- Expertise with Junit or automated unit testing frameworks.
- Familiar with alerting and monitoring solutions (e.g., Splunk, Dynatrace).
- Proficient in Git and Jenkins.
- Knowledge of secure software development practices (e.g., PCI DSS, GDPR).
- Performance testing experience (e.g., JMeter, Gatling).
- Automation of processes for improving developer efficiency.
Education
A Bachelor's degree in Information Technology, Computer Science, Electrical, or equivalent engineering stream is required.