Java Data Engineer (Data Streams) at Exness jobs for internal candidates
on-site · full-time · Visa sponsorship
Apply for this role at Exness jobs for internal candidates
Responsibilities:
- Design and implement scalable, low-latency streaming data pipelines and integration services using Java, Flink, Kafka and related tech.
- Build enrichment services to add business, account, symbol, pricing and reference context to raw trading events.
- Produce trusted real-time and near-real-time outputs via Kafka topics, ClickHouse sinks, reusable components and real-time APIs.
- Define and maintain stream contracts: schemas, field meanings, SLAs, ownership and consumer expectations.
- Validate data correctness with reconciliation, completeness and quality checks; investigate and resolve data issues.
- Implement monitoring and alerts for freshness, latency, lag, failures and enrichment quality.
- Support production reliability: Kubernetes operations, GitLab CI/CD, Terraform, deployment processes and incident analysis.
- Maintain and evolve existing solutions toward a more reliable, scalable target architecture; profile and remove bottlenecks.
- Collaborate with system analysts, platform teams and consumers to translate requirements into reliable data services.
Requirements:
- Strong Java experience in backend, data-intensive or distributed systems.
- Hands-on with stream processing (Apache Flink preferred; Kafka Streams, Kafka Connect, KSQL also acceptable).
- Deep knowledge of Apache Kafka (topics, partitions, consumer groups, delivery guarantees, schema evolution).
- Experience with ClickHouse or similar analytical sinks and SQL for data validation and queries.
- Familiarity with Kubernetes, GitLab CI/CD, Terraform and cloud-native deployment practices.
- Solid understanding of distributed systems, event-driven architecture, stream processing and DataOps principles.
- Strong problem solving, attention to data quality and ability to work cross-functionally in a fast-moving environment.