Citigroup Inc.
Overview
About Citi: Citi is a leading global bank with operations in more than 160 countries and jurisdictions, offering a broad range of financial products and services to consumers, corporations, governments, and institutions. Citi emphasizes diversity, merit-based advancement, and opportunities for personal development. If you are a problem solver who seeks passion in your work, come join us. Job Description Summary: Citi Transaction Services, within Global Funds Services, is undergoing a multi-year transformation to modernize its trade processing, middle-office, and fund services applications. The initiative aims to create a robust, scalable, and configurable system for processing financial instruments using a cloud-ready technology stack, adaptable for future expansion. The transformation prioritizes platform efficiency, a consistent global operating model, enhanced capabilities, a robust data strategy, and value-added services. Our guiding principles include a service-oriented architecture with API capabilities, reliability and simplicity, low latency and high performance, multi-instruction processing for complex workflows, alignment with data strategy, automation to reduce manual touchpoints, and a modernized technology stack with technologies such as reactive microservices, streaming data processing, and distributed caching. We employ diverse database technologies (RDBMS and NoSQL) for flexibility and efficiency. We are looking for an Application Developer. The ideal candidate has strong server-side Java development experience (Spring Boot, Spring Cloud, Spring JPA, JDBC, Hibernate), functional programming, testing frameworks (JUnit, Mockito), RESTful/GraphQL APIs, messaging (Kafka, TIBCO EMS, IBM MQ), SFTP, microservices architecture (Kubernetes/Docker), CI/CD tools, and SQL/NoSQL databases. Front-end experience (React, JavaScript, HTML, CSS) is a plus. Strong communication, collaboration, and leadership skills are essential for success. Responsibilities: Collaborate with cross-functional teams to translate specifications into flexible, scalable, and maintainable solution designs and ensure alignment with architectural standards. Design and build complex solutions as part of development teams, ensuring alignment with target state architecture and strategies. Coordinate, execute, and participate in component integration (CIT), system integration testing (SIT), and user acceptance testing (UAT) to identify and resolve issues and ensure quality software deployment. Understand software design patterns, application-level architecture, and make technical trade-off decisions. Provide mentoring and guidance to junior engineers, offering feedback on engineering tasks. Maintain application hygiene and address Risk & Control items. Collaborate with Project Managers, Business Analysts, and Operational users/Product managers to deliver projects. Work independently on project deliverables, articulate issues, and communicate risks proactively. Handle code releases in various environments. Required Skills/Experience: 2+ years of Java backend development experience (Java 2+ preferred), including core Java, OOP, data structures, algorithms, and design patterns. Proficiency with Spring Boot, Spring JPA, Spring Cloud, JDBC, Hibernate, REST, and Maven is essential. Java 8+ features (lambdas, streams) and functional programming are required. Python is a plus. Data Transformation & Integration:
Experience transforming data between formats such as XML, JSON, and CSV using relevant libraries. Microservices Architecture:
Experience with microservices, Docker, Kubernetes/OpenShift, and cloud platforms (AWS, Azure, GCP). Knowledge of microservice design patterns is important. Messaging & Integration:
Experience with Kafka (consumers/producers) and streaming applications. Familiarity with TIBCO EMS and IBM MQ is desirable. SFTP is required. Database Technologies:
Solid SQL and NoSQL experience. MongoDB is preferred; relational databases (e.g., Oracle, PostgreSQL) are required. Stream Processing:
Experience with Kafka Streams and Apache Flink is a plus. Agile & Testing:
Experience in Agile environments using TDD/BDD. Proficiency with JUnit and Mockito for unit and integration testing is essential. DevOps & CI/CD:
Knowledge of DevOps principles and CI/CD practices. Experience with Jenkins, TeamCity, IBM UrbanCode Deploy, and SonarQube is desirable. API Development:
Experience designing and implementing RESTful and GraphQL APIs; knowledge of API security is preferred. WebSocket experience is a plus. Version Control:
Proficiency with Git/Bitbucket. Soft Skills:
Strong communication, analytical, problem-solving, and leadership abilities; ability to own tasks, collaborate, and convey technical concepts clearly. Education: Bachelor’s degree or equivalent experience; Master’s degree preferred. This job description provides a high-level review of the types of work performed. Other job-related duties may be assigned as required. Equal Opportunity Employer: Citi is an equal opportunity employer. Qualified candidates will receive consideration without regard to 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, please review Citi’s Accessibility at Citi and the Know Your Rights policy statements.
#J-18808-Ljbffr
About Citi: Citi is a leading global bank with operations in more than 160 countries and jurisdictions, offering a broad range of financial products and services to consumers, corporations, governments, and institutions. Citi emphasizes diversity, merit-based advancement, and opportunities for personal development. If you are a problem solver who seeks passion in your work, come join us. Job Description Summary: Citi Transaction Services, within Global Funds Services, is undergoing a multi-year transformation to modernize its trade processing, middle-office, and fund services applications. The initiative aims to create a robust, scalable, and configurable system for processing financial instruments using a cloud-ready technology stack, adaptable for future expansion. The transformation prioritizes platform efficiency, a consistent global operating model, enhanced capabilities, a robust data strategy, and value-added services. Our guiding principles include a service-oriented architecture with API capabilities, reliability and simplicity, low latency and high performance, multi-instruction processing for complex workflows, alignment with data strategy, automation to reduce manual touchpoints, and a modernized technology stack with technologies such as reactive microservices, streaming data processing, and distributed caching. We employ diverse database technologies (RDBMS and NoSQL) for flexibility and efficiency. We are looking for an Application Developer. The ideal candidate has strong server-side Java development experience (Spring Boot, Spring Cloud, Spring JPA, JDBC, Hibernate), functional programming, testing frameworks (JUnit, Mockito), RESTful/GraphQL APIs, messaging (Kafka, TIBCO EMS, IBM MQ), SFTP, microservices architecture (Kubernetes/Docker), CI/CD tools, and SQL/NoSQL databases. Front-end experience (React, JavaScript, HTML, CSS) is a plus. Strong communication, collaboration, and leadership skills are essential for success. Responsibilities: Collaborate with cross-functional teams to translate specifications into flexible, scalable, and maintainable solution designs and ensure alignment with architectural standards. Design and build complex solutions as part of development teams, ensuring alignment with target state architecture and strategies. Coordinate, execute, and participate in component integration (CIT), system integration testing (SIT), and user acceptance testing (UAT) to identify and resolve issues and ensure quality software deployment. Understand software design patterns, application-level architecture, and make technical trade-off decisions. Provide mentoring and guidance to junior engineers, offering feedback on engineering tasks. Maintain application hygiene and address Risk & Control items. Collaborate with Project Managers, Business Analysts, and Operational users/Product managers to deliver projects. Work independently on project deliverables, articulate issues, and communicate risks proactively. Handle code releases in various environments. Required Skills/Experience: 2+ years of Java backend development experience (Java 2+ preferred), including core Java, OOP, data structures, algorithms, and design patterns. Proficiency with Spring Boot, Spring JPA, Spring Cloud, JDBC, Hibernate, REST, and Maven is essential. Java 8+ features (lambdas, streams) and functional programming are required. Python is a plus. Data Transformation & Integration:
Experience transforming data between formats such as XML, JSON, and CSV using relevant libraries. Microservices Architecture:
Experience with microservices, Docker, Kubernetes/OpenShift, and cloud platforms (AWS, Azure, GCP). Knowledge of microservice design patterns is important. Messaging & Integration:
Experience with Kafka (consumers/producers) and streaming applications. Familiarity with TIBCO EMS and IBM MQ is desirable. SFTP is required. Database Technologies:
Solid SQL and NoSQL experience. MongoDB is preferred; relational databases (e.g., Oracle, PostgreSQL) are required. Stream Processing:
Experience with Kafka Streams and Apache Flink is a plus. Agile & Testing:
Experience in Agile environments using TDD/BDD. Proficiency with JUnit and Mockito for unit and integration testing is essential. DevOps & CI/CD:
Knowledge of DevOps principles and CI/CD practices. Experience with Jenkins, TeamCity, IBM UrbanCode Deploy, and SonarQube is desirable. API Development:
Experience designing and implementing RESTful and GraphQL APIs; knowledge of API security is preferred. WebSocket experience is a plus. Version Control:
Proficiency with Git/Bitbucket. Soft Skills:
Strong communication, analytical, problem-solving, and leadership abilities; ability to own tasks, collaborate, and convey technical concepts clearly. Education: Bachelor’s degree or equivalent experience; Master’s degree preferred. This job description provides a high-level review of the types of work performed. Other job-related duties may be assigned as required. Equal Opportunity Employer: Citi is an equal opportunity employer. Qualified candidates will receive consideration without regard to 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, please review Citi’s Accessibility at Citi and the Know Your Rights policy statements.
#J-18808-Ljbffr