Senior Software Engineer - Payments & Treasury
Alpaca, New York, NY, United States
Your Role
As a senior software engineer, you will help build and scale the systems and services that form the foundation of Alpaca and empower millions of users that are trading billions of dollars worth of assets daily .
The payments team is responsible for building and maintaining a modern global payments and treasury platform. Operating in an industry in which money movement is a critical component, we adopt a modern technology focused approach with highly scalable, event-driven systems. Resilient engineering, technical and operational scalability, and system integrity are crucial to our success.
We have ambitious plans to build a seamlessly integrated comprehensive treasury platform into an industry leading end-to-end financial infrastructure on a global scale. Alpaca has and will continue to prove ourselves as an innovative market leader and this team is a core component of our growth across global markets and asset classes.
We are looking for senior engineers who are keen on providing quality solutions, have great fundamentals, have proven experience building and architecting at scale, and are not afraid of challenging conventions or voicing their opinions. In this role, you will have the autonomy to design and implement solutions to achieve defined goals while actively participating in defining those goals.
An understanding of cloud-based modern architecture, infrastructure, and orchestration practices are also great assets we are actively looking for.
Who You Are (Must-Haves):
- Strong problem-solving skills paired with a proactive mindset
- Excellent communication and collaboration skills
- The ability to work independently and as part of a team
- A preference for simple and elegant solutions
- At least 3 years of experience working on systems at scale
- Proven experience in building and maintaining microservices
- Experience with client-facing APIs
- Strong coding skills, preferably in Go
- Ability to write clean, well-tested, and maintainable code
- Experience with domain-driven design and event-driven design
- Ability to debug issues or, better yet, foresee problems and avoid them entirely
- Familiarity with containerization and orchestration technologies, especially Kubernetes
- Experience with cloud platforms, preferably Google Cloud Platform
- Experience with messaging queues and message brokers
- Experience with relational databases, preferably PostgreSQL
- Experience with distributed systems design
- Previous experience with or understanding of payment rails and the payment lifecycle
- Experience with double-entry accounting and financial ledgers
Who You Might Be (Nice-to-Haves):
- Previous experience in the financial industry or knowledge of payment initiations
- Experience with financial reconciliation systems
- Experience with or understanding of ISO20022 financial standard
- Experience working remotely
- Experience working at a startup, exchange, brokerage, market maker, or hedge fund
- DevOps mindset is an asset.