Overview
Role DescriptionWe are looking for a highly experienced Senior Software Engineer with deep expertise in Java-based microservices and distributed systems. This role is ideal for engineers who enjoy solving complex, large-scale backend challenges and are passionate about building high-performance, reliable systems used by millions of users globally.
You will play a key role in designing, building, and evolving real-time backend platforms that emphasize scalability, reliability, and performance.
Key Responsibilities
System Architecture & Development
- Design and implement scalable, service-based APIs as part of a migration from monolithic to microservices architecture
- Lead the design of low-latency, event-driven systems
- Implement reactive and asynchronous patterns in cloud-native environments
- Build and maintain production-grade backend services using modern Java frameworks
Performance & Reliability Engineering
- Optimize JVM performance, including GC tuning and memory management
- Design and improve distributed caching strategies
- Write, execute, and analyze load and stress tests
- Ensure systems can handle high-throughput and low-latency requirements
Distributed Systems & Data Engineering
- Work extensively with distributed databases and streaming platforms
- Design data models with a focus on data locality, read/write amplification, and scalability
- Build real-time data processing pipelines
Cross-Functional Collaboration
- Collaborate with frontend, mobile, and platform teams to co-design APIs
- Partner with DevOps teams to improve CI/CD pipelines and deployment strategies
- Mentor junior engineers through code reviews and pair programming
Production Ownership
- Own services end-to-end, from design to deployment and monitoring
- Participate in on-call rotations and incident response
- Conduct blameless post-mortems and drive continuous improvement
- Implement observability and chaos engineering practices
- 10+ years of professional software engineering experience (or 5+ years with exceptional open-source contributions)
- Strong expertise in Java (Java 17/21 preferred) and microservices architecture
- Hands-on experience with distributed systems at scale (50k+ RPS in production)
- Deep database experience with Cassandra or similar technologies such as DynamoDB, ScyllaDB, or Riak
- Strong understanding of event-driven architectures
- Excellent system design skills (live system design discussions required during interviews)
- Strong GitHub or open-source portfolio demonstrating architectural or system-level work
- Excellent written and spoken English communication skills
Technology Stack
Core Technologies
- Java 21
- Vert.x 4.x
- Kafka
- Cassandra (or equivalent distributed databases)
- AWS (EKS, EBS, S3, Lambda)
- Kubernetes
- Cloudflare (Serverless / Edge)
- GitLab CI/CD
- Prometheus, Grafana, Jaeger, OpenTelemetry
- Jira & Confluence
- Strong passion for technology and continuous learning
- Interest in building complex, large-scale distributed systems
- Contributions to side projects, open-source communities, or technical blogs
- Ownership mindset with a focus on quality and reliability
Key Skills
Java, Microservices, Kafka, Cassandra, DynamoDB, Distributed Systems, Data Processing, Vert.x, AWS, Kubernetes
Skills
java,microservices,kafka,dynamodb,data processing,cassandra,vert.x