Member of Technical Staff, Trading (Derivatives)
About the Role
You will implement front-office and back-office trading systems used by institutional investors, design and deliver reliable trading features, and maintain production services. You will break down large projects, estimate work, and drive implementations from design through testing and deployment. You will review peers' code, improve instrumentation and metrics, and dive into complex, ambiguous problems to produce practical solutions. You will collaborate across teams, share knowledge to avoid single points of failure, and mentor other engineers to raise overall engineering quality.
Requirements
- 3+ years of professional experience with Go
- Experience with automated unit integration and end to end testing
- Experience with cloud development
- Database design and interaction using MySQL or PostgreSQL
- Experience using Git
- Knowledge of trading system domains such as Order Execution Management Systems, FIX protocol, market data, low latency architectures, messaging, matching engines, FX, OTC, derivatives, position and risk management, and trading back office systems
- Real world experience building financial trading systems
- Familiarity with software engineering practices such as TDD, SOLID, and refactoring
- Commitment to code quality and test infrastructure
- Experience collaborating in team-based software engineering and mentoring others
Responsibilities
- Participate in task breakdown, estimation, design, implementation and maintenance of trading systems
- Influence technical direction of the Brokerage engineering team
- Advocate for improved processes or technology when appropriate
- Dive deep into complex, ambiguous problems and formulate practical solutions
- Review other developers' code to ensure consistency and reduce errors
- Implement instrumentation and metric collection to drive iterative system improvement
- Work independently or as a lead engineer to deliver features
- Break down large projects into smaller tasks and accurately estimate scope and time
- Ensure knowledge is shared across the team and avoid single points of failure
- Collaborate cross-functionally with other teams
