Posted on: 29/10/2026
Role Overview :
We are seeking a Principal Software Engineer with strong expertise in Java, backend development, distributed systems, and cloud-native application architecture. The candidate will lead the design and development of scalable, reliable, and secure software solutions, contribute to architectural decisions, and establish engineering best practices. This role requires hands-on development capabilities alongside technical leadership, code quality ownership, and cross-functional collaboration.
Key Responsibilities :
- Design, develop, and maintain enterprise-grade backend applications and services using Java.
- Build scalable and secure RESTful APIs and microservices using Spring Boot and related frameworks.
- Define application architecture, design patterns, coding standards, and engineering best practices.
- Develop distributed systems with a focus on performance, reliability, scalability, and fault tolerance.
- Design efficient database schemas, queries, and data access layers using SQL and NoSQL databases.
- Implement asynchronous processing and event-driven architectures using messaging platforms such as Apache Kafka or RabbitMQ.
- Optimize application performance through profiling, debugging, memory management, and query optimization.
- Develop secure applications by implementing authentication, authorization, encryption, and secure coding practices.
- Build and maintain unit, integration, and automated tests to ensure application reliability.
- Participate in architecture reviews, code reviews, technical design discussions, and engineering planning.
- Collaborate with product managers, architects, DevOps engineers, QA teams, and other stakeholders to deliver business requirements.
- Support CI/CD integration and application deployments across cloud and containerized environments.
- Investigate production incidents, perform root cause analysis, and implement long-term corrective actions.
- Mentor engineers, support technical problem-solving, and promote engineering excellence.
- Evaluate emerging technologies and recommend improvements to existing systems and development processes.
Required Skills :
- 7 - 9 years of experience in software engineering and backend application development.
- Strong proficiency in Java, including object-oriented programming, collections, concurrency, exception handling, and JVM fundamentals.
- Hands-on experience with Spring Boot, Spring Framework, and REST API development.
- Strong understanding of microservices architecture, distributed systems, and common design patterns.
- Experience with relational databases such as PostgreSQL, MySQL, or Oracle.
- Familiarity with NoSQL databases such as MongoDB, Cassandra, or Redis.
- Experience with messaging systems such as Apache Kafka or RabbitMQ.
- Proficiency in Git, Maven or Gradle, and modern development workflows.
- Experience with unit testing and integration testing using JUnit, Mockito, or equivalent frameworks.
- Knowledge of Docker, Kubernetes, and cloud platforms such as AWS, Azure, or GCP.
- Understanding of application security, authentication, authorization, and API protection.
- Strong debugging, analytical, problem-solving, and communication skills.
- Ability to independently drive technical deliverables and contribute to architectural decisions.
Preferred Qualifications :
- Experience building high-throughput, low-latency, and highly available backend systems.
- Familiarity with observability tools such as Prometheus, Grafana, OpenTelemetry, or distributed tracing platforms.
- Exposure to event-driven architectures and cloud-native application design.
- Experience with performance testing, load testing, and capacity planning.
- Familiarity with secure software development practices and DevSecOps.
- Experience mentoring engineers and driving technical initiatives across teams.
Did you find something suspicious?
Posted by
Posted in
Backend Development
Functional Area
Backend Development
Job Code
1680981