MarketAxess is seeking to digitally transform one of the world’s largest financial markets by enabling the shift from analog, phone-based trading to a fully electronic marketplace, and is looking for a Senior Software Engineer to help build their next-generation cloud-based Data Fabric and streaming Data Mesh platform.
Requirements
- 7+ years of engineering experience with expertise in Java and Python, building distributed systems, microservices, and concurrent applications
- Experience with AWS cloud platform and containerization (Docker/Kubernetes)
- Knowledge of distributed data systems: Spark, distributed databases, event sourcing, CQRS patterns
- Experience building high-throughput, low-latency services that handle enterprise-scale data volumes
- Understanding of data formats and serialization: Avro, Protobuf, JSON Schema
- Experience with REST API development and service-to-service communication patterns
- Knowledge of data modeling for both operational and analytical use cases
Responsibilities
- Building the Next Generation Data Platform 'Lakehouse': Implement data catalog APIs, schema registry services, and metadata management systems that serve 50+ engineering teams across our modern lakehouse architecture using Iceberg
- Streaming Data Pipelines: Build high-throughput Kafka consumers/producers, stream processing applications with Flink/KStreams, and real-time data transformation services
- Self-Service Infrastructure: Code the APIs and microservices that enable teams to publish, discover, and consume data products independently
- Data Product Framework: Implement the foundational services that enable domain teams to create and manage their data products
- Integration Services: Build connectors and adapters that integrate legacy systems with the modern Data Mesh architecture
- Monitoring & Observability: Implement metrics, logging, and health check systems for distributed data platform components
- Developer Tools: Create CLI tools, SDKs, and automation that make the platform easy for other engineers to adopt
Other
- Own Platform Components: Take full responsibility for services from design through production deployment, monitoring, and ongoing maintenance
- Drive Technical Decisions: Lead RFC discussions, propose architectural improvements, and influence platform direction through well-researched technical proposals
- Production Responsibility: Own the operational excellence of your services - you build it, you run it, you support it
- Cross-Team Impact: Take ownership of technical challenges that span multiple teams, driving solutions that benefit the entire platform
- Bachelor's degree or higher in Computer Science or related field