Exercise judgment within defined standard practices and procedures to analyze, test, design, program, debug, modify and implement system requirements
Work closely with the business units and stakeholders on gathering and understanding system requirements
Work closely with project management, product management and QA teams
Plan and estimate the development for key components, applications and systems
Balance design considerations with delivering specified requirements
Solve business problems using applied proven technologies
Assist in developing and ensure complete functional and non-functional specifications
Understand complex business logic in existing systems and transition it to new technologies and systems
Work with system operations, database administration and systems software in production support and defining system recovery procedures
Identify, communicate, and develop solutions for root causes of program failures and defects
Collaborate with business analysts and QA analysts in the design and execution of business feature, regression and integration testing
Work in an agile and continuous integration environment with a command of SDLC tools
Plan and execute unit tests to ensure the developed code is free of functional defects
Knowledge and Experience
Bachelor’s degree in CS or equivalent
5+ years of experience developing with Java technologies
Strong working knowledge of
Java 8+
Object-Oriented Design and related Design Patterns
Distributed messaging, JMS
Spring Framework (Spring Boot, Spring MVC, Spring Data, Spring WebFlux, Spring Cloud frameworks)
ORM technologies such as Hibernate, JPA
Relational databases such as Oracle and experience with SQL, PL/SQL
Multi-threaded server-side development
Unit testing tools such as JUnit, Mockito, Spring Boot Test, and Karate
Experience in Java performance tuning, debugging and memory profiling
Familiarity with CI/CD pipelines and modern development workflows using tools like Jenkins, ArgoCD, or GitHub Actions
Experience supporting multiple projects, managing priorities, and multi-tasking effectively
Strong collaboration and technical skills in articulating technical infrastructure and concepts
Strong interpersonal skills and able to work well in a team environment
Excellent communication and technical documentation skills
Preferred Knowledge and Experience
Experience building HTML5 front ends using ReactJS or other similar JavaScript libraries and frameworks
Experience developing micro-services in container-based Kubernetes platforms (OpenShift, Tanzu)
Familiar with BPMN, Camunda, and rules engines like Drools
Experience working with distributed cache frameworks such as Redis
Familiar with Test Driven Development
Exposure in the financial services technologies, particularly in futures and options
Demonstrated contributions to open-source technologies