Description
We are looking for a Software Engineer to join the Payment Interfaces team at Block. The team builds and operates the APIs and services that power payment experiences across Block, including Square, Cash App, and Afterpay.
As a Software Engineer on this team, you will design, build, and scale customer-facing payment APIs and the critical systems behind them. You will bring experience in payments, lead complex projects from design through production, and help shape the team's technical direction.
Responsibilities:
- Design, build, maintain, and scale customer-facing payment APIs with clear contracts, predictable behavior, and compatibility that developers can rely on.
- Lead complex projects end to end: clarify requirements, evaluate trade-offs, plan incremental delivery, and own testing, rollout, and ongoing maintenance.
- Operate critical payment systems serving worldwide traffic. Participate in the team's on-call rotation, investigate incidents, and follow through on fixes that improve reliability.
- Improve performance, observability, fault tolerance, and security. Use automation to reduce repetitive operational work and make systems safer to change.
- Work with product and engineering partners across Block to turn payment requirements into reusable capabilities.
- Use AI-assisted tools for design, implementation, testing, and debugging. Critically evaluate their output and help teammates adopt approaches that improve quality and delivery.
- Shape technical decisions within the team and develop others through design reviews, code reviews, documentation, and mentoring.
Requirements:
- Experience building, maintaining, and scaling customer-facing financial or payment APIs, together with a strong understanding of payments.
- Experience designing and operating high-volume, highly available distributed systems where correctness, security, and reliability matter.
- An understanding of payment API concerns such as idempotency, retries, asynchronous processing, backward compatibility, and handling partial failures without compromising financial correctness.
- A record of leading complex engineering projects from unclear requirements through production, making technical trade-offs, and coordinating work with partner teams.
- Experience diagnosing production issues and improving systems through monitoring, incident response, and preventive engineering.
- Fluency with AI-assisted engineering tools and the judgment to validate generated code, protect sensitive data, and recognize when deeper investigation is needed.
- Clear written communication and experience helping other engineers develop their technical skills.
Technologies used:
- Kotlin
- Go
- TypeScript
- AWS
- Kafka
Benefits:
- Remote work
- Medical insurance
- Flexible time off
- Retirement savings plans
- Modern family planning