Citigroup Inc
Java Bigdata Developer
Working at Citi is far more than just a job. A career with us means joining a team of more than 230,000 dedicated people from around the globe. At Citi, you'll have the opportunity to grow your career, give back to your community and make a real impact. Job Overview
The Applications Development Senior Programmer Analyst is an intermediate level position responsible for participation in the establishment and implementation of new or revised application systems and programs in coordination with the Technology team. The overall objective of this role is to contribute to applications systems analysis and programming activities. Responsibilities: Design, develop, and maintain robust, scalable, and high-performance backend services and RESTful APIs using Java and Spring Boot. Collaborate with cross-functional teams, including product managers, front-end developers, and QA engineers, to define, design, and ship new features. Write clean, maintainable, and well-documented code following industry best practices and internal standards. Participate in all phases of the development lifecycle, including requirements gathering, design, coding, testing, deployment, and maintenance. Implement security and data protection best practices within our applications. Troubleshoot, debug, and upgrade existing systems to ensure optimal performance and reliability. Participate in code reviews to maintain code quality and share knowledge with the team. Contribute to the continuous improvement of our development processes, tools, and architecture. Qualifications: Experience: 4+ years of hands on experience in software development with a strong focus on Java and Rest API. Core Java: Deep understanding of core Java concepts, data structures, and algorithms. Spring Framework: Extensive hands-on experience with the Spring Framework, particularly Spring Boot, Spring MVC, and Spring Data. RESTful APIs: Proven experience in designing, building, and consuming RESTful web services. Solid understanding of HTTP, JSON, and API design principles. Databases: Proficiency in working with both SQL (e.g., PostgreSQL, MySQL) and NoSQL (e.g., MongoDB, Cassandra) databases. Microservices: Experience with microservices architecture, including design patterns and principles. Build Tools: Familiarity with build automation tools like Maven or Gradle. Version Control: Proficient in using Git for version control. Testing: Experience with unit and integration testing frameworks such as JUnit, Mockito, and Spring Test. Education: Bachelor's degree/University degree or equivalent experience.
Working at Citi is far more than just a job. A career with us means joining a team of more than 230,000 dedicated people from around the globe. At Citi, you'll have the opportunity to grow your career, give back to your community and make a real impact. Job Overview
The Applications Development Senior Programmer Analyst is an intermediate level position responsible for participation in the establishment and implementation of new or revised application systems and programs in coordination with the Technology team. The overall objective of this role is to contribute to applications systems analysis and programming activities. Responsibilities: Design, develop, and maintain robust, scalable, and high-performance backend services and RESTful APIs using Java and Spring Boot. Collaborate with cross-functional teams, including product managers, front-end developers, and QA engineers, to define, design, and ship new features. Write clean, maintainable, and well-documented code following industry best practices and internal standards. Participate in all phases of the development lifecycle, including requirements gathering, design, coding, testing, deployment, and maintenance. Implement security and data protection best practices within our applications. Troubleshoot, debug, and upgrade existing systems to ensure optimal performance and reliability. Participate in code reviews to maintain code quality and share knowledge with the team. Contribute to the continuous improvement of our development processes, tools, and architecture. Qualifications: Experience: 4+ years of hands on experience in software development with a strong focus on Java and Rest API. Core Java: Deep understanding of core Java concepts, data structures, and algorithms. Spring Framework: Extensive hands-on experience with the Spring Framework, particularly Spring Boot, Spring MVC, and Spring Data. RESTful APIs: Proven experience in designing, building, and consuming RESTful web services. Solid understanding of HTTP, JSON, and API design principles. Databases: Proficiency in working with both SQL (e.g., PostgreSQL, MySQL) and NoSQL (e.g., MongoDB, Cassandra) databases. Microservices: Experience with microservices architecture, including design patterns and principles. Build Tools: Familiarity with build automation tools like Maven or Gradle. Version Control: Proficient in using Git for version control. Testing: Experience with unit and integration testing frameworks such as JUnit, Mockito, and Spring Test. Education: Bachelor's degree/University degree or equivalent experience.