Benjamin Cane

Expert in building highly resilient and performant payment systems, utilizing cloud-native technologies and practices to pioneer the future of payments.

About Me

Highly skilled software engineer and technical leader with a track record of delivering innovative solutions and driving the adoption of new technologies. Expert in building highly resilient and performant systems, with a deep understanding of cloud-native technologies and practices. Led the development of payment platforms at American Express, overseeing the design, implementation, and maintenance of systems that support the company's payment network and acquirer systems.

Authored a book on Linux and contributed to several open-source projects, demonstrating a solid commitment to sharing knowledge and advancing the technology skills of others. I am skilled in leading and mentoring teams and experienced in driving the delivery of high-quality solutions that meet business needs.

Primary Skills
Linux

Golang

Docker

Distributed Systems Architecture

High Availability

Tech Cred

Talks

Certifications
  • Certified Ethical Hacker - ECC91025263101
  • Red Hat Certified Engineer v6.3 - 130-202-203
  • Red Hat Certified Engineer v5 - 805010637645961

Awards and Recognition
  • American Express Edward P. Gilligan Award for Innovation - 2021
  • American Express Technology Excellence - 2014

Career

American Express

Distinguished Engineer | 08/2021 - Present

As a Distinguished Engineer at American Express, I lead a small team of highly skilled staff and principal engineers in developing and maintaining the payment platforms that support the company's payment network and acquirer systems. My primary focus is to design and implement highly performant and resilient cloud-native applications and infrastructure that enable future payment capabilities. This includes driving the adoption of cloud-native technologies and practices across the enterprise.

Golang Redis Envoy GitHub Actions Docker gRPC Postgres Prometheus


Principal Engineer | 03/2018 - 08/2021

As a Principal Engineer, I am a Vice President level Engineer for the Card Payment Network. I am responsible for designing and building the core transaction payment switch. As well as the infrastructure and software platform that enables feature teams. My focus is to build performance and resiliency within the core payment network.

  • Providing mentorship to Junior and Senior Engineers through one-to-ones and internal meetups
  • Driving the design of a micro/macro services and cloud native transaction processing platform. This platform must support millions of transactions with less than 100ms response times.
  • Working with infrastructure teams to build a platform designed for availability and performance
  • Creating specialized transaction routing and load balancing applications in Golang
  • Spearheading the adoption of a Service Mesh using open source tools such as Consul and Envoy
  • Driving the adoption of gRPC and HTTP/2 within the core platform
  • Pushing the adoption of application metrics collection via Prometheus
  • Contributing to the creation of company wide Cloud Native practices and frameworks
  • Senior member of the Jedi Council. An internal group of engineers hand picked by the CIO to advocate and drive engineering culture

Golang Redis Envoy Consul Docker Red Hat Enterprise Linux gRPC Couchbase Prometheus


Staff Engineer | 01/2016 - 02/2018

As a Staff Engineer, I was a Director level infrastructure and software engineer. I led a small team of 4-6 highly skilled Sr. Engneers who were acting in the capacity of an Architecture team. I was responsible for driving DevOps principles within the mission critical platforms team. I also owned the architecture for several applications within the Card Authorizations Network.

  • Drove the adoption of the Drools Rules Engine for ATM transaction post processing
  • Pushed Software Engineering best practices such as the adoption of Git Flow and TDD
  • Helped create a Continuous Integration and Delivery solution using Jenkins and Docker
  • Created an "infrastructure as code" based application deployment system using Docker and Saltstack
  • Drove the creation of a transaction tracing capability using Splunk and Syslog
  • Led a team evaluating programming languages for our core card payment network. Comparing C++, Java, Golang and Node.js
  • Drove a practice of hands-free automated functional testing with developer notifications via Slack
  • Member of an internal "High Speed Engineer" group. A group of selected engineers focused on pushing Open Source within American Express.

Red Hat Enterprise Linux CI/CD Saltstack Python Splunk Docker


Lead Technical Architect | 10/2011 - 01/2016

As a Lead Technical Architect, I was a Infrastructure Architect. I was part of the mission critical platforms team. I was responsible for infrastructure running Card Authorizations and Manage File Transfer capabilities. Both of these platforms had availability requirements of 99.999% or higher.

  • Designed a new internal hosting solution for the managed file transfer capability
  • Evaluated several clustered/distributed filesystems choosing GPFS which enabled cross data-center clustering. This filesystem enables synchronous file writes across two data-centers
  • Created several Highly Available Oracle database platforms using Oracle RAC and Golden Gate
  • Evangelized the use of configuration management solutions such as SaltStack & Puppet
  • Led the introduction of Splunk into the monitoring ecosystem for mission critical platforms
  • Drove the design of an automatic DNS and IP based site failover for the Card Authorizations API
  • Leader of several tiger teams focused on tuning and resolving long standing issues. This included identifying Java performance issues and redesigning our Oracle database replication architecture

Red Hat Enterprise Linux Oracle RAC Saltstack Python Splunk Puppet vmWare


Stratus Technologies

Global Support Engineer - Team Lead | 08/2007 - 10/2011

Stratus is a company that specializes in Continuous Availability. I was a Sr. Systems Engineer within the specialized Managed Services group. Our goal, was to keep our customers mission critical Linux and ESX systems always online.

  • Team Leader to several Engineers Level 1-4
  • Led the creation of runbooks for server provisioning and application/server troubleshooting
  • Was responsible for building custom deployments for clients based on their unique needs
  • Enhanced the system provisioning process by introducing Kickstart
  • Was a Escalation point for critical on-call issue resolution
  • Primary engineer for bi-annual system performance tuning efforts

Red Hat Enterprise Linux Oracle RAC Perl Kickstart vmWare


IPOWER

Systems Engineer | 09/2004 - 08/2007

IPower was a startup Web Hosting company with over one million domains by the time it was acquired. I was a Systems Engineer with a split role. I was part of the NOC Engineering team but spent about 50% of my time responsible for Special Projects.

  • Designed a Highly Available, Database backed DNS system using Solaris Zones, PowerDNS & MySQL
  • Managed over 5,000 production FreeBSD, Linux and Windows servers as part of the NOC team
  • Wrote several Perl & BASH scripts to enhance Security and Performance of the shared hosting environment
  • Implemented a PXE Boot & Golden Image provisioning system using NOC Monkey
  • Managed and Trained the Level III and outsourced Level II Technical Support Groups
  • Wrote a custom knowledge base in PHP & MySQL

FreeBSD Solaris Apache HTTPD MySQL PHP Perl Bind Qmail


Open Source Projects

Automatron

Automatron is an Open Source project of mine written in Python. It is a framework for creating self-healing infrastructure. It allows users to define health checks (Nagios compatible) that are run against a host. When these health checks fail, Automatron will perform actions to correct the issue.

Source

Tarmac

Tarmac is a cloud-native microservice framework that allows users to write business logic in a variety of languages using WebAssembly (WASM). It abstracts the complexities of building distributed systems, allowing users to focus more on business logic and less on boilerplate code. It is unique in that it is language agnostic, meaning it can support multiple languages such as Rust, Go, JavaScript, and Swift.

Source

TestCerts

A Go package for creating temporary x509 test certificates. There are many Certificate generation tools out there, but most focus on being a CLI tool. This package is focused on providing helper functions for creating Certificates. These helper functions can be used as part of Go tests per the example below.

Source

Tasks

Tasks is an easy to use in-process scheduler for recurring tasks in Go. Tasks is focused on high frequency tasks that run quick, and often. The goal of Tasks is to support concurrent running tasks at scale without scheduler induced jitter.

Source