Summary
✨ AI‑Generated
Join an enterprise technology team as a Senior Java Developer, designing and maintaining scalable applications, APIs, and microservices. You will work across backend development, integrations, databases, concurrency, security, and DevOps, with experience in regulated financial environments being advantageous.
Highlights
Build enterprise-grade applications, APIs, and microservices in a banking environment. The role combines backend engineering, system integration, database work, security, and DevOps practices using a broad Java ecosystem.
Description
For an Islamic Bank in Bahrain, we are looking for a highly skilled Senior Java Developer.
The ideal candidate will be responsible for designing, developing, and maintaining enterprise-grade applications, APIs, and microservices using Java and related technologies.
The role requires strong expertise in backend development, system integration, security standards, and DevOps practices, preferably within the banking sector.
Key Responsibilities
Design, develop, and maintain Java applications using Java 8/11/14 while adhering to OOP, SOLID, and DRY principles.
Develop scalable and high-performance backend services using Spring Framework and Spring Boot.
Build, expose, and consume RESTful APIs and support SOAP/XML integrations when required.
Develop and maintain microservices-based solutions using JPA/Hibernate and modern API management practices.
Design and optimize relational and NoSQL database solutions, including MySQL and MongoDB.
Implement multithreading and concurrency solutions to improve application performance and reliability.
Apply security best practices and identity protocols, including OAuth2, OpenID Connect, SAML, SSO, TLS, and PKI.Troubleshoot production issues, perform root cause analysis, and provide application support.
Conduct testing, debugging, and code reviews to ensure software quality and compliance with development standards.
Utilize Git, CI/CD pipelines, Azure DevOps, and Agile methodologies to support efficient software delivery.
Collaborate with cross-functional teams to gather requirements, deliver integration solutions, and maintain technical documentation.
Requirements
Bachelor's Degree in Computer Science, Computer Engineering, or a related field.
7 to 10 years of hands-on experience in Java application development.
Previous experience in the Banking or Financial Services industry is highly preferred.
Strong proficiency in Java 8/11/14 and object-oriented programming concepts.
Hands-on experience with Spring Framework, Spring Boot, Microservices, JPA, and Hibernate.
Experience designing and developing RESTful APIs and integrating with SOAP services.
Knowledge of message queuing technologies such as IBM MQ and Kafka.Strong understanding of relational databases, SQL scripting, MySQL, and MongoDB.
Experience with Git, Azure DevOps, CI/CD pipelines, and Agile development practices.
Familiarity with web technologies including HTML5, CSS, JavaScript, jQuery, JSP, JSF, PrimeFaces, and Thymeleaf.
Strong understanding of application security and identity management protocols.