Senior Java Developer
Citi
Software Engineering
Pune, Maharashtra, India
We are seeking a highly skilled and motivated Java Developer to join our dynamic engineering team. The ideal candidate will be responsible for designing, developing, and maintaining high-quality, high-performance, and scalable Java-based applications. You will work closely with product managers, UX/UI designers, and other engineers to deliver cutting-edge software solutions.
Key Responsibilities:
- Design, develop, and implement new features and functionalities for Java-based applications, ensuring high performance, scalability, and maintainability.
- Write clean, efficient, well-documented, and testable code in Java.
- Participate in the entire application lifecycle, focusing on coding, debugging, and testing.
- Collaborate with cross-functional teams to define, design, and ship new features.
- Troubleshoot, debug, and upgrade existing systems.
- Conduct code reviews to ensure code quality and adherence to best practices.
- Identify and implement performance improvements and optimizations.
- Stay up-to-date with new technologies and industry trends, applying them to projects as appropriate.
- Contribute to all phases of the development lifecycle, including requirements gathering, design, development, testing, deployment, and support.
- Mentor junior developers and share knowledge within the team.
Required Skills and Qualifications:
- Bachelor's or Master's degree in Computer Science, Engineering, or a related field.
- 5+ years of professional experience in Java development.
- Strong proficiency in Java 8+ (including features like Lambdas, Streams, etc.).
- Solid understanding of object-oriented programming (OOP) principles and design patterns.
- Experience with Spring Framework (Spring Boot, Spring MVC, Spring Security, Spring Data JPA).
- Familiarity with relational databases (e.g., PostgreSQL, MySQL, Oracle) and ORM frameworks (e.g., Hibernate, JPA).
- Experience with RESTful APIs and microservices architecture.
- Proficiency with version control systems (e.g., Git).
- Experience with build tools (e.g., Maven, Gradle).
- Strong problem-solving skills and attention to detail.
- Excellent communication and teamwork abilities.
Preferred Skills (Nice to Have):
- Experience with cloud platforms (e.g., AWS, Azure, Google Cloud).
- Familiarity with containerization technologies (e.g., Docker, Kubernetes).
- Knowledge of message queues (e.g., Kafka, RabbitMQ).
- Experience with front-end technologies (e.g., JavaScript, React, Angular, Vue.js) for full-stack roles.
- Familiarity with continuous integration/continuous deployment (CI/CD) pipelines.
- Experience with Agile development methodologies (Scrum, Kanban).
- Understanding of testing frameworks (e.g., JUnit, Mockito).
------------------------------------------------------
Job Family Group:
Technology------------------------------------------------------
Job Family:
Applications Development------------------------------------------------------
Time Type:
Full time------------------------------------------------------
Most Relevant Skills
Please see the requirements listed above.------------------------------------------------------
Other Relevant Skills
For complementary skills, please see above and/or contact the recruiter.------------------------------------------------------
Citi is an equal opportunity employer, and qualified candidates will receive consideration without regard to their race, color, religion, sex, sexual orientation, gender identity, national origin, disability, status as a protected veteran, or any other characteristic protected by law.
If you are a person with a disability and need a reasonable accommodation to use our search tools and/or apply for a career opportunity review Accessibility at Citi.
View Citi’s EEO Policy Statement and the Know Your Rights poster.