Skip to content
mimi

Senior Software Engineer; Java

Mastercard

Vancouver · On-site Full-time Senior CA$111k – CA$160k/yr 1w ago

About the role

Position

Senior Software Engineer (Java)

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

Senior Software Engineer (Java)

Overview

At Mastercard Cyber & Intelligence Solutions, we lead the industry in providing artificial intelligence for mission critical decision making. Our world‑class software operates at scale to detect and inform in real‑time, across tens of thousands of events per second. We are looking for a talented and passionate Senior Software Engineer to join our team in our Vancouver office.

Are you happiest when you’re taking all the pieces and making them work together without a hitch with rock‑solid code?
Would you like to build across the full range of functionality of our global infrastructure as well as get opportunities to do technical design and architecture?
Are you excited about creating efficient tools and streamlined development experiences for our team?

Role

You will be a key member of our growing team, which is responsible for increasing service stability, adding application insights, enhancing deployment processes, and improving our products.

  • Implement solutions that solve complicated challenges around performance, scaling, and security while instrumenting services to provide high quality insight into emerging issues
  • Design and develop applications, system to system interfaces and complete software solutions, perform vendor‑related activities, and create documentation such as user guides and software development guides
  • Refine and enhance the development process used within our teams to drive improvements to development efficiency
  • As a developer, you will manage your own time when accomplishing project goals and are encouraged to grow your skills with continual learning, workshops, conferences, and talks. Leadership is technical, meetings are short.
  • As an operator, you will manage colonies of servers across multiple environments and regions, deploying updates, migrating databases, and architecting self‑healing infinitely scaling services

All About You

A qualified candidate will be required to show proficiency in the following key areas:

  • Demonstrated software development experience in a professional development setting Java experience, or experience with at least one language such as JavaScript, Java, C#, C++, Python, or Scala with some prior experience with Java
  • Knowledge of testing frameworks and source control systems (Git)
  • Experience designing, developing, and implementing scalable and resilient restful API services
  • Experience with building and managing software packages and/or server images
  • Experience in managing servers, networks, and infrastructure with broad knowledge of the following: Linux, networking, servers, virtualization, security, availability, resiliency, redundancy, alerting, and monitoring
  • Familiarity with building scalable distributed data processing and visualization tools
  • Strong problem‑solving, algorithm design, and complexity analysis skills
  • Exceptional communication, both written and spoken

Helpful To Have

  • Experience writing documentation and creating diagrams
  • Experience working with cloud‑based server environments
  • Experience with AWS services such as EC2, S3, RDS, Kinesis, SQS, SNS, etc. or other cloud providers
  • Familiarity with infrastructure as code tools, such as Cloud Formation or Terraform
  • Familiarity with Dev Ops tools such as Packer, Vagrant, Vault, and Consul
  • Familiarity with monitoring tools such as Graphite, Influx, Statsd, Kibana and Logstash
  • Familiarity with databases, such as Redis, Cassandra, Elasticsearch, MySQL, or Postgres
  • Bachelor of Computer Science, equivalent degree or equivalent work experience
  • An interest in fraud detection and security

Pay Range

Canada - $111,000 - $160,000 CAD

Mastercard is a merit‑based, inclusive, equal…

Requirements

  • Demonstrated software development experience in a professional development setting Java experience, or experience with at least one language such as JavaScript, Java, C#, C++, Python, or Scala with some prior experience with Java
  • Knowledge of testing frameworks and source control systems (Git)
  • Experience designing, developing, and implementing scalable and resilient restful API services
  • Experience with building and managing software packages and/or server images
  • Experience in managing servers, networks, and infrastructure with broad knowledge of the following: Linux, networking, servers, virtualization, security, availability, resiliency, redundancy, alerting, and monitoring
  • Familiarity with building scalable distributed data processing and visualization tools
  • Strong problem-solving, algorithm design, and complexity analysis skills
  • Exceptional communication, both written and spoken

Responsibilities

  • Implement solutions that solve complicated challenges around performance, scaling, and security while instrumenting services to provide high quality insight into emerging issues
  • Design and develop applications, system to system interfaces and complete software solutions, perform vendor-related activities, and create documentation such as user guides and software development guides
  • Refine and enhance the development process used within our teams to drive improvements to development efficiency
  • As a developer, you will manage your own time when accomplishing project goals and are encouraged to grow your skills with continual learning, workshops, conferences, and talks.
  • As an operator, you will manage colonies of servers across multiple environments and regions, deploying updates, migrating databases, and architecting self-healing infinitely scaling services

Skills

C#C++EC2ElasticsearchGitInfluxJavaJavaScriptKibanaKinesisLambdaLogstashMySQLPackerPostgresPythonRDSRedisScalaS3SNSSQSStatsdTerraformVaultVagrant

Don't send a generic resume

Paste this job description into Mimi and get a resume tailored to exactly what the hiring team is looking for.

Get started free