This list contains only the countries for which job offers have been published in the selected language (e.g., in the French version, only job offers written in French are displayed, and in the English version, only those in English).
This job opening will help Citi to build sophisticated solutions that will be targeting 100% digitalization and automation of the applications. Responsibilities of this role is building and supporting the banking applications. As an application developer, candidate is expected to have good analytical thinking, problem solving, good programming/technical fundamentals and eagerness to learn new technologies/concepts. Candidate must be open to accept challenges and suggestions.
Job Responsibility:
Building and supporting the banking applications
Building sophisticated solutions that will be targeting 100% digitalization and automation of the applications
Requirements:
6+ years Backend Application development experience
5+ years hands-on core Java, functional programming and Springboot Microservices Distributed system, Kubernetes, Kafka, Mongo DB development experience
5+ years experience and understanding of secure coding practices, SSL/TLS, OAuth, and JWT token handling in Java-based applications
5+ years experience and expertise in integrating Java with NoSQL databases such as MongoDB for scalable, high availability applications
3+ years experience in data modeling and experience with relational and no-SQL database, Oracle and MongoDB
Understanding of concurrent and parallel programming, including threads, processes, synchronization, and handling race conditions
Knowledge of reactive programming for building asynchronous, event/message-driven systems in microservices based applications that are highly concurrent
Proficient in containerizing applications, continuous integration, and continuous delivery in Java ecosystem
Knowledge of distributed tracing and API Gateway integration for microservices architecture
Proficient in functional programming concepts with Streams API, Lambda Expressions and Optional
Understanding of integrating APIs with third party libraries/vendors and handle the security around it
Understanding of the principles of distributed systems, including data partitioning, replication, and consistency models
Strong grasp of data structures and algorithms, especially those relevant to distributed systems like distributed hash tables and load balancing techniques
Understanding of microservices architecture, including service discovery, API gateways, and inter-service communication
Exceptional Problem-Solving and Analytical Skills to diagnose and resolve issues in distributed environments
Above average skills in monitoring, logging, and debugging distributed systems to ensure reliability and performance
Expertise in fundamental concepts such as consistency, availability, partition tolerance, fault tolerance, and scalability
Familiarity with container orchestration (e.g., Kubernetes), and distributed messaging systems (e.g., Kafka)
Experience using Git/BitBucket
Good communication skills, both written and verbal
Bachelor’s degree/University degree in Computer Science, Computer Engineering, Information Technology or equivalent work experience
Nice to have:
Unix shell scripting
Knowledge of ElasticSearch, and GraphQL
Experience with building apps which are highly performant and scalable will be great
Knowledge of Generating Artificial Intelligence (AI), Machine Learning (ML), and Large Language Models (LLMs)