Job Purpose
This position offers a flexible hybrid work schedule with at least 3 days in the Atlanta, GA office required weekly.
Responsibilities
- Design and implement software solutions based on standard design and architecture patterns for user requirements.
- Accurately document the design and implementation steps, review with business analysts, development, and QA teams
- Collaborate with product, project management, and QA team in requirements analysis, solution design, providing development work estimates and project status.
- Assist to develop and ensure complete functional and non-functional specifications.
- Collaborate with other internal teams to translate business requirements into technical implementation for the automation of existing processes and the development of new applications.
- Understand complex business logic in existing systems and transition it to new technologies and systems.
- Work with system operations, database administration and systems engineering teams in production support and defining system recovery procedures.
- Identify root causes and develop solutions for program failures.
- Plan and execute unit tests to ensure the developed code is free of functional defects.
- Work closely with Performance Test team to identify performance hotspots and in providing timely resolution during load tests.
- Work in an agile and continuous integration environment with a command of SDLC tools .
Knowledge and Experience
- Bachelor’s in computer science or software/computer engineering (or equivalent) required.
- 5+ years of experience developing low latency, high-performance transactional software systems and components using standard Enterprise Integration Patterns and design principles.
- A deep knowledge of:
- Java 8+
- OOD, Design Patterns
- Distributed messaging, JMS
- Spring and its frameworks like Spring Boot, Spring MVC, Spring Data
- Multi-threaded server-side development
- Strong experience with Oracle PL/SQL and Database Technologies
- Experience applying continuous improvement tools and agile development methods to enhance and evolve complex systems driven by business needs.
- Ability to multitask and work independently on multiple projects.
- Demonstrable skills in production support and root cause analysis
Preferred
- Experience developing data processing pipelines using distributed compute principles and open-source frameworks.
- Experience in developing micro-services in container-based Kubernetes platforms (OpenShift, Tanzu)
- Experience developing Web UI using JavaScript based frameworks like React/JS
- Exposure to the financial services technologies domain, particularly in futures and options
- Working knowledge with shell scripts and CLI in Linux
This role offers work from home flexibility of 1 day per week.