Java Developer, Officer

Citigroup Inc.
Belfast, United Kingdom
2 days ago

Role details

Contract type
Permanent contract
Employment type
Full-time (> 32 hours)
Working hours
Regular working hours
Languages
English
Experience level
Senior

Job location

Belfast, United Kingdom

Tech stack

Java
JavaScript
Agile Methodologies
Amazon Web Services (AWS)
Application Performance Management
Azure
Code Review
Data Structures
Relational Databases
Software Debugging
Software Design Patterns
Github
Gradle
Hibernate
Java Persistence API
Spring
JUnit
PostgreSQL
Maven
Message Broker
Microsoft SQL Server
MongoDB
MySQL
NoSQL
Object-Oriented Software Development
Oracle Applications
Performance Tuning
Scrum
RabbitMQ
Redis
Mockito
Software Engineering
SQL Databases
Web Services
Multithreading
Google Cloud Platform
Test Driven Development
React
System Availability
Spring-boot
Backend
GIT
Containerization
Angular
Gitlab-ci
Kubernetes
Information Technology
Cassandra
Kafka
Build Tools
Front End Software Development
REST
Software Version Control
Docker
Jenkins
Microservices

Job description

We are looking for a highly skilled and experienced Senior Java Developer to join our engineering team. The ideal candidate will be responsible for designing, developing, and maintaining high-performance, scalable, and resilient applications using modern Java technologies. This role requires strong technical expertise, a passion for problem-solving, and the ability to contribute significantly to our product development lifecycle, from concept to deployment. The Senior Java Developer will also mentor junior team members and contribute to architectural discussions., * Design, develop, and maintain robust, scalable, and high-performance backend applications and services using Java and the Spring ecosystem (Spring Boot, Spring Framework).

  • Write clean, efficient, well-documented, and testable code following best practices and design patterns.
  • Collaborate with product owners, architects, and other developers to understand requirements, define technical specifications, and deliver innovative solutions.
  • Participate in all phases of the software development lifecycle, including analysis, design, development, testing, deployment, and support.
  • Optimize application performance, identify bottlenecks, and implement solutions to ensure high availability and responsiveness.
  • Conduct code reviews, provide constructive feedback, and ensure adherence to coding standards and architectural guidelines.
  • Troubleshoot and debug complex issues in development and production environments.
  • Mentor junior developers, share knowledge, and contribute to a culture of continuous learning and improvement.
  • Stay up-to-date with emerging technologies, industry trends, and best practices in Java development and software engineering.

Requirements

Do you have experience in Web services?, Do you have a Master's degree?, * Bachelor's or Master's degree in Computer Science, Software Engineering, or a related technical field.

  • Professional experience in Java development.
  • Strong expertise in Core Java, including multithreading, data structures, algorithms, and object-oriented design principles.
  • Extensive experience with Spring Framework and Spring Boot for building microservices and RESTful APIs.
  • Solid understanding and hands-on experience with relational databases (e.g., PostgreSQL, Oracle, MySQL, SQL Server), including advanced SQL, schema design, and ORM frameworks (e.g., Hibernate, JPA).
  • Experience with building and consuming RESTful web services.
  • Proficiency with build tools such as Maven or Gradle.
  • Experience with version control systems, particularly Git.
  • Familiarity with Agile development methodologies (Scrum, Kanban).
  • Strong problem-solving skills, attention to detail, and ability to work independently and as part of a team.
  • Excellent communication skills, both written and verbal., * Experience with NoSQL databases (e.g., MongoDB, Cassandra, Redis).
  • Familiarity with cloud platforms (e.g., AWS, Azure, GCP) and containerization technologies (e.g., Docker, Kubernetes).
  • Experience with message brokers (e.g., Kafka, RabbitMQ).
  • Knowledge of testing frameworks (e.g., JUnit, Mockito) and experience with Test-Driven Development (TDD).
  • Understanding of CI/CD pipelines and tools (e.g., Jenkins, GitLab CI, GitHub Actions).
  • Experience with performance tuning and optimization of Java applications.
  • Familiarity with front-end technologies (e.g., JavaScript, React, Angular) is a plus, but not required for this backend-focused role.

Apply for this position