Description

About The Role

As a Senior Software Engineer, you will be responsible for

Implementing new product features, enhancements, redesign of existing product functions, troubleshooting and resolving product defects, unit and integration testing.

Some of the key tasks you will perform:

Designing object-oriented and service-oriented architectures 
Programming and unit testing of code based upon design sessions with internal software users, customer-reported issues, and input from Business System Analysts, Marketing, Professional Services, and Support Unit and performance testing of features as part of development cycle 
Developing and re-factoring existing products, providing product enhancements, and resolving product defects to meet customer issues.
Providing technical expertise and peer code reviews to other team members 
Writing technical specifications, program documentation, and unit test plans for all work performed 
Developing and supporting applications in multi-cloud platform. 
Assisting in Quality Assurance process and customer issue resolution 
Partnering with Quality Assurance to drive high-quality, on-time deliverables.


About You

You’re a fit for the role of Software Engineer if you have:

5+ years professional experience designing, developing, deploying Java based applications. 
Strong working knowledge with Object-Oriented Analysis, Design, and Implementation 
Experience with advanced Open-Source technologies such as Java, Spring boot, Hibernate, Gradle and technologies required. 
Experience with relational database systems, e.g. Oracle, PostgreSQL and ORM tools like Hibernate and JPA framework.
Experience with JSON parsing. Serialization and Deserialization. 
Experience working with cloud native applications, understanding of design patterns for scalability, performance, and reliability.
Experience building API services using: REST, SOAP, deployed in a distributed environment, and good understanding of related concepts like distributed caching.
Experience with Agile/Scrum development methodologies to deliver high end applications against strict timelines, have strong understanding of agile principles.
Experience working with cross functional and remote teams.
Eager to learn and willingness to take initiatives.


Preferred qualifications:

Bachelor’s Degree in computer science or equivalent work experience 
Prior work experience in migration of JVM, dependent libraries and underlying platforms. 
Experience in developing applications in AWS cloud or any other cloud platform. 
Any experience in Containerized platform engineering tools like HELM, k8s etc. 
Any Experience in messaging tools like Kafka, AVRO schema


Other specialized knowledge and skills required:

Proven strong analytical design and trouble-shooting skills.
Highly accountable for meeting all commitments and deadlines. 
Effective communication skills, both written and verbal for technical and non-technical audiences 
Must be able to work independently as well as collaboratively.
Drive for continuous process improvement 

Education

Any Graduate