Position: Senior Java Developer
Duration: 12+ months
This position is for a Senior Java Developer with Data or BI experience. The Senior Developer is responsible for design and coding of new applications as well as enhancing and maintaining existing applications. The Senior Developer works closely with the Product Management, Operations and Technology Infrastructure departments as well as external clients and vendors to define and implement new features and capabilities.
- 8+ years of IT experience in analysis, design, development, documentation, implementing and testing of software systems in Java, J2EE with Spring
- Build automation tools and experience in CI/CD pipeline software such as TFS, Git, Jenkins, Maven, etc.
- Strong Knowledge on Application Development using Software Development Life Cycle SDLC using various methodologies like Agile/Scrum.
- Strong experience in Spring Framework such as Spring MVC, IOC, AOP and Spring JDBC.
- Experience in implementing Java EE design patterns such as MVC, Singleton, Session Facade, DAO, DTO, and Business Delegate in the development of Multi-Tier distributed Enterprise Applications.
- Strong experience with Kafka or MSK (AWS' Kafka)
- Good experience in developing Web Services SOAP, JAX-WS, WSDL .
- Sound RDBMS concepts and broadly worked vendors such as DB2, Oracle, and MySQL
- Excellent team player with good analytical, strategic planning and interpersonal and communication skills. Highly motivated, enthusiastic and self-starter.
- Experience developing and supporting large, mission critical transaction processing applications is preferred.
- Money transfer experience especially knowledge of SWIFT, FED or CHIPS payment processing and settlement is preferred.
- Experience with functional programming languages such as Haskell, Erlang, Scala, etc. is a strong plus.
Essential functions and responsibilities:
- Work with Product Management, Technology and Operations as well as external clients to create and maintain detailed functional and technical specifications.
- Develop new functionality and perform defect fixes.
- Complete tasks and projects in a timely manner.
- Assist in defining and documenting support procedures.
- Assist in training QA and Operations staff in functionality and operation of the system.