Software Development Engineer in Test / Python Developer
Summary
Build and maintain automated tests for global trading platforms and develop Python tools for trade data processing and reconciliation in a fast-paced trading firm.
- Test automation & quality assurance
- Build a strong understanding of trading system functionality (market pricing, trading operations, trade data access, etc.) and use the Python-based test framework to develop automated test suites
- Design and implement tests for throughput, functionality, data processing, and latency for Trading Components (Order Adapters, Market Data Publishers, Risk Systems, Exchange Connections, and others)
- Test trading system releases and support release management
- Support and maintain test environments
- Integrate tests into a continuous integration system and provide fast feedback on changes that affect development
- Perform manual testing when needed (e.g., certification, integration testing)
- Troubleshoot issues and bugs discovered in testing and help determine root cause
- Investigate production issues and support root cause analysis
- Python production applications
- Develop, maintain, and enhance Python production applications such as trade data processing and reconciliation tools
- Participate in the full software lifecycle for these applications, including design, implementation, deployment, and support
- 2+ years of Python programming experience
- 2+ years of automation testing experience
- Experience with testing frameworks for unit and integration testing (PyTest)
- Strong analytical skills, attention to detail, and clear written and verbal communication
- Solid understanding of software development and testing practices
- Ability to adapt and learn quickly in a fast-paced environment
- Experience with trading systems
- Experience developing or maintaining production-facing Python applications
- Familiarity with FIX protocol and other financial messaging protocols