Senior Software Engineer (Java/Go, Kafka, Flink, AWS)

New
100% Remote, CanadaContractSenior
Salary80 - 90 CAD per hour
Apply NowOpens the employer's application page

Job Details

Experience
7 to 10 Years
Required Skills
AWSDynamoDBJavaSpring BootApache KafkaGoDistributed Systems

Requirements

  • 7 to 10 years of professional software engineering experience.
  • Strong backend development experience using Java with Spring Boot or Go with modern service frameworks.
  • Hands-on production experience with Apache Kafka, including producer/consumer APIs, partitioning, retention, ACLs, and admin client.
  • Hands-on production experience with AWS services including DynamoDB, MSK or Kinesis, ECS or EKS, IAM, and S3.
  • Strong experience building event-driven architectures and streaming platforms.
  • Experience with Change Data Capture (CDC) patterns and asynchronous message processing.
  • Strong understanding of delivery guarantees, including exactly-once and at-least-once processing semantics.
  • Solid knowledge of distributed systems concepts including idempotency, retries with backoff, and eventual consistency.
  • Proven ability to join active projects and contribute effectively within the first one to two weeks.

Responsibilities

  • Design, develop, and maintain scalable backend services using Java or Go.
  • Architect and implement event-driven systems leveraging Apache Kafka and AWS streaming technologies.
  • Build and optimize high-throughput data processing pipelines and asynchronous messaging workflows.
  • Develop reliable distributed systems with strong focus on resiliency, scalability, and operational excellence.
  • Implement and maintain cloud-native solutions on AWS services including DynamoDB, MSK/Kinesis, ECS/EKS, IAM, and S3.
  • Design partitioning strategies, retention policies, access controls, and consumer architectures for Kafka-based platforms.
  • Drive implementation of data streaming solutions supporting CDC patterns and event processing requirements.
  • Apply distributed systems best practices including idempotency, retry mechanisms, eventual consistency, and fault tolerance.
  • Collaborate with cross-functional engineering teams to deliver production-ready software solutions.
  • Troubleshoot, optimize, and improve platform performance, scalability, and reliability.
View Full Description & ApplyYou'll be redirected to the employer's site
80 - 90 CAD per hour
Apply Now