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 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
Identify and analyze issues, make recommendations, and implement solutions
Utilize knowledge of business processes, system processes, and industry standards to solve complex issues
Analyze information and make evaluative judgements to recommend solutions and improvements
Conduct testing and debugging, utilize script tools, and write basic code for design specifications
Assess applicability of similar experiences and evaluate options under circumstances not covered by procedures
Develop working knowledge of Citi’s information systems, procedures, standards, client server application development, network operations, database administration, systems administration, data center operations, and PC-based applications
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
Design, develop, and maintain ETL pipelines to extract, transform, and load data from multiple sources into RDBMS and noSQL DB
Optimize data ingestion, storage, and retrieval for performance and scalability
Develop RESTful APIs using FastAPI to serve data and integrate with internal/external systems
Collaborate with cross-functional teams (data engineering, DevOps, product) to define requirements and deliver solutions
Ensure data integrity, consistency, and security across the pipeline
Write clean, maintainable, and well-documented code
Monitor, debug, and optimize ETL workflows and APIs in production
Stay updated with the latest trends in Python, ETL frameworks, and database technologies
Requirements:
3+ years of relevant experience
Experience in programming/debugging used in business applications
Working knowledge of industry practice and standards
Comprehensive knowledge of specific business area for application development
Working knowledge of program languages
Consistently demonstrates clear and concise written and verbal communication
3+ years of professional experience in Python development
Strong experience in building ETL pipelines and data integration workflows
Proficiency in schema design, queries
Hands-on experience with MongoDB (document design, aggregation pipelines, indexing)
Experience developing GraphQL ,REST APIs using FastAPI (or Flask/Django REST Framework with willingness to switch to FastAPI)
Solid understanding of data modeling and database best practices
Experience with asynchronous programming in Python
Familiarity with Docker and deployment on cloud environments (AWS/Azure/GCP) is a plus
Strong problem-solving and debugging skills
Good communication skills and ability to work in a collaborative team environment
Knowledge on Machine Learning and AI is advantageous
Bachelor’s degree/University degree or equivalent experience
Nice to have:
Familiarity with Docker and deployment on cloud environments (AWS/Azure/GCP) is a plus
Knowledge on Machine Learning and AI is advantageous