Posted in

Senior Software Engineer – Java

Senior Software Engineer – Java

CompanyMarketAxess
LocationNew York, NY, USA
Salary$150000 – $225000
TypeFull-Time
Degrees
Experience LevelSenior, Expert or higher

Requirements

  • 7+ years of engineering experience
  • Expertise in Java and Python
  • 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
  • Experience building platform services that other engineers consume (APIs, SDKs, shared libraries)
  • Knowledge of data modeling for both operational and analytical use cases
  • Understanding of DevOps practices: CI/CD, infrastructure as code, monitoring and alerting
  • Familiarity with agile development practices and working in cross-functional teams
  • RFC writing experience
  • Ownership mindset
  • Cross-functional collaboration experience

Responsibilities

  • Implement data catalog APIs, schema registry services, and metadata management systems
  • Build high-throughput Kafka consumers/producers, stream processing applications with Flink/KStreams, and real-time data transformation services
  • Code the APIs and microservices that enable teams to publish, discover, and consume data products independently
  • Implement the foundational services that enable domain teams to create and manage their data products
  • Build connectors and adapters that integrate legacy systems with the modern Data Mesh architecture
  • Implement metrics, logging, and health check systems for distributed data platform components
  • Create CLI tools, SDKs, and automation that make the platform easy for other engineers to adopt
  • Write RFCs for complex technical decisions, proposing solutions for cross-team challenges and platform evolution
  • Take full responsibility for services from design through production deployment, monitoring, and ongoing maintenance
  • Lead RFC discussions, propose architectural improvements, and influence platform direction through well-researched technical proposals
  • Own the operational excellence of your services – you build it, you run it, you support it
  • Take ownership of technical challenges that span multiple teams, driving solutions that benefit the entire platform
  • Set the bar for code quality, testing practices, and operational excellence within the platform team

Preferred Qualifications

  • Strong Kafka experience: Building producers/consumers, stream processing applications, managing topics, partitions, and handling failures
  • Proficiency with streaming frameworks: Kafka Streams, Apache Flink, or similar technologies
  • Experience with Data Mesh, Data Lake, or modern data platform implementations
  • Knowledge of schema evolution and backward compatibility strategies
  • Experience with financial services data and regulatory requirements
  • Contributions to open source projects in the data/streaming space