Description
Job Summary
We are seeking an experienced Backend Developer with strong hands-on expertise in Golang and Java to design, develop, and maintain scalable, high-performance backend applications and distributed systems.
The ideal candidate will have solid experience building enterprise-grade backend services, RESTful APIs, and microservices using Golang and Java. The candidate should possess a strong understanding of software engineering principles, system design, cloud-native development, and distributed architectures.
Experience with Python is an added advantage. The role involves collaborating with product, frontend, DevOps, and QA teams to deliver secure, reliable, and high-performing backend solutions supporting mission-critical applications.
Key Responsibilities
- Design, develop, and maintain scalable backend services, APIs, and microservices primarily using Golang and Java.
- Build and optimize RESTful APIs and event-driven services with a focus on performance, scalability, reliability, and maintainability.
- Develop robust backend components using Go frameworks and Java frameworks such as Spring Boot.
- Design and implement distributed systems and microservices-based architectures.
- Write clean, reusable, efficient, and well-tested code following software engineering best practices.
- Work with relational and NoSQL databases to design efficient data models, queries, and database integrations.
- Identify performance bottlenecks, troubleshoot production issues, and implement solutions to improve system reliability.
- Implement secure coding practices, authentication, authorization, and data protection mechanisms.
- Participate in technical design discussions, code reviews, architecture decisions, and engineering best practices.
- Collaborate with DevOps teams to support CI/CD pipelines, containerization, deployments, and production monitoring.
- Work closely with cross-functional teams to translate business requirements into scalable technical solutions.
- Maintain technical documentation and contribute to continuous engineering improvements.
Required Qualifications
- Bachelor's degree in Computer Science, Engineering, or equivalent practical experience.
- 5+ years of backend software development experience, with strong hands-on expertise in Golang and/or Java.
- Strong proficiency in Golang or Java, with practical experience developing production-grade backend applications.
- Experience with Java frameworks such as Spring Boot, Spring MVC, and Spring Security (for Java-focused developers).
- Experience developing backend services, REST APIs, and microservices.
- Strong understanding of data structures, algorithms, object-oriented programming, and software design principles.
- Experience with distributed systems, concurrent programming, and multithreading.
- Hands-on experience with relational and/or NoSQL databases such as PostgreSQL, MySQL, MongoDB, or Redis.
- Familiarity with cloud platforms such as AWS, Azure, or GCP.
- Experience with Git and collaborative software development practices.
- Strong debugging, problem-solving, and analytical skills.
Preferred / Nice-to-Have Skills
- Experience working with both Golang and Java in enterprise application environments.
- Experience with microservices architecture, distributed systems, and cloud-native application development.
- Knowledge of Go concurrency patterns, goroutines, channels, and Java multithreading.
- Experience with Docker, Kubernetes, and containerized deployments.
- Exposure to event streaming and messaging platforms such as Kafka, RabbitMQ, or AWS SQS.
- Experience with CI/CD tools such as GitHub Actions, Jenkins, or GitLab CI.
- Understanding of observability tools and practices, including logging, monitoring, and distributed tracing.
- Familiarity with Python for scripting, automation, or backend development.
- Experience working in Agile/Scrum development environments