Senior Software Engineer
Mastercard
Mastercard
Mastercard is a global leader in the payments industry, committed to building an inclusive digital economy that benefits everyone. Our mission is to make transactions safe, simple, smart, and accessible worldwide. Join our Payments Network Technology team as a Senior Software Engineer to drive performance, resilience, and chaos engineering for our critical payment network services.
This role is pivotal in establishing robust testing strategies, executing controlled experiments, and significantly improving the capacity, recovery, and overall operational behavior of our systems. You'll be instrumental in ensuring the stability and efficiency of the services that power economies across 200+ countries.
Key responsibilities include defining comprehensive performance, scalability, resilience, and chaos-testing strategies. You will design and execute various experiments such as load, stress, endurance, and failover testing. Analyzing latency, throughput, resource consumption, and identifying bottlenecks are crucial aspects of this role.
Furthermore, you will collaborate with engineering and operations teams to establish clear service-level objectives and production-readiness criteria. Automating performance and resilience tests, integrating them into delivery pipelines, and documenting findings to prioritize risks and track remediation are also essential duties. You'll promote best practices for capacity planning, observability, and failure-mode validation, while guiding junior team members and independently managing complex tasks.
We are seeking candidates with proven experience in performance engineering, utilizing tools like JMeter, LoadRunner, or Gatling. Hands-on expertise with Java, Dynatrace, and Java Microbenchmark Harness (JMH) for application profiling and analysis is required. A strong understanding of distributed systems, microservices, APIs, messaging, databases, cloud platforms, and observability is essential.
Additionally, experience with resiliency patterns, failover strategies, capacity analysis, and controlled chaos experiments is necessary. You must possess the ability to interpret system metrics and effectively communicate actionable insights. A Bachelor's degree in Computer Science, Information Technology, Engineering, or a related field, or equivalent practical experience, is required. Experience in Agile environments and a solid grasp of the software development lifecycle are also important.
MasterCard
Financial Services