Senior Software Engineer - Identity at Alpaca
New York, NY 10261
About the Job
Your Role:
As a senior software engineer, you will help build and scale the systems and services that form Alpaca's foundation and empower millions of users who trade billions of dollars worth of assets.
The identity team is responsible for building a modern platform for onboarding users, verifying their identity, evaluating risk, and managing their trading accounts. These people, businesses, and accounts are foundational components of the Alpaca system, and we need to build new capabilities while achieving very high automation rates. We are expanding the platform to handle identity verification on a global basis and to support our growing set of account types.
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 is also a great asset we are actively looking for.
Things You Get To Do:
- Contribute to a core system that millions of end users will rely on
- Help us create a global financial identity verification and risk management service
- Implement backend services and work on designing an architecture where reliability matters
- Take ownership of tasks, identify and address technical challenges proactively, and propose innovative solutions
- Contribute to architectural decisions, offering insights and suggestions for designing scalable and reliable systems
- Work with other teams to improve how our systems interact with theirs and improve Alpaca systems in general
- Maintain good software quality and test coverage
- Participate in code reviews
- Troubleshooting on incidents and reported bugs
- You may be asked to be on-call to assist with engineering projects that are timely in nature
Who You Are (Must-Haves):
- Strong problem-solving skills paired with a proactive mindset
- Ability to turn business requirements into a flexible implementation model
- Excellent communication and collaboration skills
- 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
- 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
Who You Might Be (Nice-to-Haves):
- Experience in the finance industry
- Experience with financial identity management, e.g. KYC
- Experience integrating with external services
- Experience working remotely
- Experience working at a startup
- DevOps mindset is an asset