Skip to main content

Java Developer

Technology
Arkhya Tech Inc.
Toronto, Canada3 days agoUntil 2026-12-24
Service contract

Job description

Job Title: Senior Software Engineer – Java / Apache Flink (Hybrid)

Location: Toronto, ON (Hybrid – 3 days in-office / 2 days remote)

Position Overview

We are seeking a talented Senior Java Engineer with deep expertise in Apache Flink to join our growing Core Data Platform team in Toronto.

In this role, you will design, build, and optimize high-throughput, low-latency distributed streaming pipelines. You will play a critical part in evolving our real-time data architecture, transitioning legacy batch workflows into highly scalable, event-driven streaming solutions. This is a hybrid role requiring three days a week in our downtown Toronto office, offering a perfect balance of collaborative in-person whiteboarding and remote flexibility.

Core Responsibilities

  • Pipeline Engineering: Design, develop, and maintain production-grade, stateful stream processing applications using the Java DataStream and Table/SQL APIs in Apache Flink.
  • Architecture Evolution: Architect real-time event-driven systems utilizing Apache Kafka or AWS Kinesis integrated seamlessly with Flink.
  • Performance Tuning: Optimize Flink cluster configurations, manage memory tuning (Managed vs. Unmanaged memory), write custom serializers, and manage RocksDB State Backend performance.
  • Fault Tolerance & Reliability: Implement and manage robust state management strategies, including checkpointing, savepoints, and schema evolution rules to ensure exactly-once processing guarantees.
  • Cross-functional Collaboration: Partner with Data Science, DevOps, and Product teams to translate complex business analytics into highly performant real-time metrics.
Required Skills & Qualifications
  • Experience: 5 years of professional software engineering experience in backend development, with a minimum of 2 years of hands-on experience building production pipelines with Apache Flink.
  • Java Expertise: Mastery of core Java (Java 11/17 ), including concurrency packages, multithreading, garbage collection tuning, and memory management.
  • Distributed Ecosystems: Strong experience with event streaming backbones (specifically Apache Kafka, schema registries, and consumer/producer APIs).
  • Data Fundamentals: Deep understanding of stream processing concepts such as event-time processing, watermarking, late data handling, and tumbling/sliding windows.
  • CI/CD & Cloud: Familiarity deploying Flink applications into containerized cloud environments (Kubernetes, AWS, or Managed Flink providers like Ververica/Confluent Cloud).
  • Location Constraint: Must be currently living in or willing to relocate to the Greater Toronto Area (GTA) and able to commute to our downtown office 3 days a week.
Keywords
Apache FlinkApache KafkaRocksdbCore DataDevOpsFault toleranceSqlApache Http ServerJavaCI/CDBig dataMemory management

Interested in this role?