Software Developer/ Engineer/ Architect

Lead Blockchain Software Development Engineer

Who is Mastercard?

Mastercard is a global technology company in the payments industry. Our mission is to connect and power an inclusive, digital economy that benefits everyone, everywhere by making transactions safe, simple, smart, and accessible. Using secure data and networks, partnerships and passion, our innovations and solutions help individuals, financial institutions, governments, and businesses realize their greatest potential.

Our decency quotient, or DQ, drives our culture and everything we do inside and outside of our company. With connections across more than 210 countries and territories, we are building a sustainable world that unlocks priceless possibilities for all.

Overview

Mastercard is looking for a talented Lead Software Development Engineer to join the Mastercard Blockchain & Digital Asset team in our New York City location. In this role you will be part of a highly agile team building exiting and innovative products delivered at scale to global markets.

Our team is built on a foundation of research and development, mining innovation internally, innovating new product lines with emerging technology, managing new products from inception to market validation and engaging strategically with start-ups to shape the future of commerce with and for our customers. At Mastercard you will help define the future of commerce globally.

This team will have a diverse focus both in terms of geography and variety of technology challenges driving hard to bring innovative payment solutions to market.

Role

This role is the lead blockchain software engineer that involves working with a team of talented engineers to develop high performance blockchain based solutions. The role would be categorized into these broad areas

Engineer

• Responsible for the analysis, design, and development of software solutions

• Contribute to the requirements for new applications and customizations, adhering to standards, processes, and best practices

• Ensure quality of one or more application codebases and alignment with development standards

• Applies technical capabilities within own discipline to coach and develop junior employees

• Designs highly complex applications, interfaces and integrations

• Integrates at an enterprise level using third-party middleware or messaging products, or by designing and implementing custom interfaces and mapping for those interfaces

• Responsible for performance engineering of the enterprise software architecture, and providing functional guidance, advice, and/or training to other application developers

• Software development, code reviews and day-to-day support duties

Architect

This aspect of role requires working with Engineering lead and architects

  • To lead the architecture, design and development of software systems and applications for a given module or workstream. These solutions & software targeted towards a clients’ specific needs or create products geared for Mastercard.
  • Present options, pro’s/con’s for various aspect of design choices to technical standards, such as platforms and coding standards.
  • Collaborate to product teams to understand the requirements, identify solution and propose ideas
  • Engage with external customers to represent engineering, alongside engineering lead or lead architecture discussion with customers.
  • Evaluate and present options/pro’s/con’s analysis of build vs buy solutions
  • Document the overall systems/application architecture, help create high level design and provide guidance to the engineering team on low level design

Project Lead

  • This aspect of role requires working with Engineering lead and architects
  • Lead workstream or a given module
  • Helps with the scope of the project, assigning tasks to the team, creating a timeline for the project and working with engineering lead doing the estimation of effort
  • Engage with partner organization in ensuring that proposed solution meets the corporate standards in creating & operating the applications
  • Collaborates with multiple engineering team to achieve the overall objective of the proposed solution

Thought Leadership/Mentoring

  • Build relationships with technical peers across organization with a focus on our Enterprise Architecture (EA) relationship; socialising new technologies with EA and bringing EA technology and updates back to the group.
  • Maintain the common tech stack and integration components. Design a tech stack and blueprints for simplified transitions. Align coding conventions with EA e.g. naming conventions, logging formats.
  • Develop and maintain common tools and services for use by the global Blockchain teams.
  • Work with Information security and Infrastructure teams to help design infrastructure/cloud environments and a secure application architecture utilizing blockchain technology
  • Work with external partners as needed to design or review architectures (e.g. Microsoft).
  • Investigate new technologies and architectural domains and apply to Labs projects.
  • Provide updates and technical talks to the global blockchain & digital asset engineering teams.
  • Promote continuous improvement through tooling and process refinement.
  • Researches and evaluates tools and acquisition opportunities to support cross-domain needs

• Proficiency with Java JDK 8 or greater.

• Experience of Tomcat, Spring, Spring Boot, Shell Scripting, JSON.

• Experience with Docker, Kubernetes or other container orchestration solutions.

• Expertise in Junit or other automated unit testing frameworks.

• Expertise in CI/CD principles and tools such as Jenkins, Gradle, Maven.

• Expertise in Source Control Management and working with code in a multi-developer

• Experience with a UI framework such as Angular a plus

• Proficiency with either Besu/Quorum/or R3 technology (Corda and CENM)

• Expertise in cryptography and encryption functions

• Expertise in creating distributed, multi layered, service oriented architecture for global applications that are payment/transaction based.