Lead Back-End Engineer, Payments
Blockchain.com is the world's leading software platform for digital assets. Offering the largest production blockchain platform in the world, we share the passion to code, create, and ultimately build an open, accessible and fair financial future, one piece of software at a time.
We are looking for an experienced Lead Software Engineer to join the Payments team. This role will be building distributed event driven services to integrate new payment methods, reduce latency, and increase payment success rates. You’ll work with different FIAT partners, work on different banking systems, build the code and clients of multiple payment rails. The ideal candidate has strong knowledge of distributed systems design, is proficient in coding on the JVM (one of Java, Kotlin, Scala), understands the importance of scalability and reliability and has experience integrating some FIAT payment methods.
Our engineering teams are involved in all aspects of the product lifecycle, from idea generation, design, prototyping, planning, execution, shipping and monitoring. We are looking for software engineers who care about the customers, software excellence, are advocates of best practices and love learning new skills.
WHAT YOU WILL DO
- Expand our rapidly growing user base of 75M+ wallets to reach 1B+ customers.
- You will work on real-time, latency-critical infrastructure for Payment processing and monitoring.
- Build specific payment method integrations (Cards, Open Banking, Wire transfers, GBP Fast Transfer, ACH, SEPA, Crypto, .. ); we integrate directly or via partners to the payment networks.
- Be a part of a dedicated engineering team committed to quality improvements, iterating on products that directly impact millions of users.
- Build scalable services with Kotlin, and deal with problems like synchronization, asynchronous operations, database optimisations, scalability and reliability of systems.
- You will build and maintain an in-house framework to integrate multiple banking partners and payment methods
- The Payments engineering team is building the next generation of our internal framework and you’ll be part of it.
WHAT YOU WILL NEED
- Having previous experience working in an An Electronic Money Institution (EMI) is a mandatory requirement.
- You know at least one programming language in depth.
- You have at least one year of experience in any JVM based languages (such as Java, Kotlin, Scala) and are confident in your ability to build, debug and ship microservices.
- You have experience building and shipping highly-available, fault tolerant, production ready distributed backend systems.
- Knowledge of at least how one of these payment methods works is preferred: Cards, ACH, SEPA, Wires. Fast Transfer
- Experience integrating payment partners in the backend is preferred.
- You actively participate in creating product and software specifications before implementing them.
- You pride yourself on consistent high levels of test coverage, strong technical documentation and effective monitoring.
- You inspire other engineers to do better.
- Understanding of data structures, databases and large-scale distributed systems.
- Preferably exposure to technologies such as Kafka, PostgreSQL, Redis, RabbitMQ.
- You are customer focused and continuously suggest how the backend can provide the best Customer Experience.
- A passion for crypto and the transformations it enables.
- We use Kotlin, PostgreSQL, Kafka, Redis, Datadog, Amplitude, Grafana, BigQuery, ApacheSpark and more.
COMPENSATION & PERKS
- Unlimited vacation policy; work hard and take time when you need it.
- Unlimited learning policy; order the technical resources you need or simply pick something up from our company library.
- Apple equipment.
- Full-time salary based on experience and meaningful equity in an industry-leading company