Cboe Global Markets is a leading provider of market infrastructure and tradable products, delivering cutting-edge trading and investment solutions. The Software Engineer, Testing role focuses on building and maintaining automated testing frameworks, ensuring the reliability and functionality of trading systems, and collaborating with product and engineering teams to validate new features.
Write automated tests and code to evaluate new functionality across our real-time trading systems
Create system-wide integration tests bridging our real-time systems and batch frameworks and processes
Design and execute automated testing for distributed data pipelines, including real-time and batch processing systems
Validate event-driven architectures by testing message flows, ordering, latency, and data integrity within Kafka streams
Test trading, billing, symbol, data platform, and reference data flowing through the trading system to ensure functionality and stability
Work in Snowflake and PostgreSQL to audit and identify billing discrepancies, building automated test coverage for various billing scenarios
Develop chaos engineering tests and disaster recovery scenarios for critical systems
Develop and maintain our proprietary Python-based automated test frameworks
Contribute to the design and evolution of our world-class, home-grown testing framework
Develop Java-based automation tools (on select sub-projects) to process, search, and validate terabyte-scale market data files
Improve deployment processes, stored procedures/API calls, scheduler configurations, and quality control procedures
Collaborate directly with product owners and development teams to test and validate new features — identifying, reporting, and driving resolution on issues
Partner with engineering and data teams to define scalable QA strategies for performance, resiliency, and correctness in high-volume trading environments
Learn trading concepts and apply that knowledge to develop a wide variety of real-world test scenarios
Maintain system-wide documentation, runbooks, process flows, and troubleshooting guides
Qualification
Required
Bachelor's Degree in Computer Science, Engineering, or related field
2+ years of QA or Software Engineering experience with demonstrable, hands-on automated testing
Strong Python development skills (our primary language)
Solid understanding of computer science fundamentals, OOP design, and software engineering principles
SQL proficiency (PostgreSQL and/or Snowflake)
Experience with CI/CD pipelines (Jenkins, GitHub Actions, or similar)
Familiarity with containerization tools (Docker/Kubernetes)
Working knowledge of Linux
Experience testing event-driven or message-driven architectures (Apache Kafka preferred)
Experience with the full SDLC and Agile QA processes
Proficiency with Git and version control workflows
Ability to independently investigate ambiguous issues and drive them to resolution without heavy direction
Comfortable reading and reasoning about production code, not just writing tests against it
Preferred
Java experience is a plus
Benefits
Generous paid time off, including vacation, personal days, sick days and annual community service days
Health, dental and vision benefits, including access to telemedicine and mental health services
2:1 401(k) match, up to 8% match immediately upon hire
Discounted Employee Stock Purchase Plan
Tax Savings Accounts for health, dependent and transportation
Employee referral bonus program
Volunteer opportunities to help you give back to your communities
Complimentary lunch, snacks and coffee in any Cboe office
Paid Tuition assistance and education opportunities
Generous charitable giving company match
Paid parental leave and fertility benefits
On-site gyms and discounts to other fitness centers
Cboe Global Markets (Cboe) is the leading exchange network for global derivatives, foreign exchange, digital asset and securities trading solutions.