Alpaca is a US-headquartered self-clearing broker-dealer and brokerage infrastructure for various financial products. As a Senior Software Engineer, you will help build and scale systems that empower millions of users trading significant assets while improving the architecture of Alpaca's market data systems.
Responsibilities:
- Influence the overall architecture of Alpaca’s market data systems
- Design highly scalable, mission-critical systems
- Obsess over latency (every nanosecond counts)
- Implement backend services and lead architecture where scalability and resilience matters
- 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
Requirements:
- At least 4 years of experience working on systems at scale
- Experience with at least compiled imperative languages (e.g. Go, C, C++, Rust, etc.). Most of our critical services are written in Go
- SQL or relational database skills
- Familiarity with TCP/IP, and UDP networking
- Proficient with Linux/BSD, and shell scripting
- Excited about what we are building at Alpaca
- Proven track record of architecting and leading medium-scale projects involving multiple teams
- Experience with Kubernetes or other workload orchestration and scheduling systems (we primarily use Kubernetes via GKE)
- Experience with major cloud platforms (we primarily use GCP)
- A passion for financial markets
- Knowledge of microservice architectures
- Knowledge of clean code principles
- DevOps mindset is an asset
- Cloud Networking experience (BGP, VPC peering)
- Experience in building low-latency applications
- Experience with distributed key-value stores
- Experience with CI/CD
- A passion for financial markets or the desire to learn
- Knowledge of Agile/Scrum methodologies
- Experience with observability, tracing, continuous profiling
- Experience with capacity planning and benchmarking
- Knowledge of eBPF