Description

Responsibilities

Design, develop, and maintain scalable and high-quality software applications
Collaborate with cross-functional teams to gather requirements and translate them into technical specifications and software solutions
Write clean, efficient, and maintainable code following best practices and coding standards
Perform rigorous testing to ensure software quality and reliability
Troubleshoot and debug complex software defects and issues
Participate in code reviews and provide constructive feedback to improve code quality
Stay up to date with emerging technologies and industry trends, and apply them to enhance our software solutions
Mentor and provide guidance to junior engineers, fostering a culture of continuous learning and growth


Requirements

Formal training or certification on software engineering concepts and 5+ years applied experience
Hands-on practical experience in system design, application development, testing, and operational stability and experience in developing, debugging, and maintaining code in a large corporate environment with one or more modern programming languages and database querying languages
Experience across the whole Software Development Life Cycle 
Exposure to agile methodologies such as CI/CD, Applicant Resiliency, and Security
Strong expertise in building distributed applications using the core Java spring framework
Strong expertise in building RESTful microservices using spring boot application
Strong expertise in RDBMS, Cassandra, Message Broker (Kafka, Redis)
Preferred qualifications, capabilities, and skills
Hands on experience in Cloud Design, Kubernetes, Containerization
Hands on experience in React(Preferred)/Angular and Spring boot
Proven experience designing 3 tier Infrastructure architecture solutions

Education

Any graduate