Software Engineer - Java with Data Structures & Algorithms
Office in India: Bengaluru, India: Hyderabad
Java& 5 others
Looking for something else?
Find a vacancy that works for you. Send us your CV to receive a personalized offer.
Find me a jobChoose an option
We are seeking a Java-proficient Software Engineer with strong Data Structures & Algorithms skills to join our engineering team and contribute to building scalable, high-performance applications.
Responsibilities
- Contribute to software builds as part of an engineering team by following consistent development practices
- Identify and debug basic software components to fix code defects
- Support the development, monitoring, and maintenance of software across test, integration, and production environments
- Automate deployment processes in test or production settings
- Comply with security and regulatory standards
- Contribute to and design API implementations
- Implement best practices for automated unit, integration, and regression testing
- Review pull requests to maintain high-quality code delivery
- Work within an Agile team to build software, influence team goals, and shape overall architecture
- Maintain infrastructure that is scalable, reliable, safely extensible, and compliant with SLAs for internal and external users
- Design software solutions that are testable, intuitive, and easy to maintain
Requirements
- 4 to 6 years of experience in software development, testing, and implementation
- Bachelor's or Master's degree in Computer Science, Engineering, Information Systems, or a related STEM discipline
- Strong proficiency in Java 8, Data Structures & Algorithms, and Microservices
- Solid experience with REST APIs, JSON, and Kafka
- Working knowledge of RDBMS and NoSQL technologies, including MongoDB, Redis, and PostgreSQL
- Proficiency with Spring Boot, Maven, and GIT
- Familiarity with Jenkins, GitHub Actions, and Agile methodologies
- Strong understanding of Linux/Unix and Gradle/Maven
- Proven ability to build scalable, low-latency applications using multi-threaded, asynchronous, and reactive programming
- Hands-on experience deploying containerized applications to cloud environments using Kubernetes and Docker
- Solid foundation in high availability strategies, profiling, and performance analysis
- Strong skills in Design Patterns, System Design, and Problem Solving
