Java Software Engineer
Role details
Job location
Tech stack
Job description
The role demands backend expertise, particularly in Java, distributed systems, and microservices architecture. You will collaborate with senior engineers and contribute to the team's Agile processes while enjoying excellent professional growth opportunities and benefits., We are looking for an experienced Java Software Engineer to join our Platform team and help develop an award-winning REST API for our Unified Communications service. In the Platform team, we build high-load infrastructure subsystems that address cross-cutting concerns in a geo-distributed environment, including API and WebSocket Gateways, distributed caches, and service discovery. You will have the chance to design and develop highly available, globally distributed systems that maintain 99.999% availability, process more than 100,000 requests per second, handle more than a million concurrent WebSocket connections, and consistently meet millisecond-level latency targets. Technologies we work with
- Java
- Netty
- Redis
- Kafka
- Kubernetes
- Docker
- Oracle Coherence
Responsibilities
- Drive implementation and support of highly available backend infrastructure and services, collaborating closely with senior engineers on design decisions.
- Work with architects and other stakeholders to convert high-level requirements into component-level designs and implementation tasks.
- Support products throughout the release cycle, including QA support and production incident investigation.
- Develop and extend CI/CD pipelines to automate testing and meet team-specific delivery requirements.
- Work in an Agile team and contribute to improving development processes and team effectiveness.
Requirements
- 5+ years of backend development experience, excellent Java programming skills.
- Experience building high-load, fault-tolerant distributed systems.
- Understanding of microservices architecture and inter-service communication patterns., Java programming Distributed systems Microservices architecture Problem-solving Linux Communication skills
Herramientas
Netty Docker Kubernetes Redis Kafka Oracle Coherence Descripción del empleo, * Solid backend development experience (5+ years) and excellent Java programming skills.
- Experience building high-load, fault-tolerant distributed systems.
- Understanding of microservices architecture and inter-service communication patterns (synchronous/asynchronous communication, message queues, L4/L7 load balancing).
- Familiarity with network fundamentals (TCP/UDP, HTTP, WebSocket, DNS).
- Excellent problem-solving skills and a proactive approach to identifying and addressing technical challenges (concurrency bugs, memory leaks).
- Experience working with Linux operating systems.
- Good spoken and written English communication skills.
- Additional: Experience building public APIs.
- Additional: Experience with Netty or other low-level/high-performance frameworks; understanding of non-blocking I/O concepts.
Benefits & conditions
- Well-coordinated professional team.
- Life assurance and private medical insurance.
- Competitive salary.
- Great opportunities for self-realization, professional and career growth.
- Corporate training programs, free language courses.
- Excellent work environment and good collaboration.
- Opportunity to be a part of the international company.