Mastercard logo

Principal Software Engineer

Mastercard
NewPosted this week

LOCATION

Pune · Onsite

EXPERIENCE

Not specified

TYPE

FullTime

SKILLS REQUIRED

Distributed SystemsSystem ArchitectureMicroservices ArchitectureJavaKubernetesApache Kafka

Job description

Overview

Principal Software Engineer on the Switching Gateway team, which provides a single payment connection supporting Mastercard and non-Mastercard branded financial transactions. The role leads architecture and design of large-scale distributed systems and drives technical direction across products and services.

What you'll do

  • Lead architecture and design of large-scale distributed systems serving millions and billions of transactions.
  • Design and build shared common reusable libraries and components.
  • Drive engineering decisions across multiple products, services, and business domains.
  • Define long-term technology strategy, architecture standards, and platform roadmaps.
  • Evaluate trade-offs across scalability, resiliency, performance, security, maintainability, and cost.
  • Establish engineering patterns, frameworks, and reference architectures for enterprise adoption.
  • Work on complex enterprise-wide initiatives spanning multiple services/programs and drive resolution.
  • Work with business/product owners to architect and deliver new services, products and bundles.
  • Drive the architectural design, including dependent services, service interactions, and policies.
  • Take ownership to improve the customer experience of an entire set of services/applications sold as products or bundled services.
  • Simplify and improve the cost/benefit of a function/service/architecture strategy.
  • Apply judgment and experience to balance trade-offs between competing interests.
  • Venture beyond comfort zone to take on assignments across different areas of Software Engineering.
  • Take on organization-wide and public speaking engagements and publish white papers and blogs on relevant and emerging technical topics.
  • Consult across teams and across program lines to identify synergies and reuse opportunities.

What you'll need

  • Designed and developed highly available, fault-tolerant, and geographically distributed systems.
  • Solved complex consistency, replication, concurrency, caching, and data partitioning challenges.
  • Designed and developed systems capable of operating at massive scale with near-zero downtime.
  • Driven an architecture review for critical applications and infrastructure platforms.
  • Led capacity planning, performance engineering, and resiliency initiatives.
  • Demonstrated mastery across the technology stack: programming language Java/Go; Layer 7 protocols (HTTP/REST/gRPC/API Gateway); messaging systems (Kafka, Pulsar, RabbitMQ, Solace); Kubernetes, Service Mesh and Microservices; databases (SQL/NoSQL/NewSQL/Datawarehouse); operating systems; networking (TCP/IP, DNS, Load Balancing); storage systems; compute, memory and I/O subsystems.
  • Understand system behaviour from application requests through network, storage, and hardware layers.

Nice to have

  • Java as the preferred programming language.

Details

  • Location: Pune, India.

Read the full description and apply on the company’s own careers page.

Stay safe

Hiring on Abekus is free for applicants

We never charge a fee, and employers are prohibited from doing so. If a recruiter asks for payment, please report them right away.

Principal Software Engineer