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).
The Applications Development Intermediate 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.
Job Responsibility
Utilize knowledge of applications development procedures and concepts, and basic knowledge of other technical areas to identify and define necessary system enhancements, including using script tools and analyzing/interpreting code
Consult with users, clients, and other technology groups on issues, and recommend programming solutions, install, and support customer exposure systems
Apply fundamental knowledge of programming languages for design specifications
Analyze applications to identify vulnerabilities and security issues, as well as conduct testing and debugging
Serve as advisor or coach to new or lower level analysts
Identify problems, analyze information, and make evaluative judgements to recommend and implement solutions
Resolve issues by identifying and selecting solutions through the applications of acquired technical experience and guided by precedents
Has the ability to operate with a limited level of direct supervision
Can exercise independence of judgement and autonomy
Acts as SME to senior stakeholders and /or other team members
Appropriately assess risk when business decisions are made, demonstrating particular consideration for the firm's reputation and safeguarding Citigroup, its clients and assets, by driving compliance with applicable laws, rules and regulations, adhering to Policy, applying sound ethical judgment regarding personal behavior, conduct and business practices, and escalating, managing and reporting control issues with transparency
Requirements
Expert-Level Python Development: 5-8 years of experience building robust, production-grade backend services and applications using modern Python frameworks (e.g., FastAPI, Flask, Django)
Must-Have AI/LLM Application Expertise: Proven, hands-on experience building and deploying solutions using Large Language Models (LLMs). This includes designing complex agentic workflows, deep practical knowledge of Retrieval-Augmented Generation (RAG) pipelines, and leveraging frameworks like LangChain or LlamaIndex. Familiarity with enterprise-grade agent development kits (e.g., Google ADK) is highly preferred
Distributed Systems Design: Strong experience with designing and building distributed, event-driven systems. Familiarity with message brokers (e.g. Kafka) is also highly preferred
Full Software Development Lifecycle (SDLC) Acumen: Deep understanding of the entire SDLC, from architecture and system design to development, testing, CI/CD, and deployment in a large-scale enterprise environment
Cloud-Native & DevOps Expertise: Solid experience with containerization (Docker) and deploying and managing applications at scale on orchestration platforms like Kubernetes or OpenShift
Bachelor’s degree/University degree or equivalent experience
Should have relevant experience of 5-7 years
Proficient in Java and Spring technologies
Good understanding of SQL and database concepts
Nice to have
Knowledge of AI and Python (preferred)
Understanding of Kafka (preferred)
Experience with AI tools like Devin, Copilot, etc.