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 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. The Credit Risk Technology Team is responsible for delivering Counterparty Credit Risk Management software solutions to Citi's Risk organization and RWA integrity team for regulatory reporting. This team manages Citi's exposure to financial institutions, governments, and corporates that trade with Citi. The team builds and maintains software used to compute metrics that help mitigate Citi's exposure to counterparty default, including computation of Collateral Allocation for Portfolios, Haircut for Security and Cash Collateral, Collateral Concentration Levels, Wrong Way Risk, Pre-settlement exposure, Exposure At Default, and Risk-weighted assets, amongst others.
Job Responsibility:
Conduct tasks related to feasibility studies, time and cost estimates, IT planning, risk technology, applications development, model development, and establish and implement new or revised applications systems and programs to meet specific business needs or user areas
Monitor and control all phases of development process and analysis, design, construction, testing, and implementation as well as provide user and operational support on applications to business users
Utilize in-depth specialty knowledge of applications development to analyze complex problems/issues, provide evaluation of business process, system process, and industry standards, and make evaluative judgement
Recommend and develop security measures in post implementation analysis of business usage to ensure successful system design and functionality
Consult with users/clients and other technology groups on issues, recommend advanced programming solutions, and install and assist customer exposure systems
Ensure essential procedures are followed and help define operating standards and processes
Serve as advisor or coach to new or lower level analysts
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
Keep applications lean, resilient, robust, self-healing, and scalable
Taking ownership of all applications in the assigned sub-domain within Risk Technology
Interacting with Business users / Business Analysts to understand the requirements
Ensuring complete understanding of application code through compilation, code walkthrough, execution flow, and overall design
Performing local compilation, deployment, and behavior/Unit testing
Identifying areas for code changes to meet required functionalities and maintain traceability
Participating in design review, code review, and project review meetings (local/global)
Hands-on development using required IDEs & related plugins, SQL client
Unit testing, Integration testing, UAT/SIT support
Managing Code check-ins, check-outs, merges, and build management
Maintaining technical thought leadership and disseminating knowledge to the team and peers
Bringing excellence in terms of behavioral, technical, and architectural leadership in collaboration with global teams
Requirements:
8-11 years of relevant experience
Experience in systems analysis and programming of software applications
Experience in managing and implementing successful projects
Working knowledge of consulting/project management techniques/methods
Ability to work under pressure and manage deadlines or unexpected changes in expectations or requirements
Bachelor’s degree/University degree or equivalent experience
8 to 11 years of strong experience in Java/J2EE, Spring, Hibernate, (and with Spark Preferable) with expertise in design, development, performance tuning, troubleshooting and deployment
Good understanding of WebSphere, and Linux or Unix operating systems
Should be well versed with designing and architecting solutions with latest tech advancements
Familiar with standard SDLC and Agile processes
Hands on working experience and ability to motivate and lead the team
Experience with latest technology in areas of Distributed Computing and Big Data ecosystem
Solid understanding of SOA concepts, RESTful API design
Strong OOP fundamentals and programming languages and web frameworks
Knowledge of cloud computing and deployment strategies using virtual environments
Ability to prioritize and manage schedules under tight, fixed deadlines
Ability to produce professional, technically-sound, and visually-appealing presentations and architecture designs
Strong writing, communication, time-management, decision-making, and basic task organization skills
Experience creating high level technical/process documentation and presentations for audiences at various levels
Experience writing/editing technical, business, and process documentation in an Information Technology/Engineering environment
Must have worked on Oracle RDBMS
Should be good at data models and have an understanding of relational database systems
Must be able to understand requirements & convert to technical design and code
Knowledge of source code control systems, unit test framework, build and deployment tools
Experienced with large scale programs rollout and ability to create and maintain details WBS project plans
Must be able to work independently as well as in a team environment
Must be able to adapt to a rapidly changing environment
Ability to write SQL Queries and PL/SQL to analyze data
Good knowledge of design patterns
Build scripts like Ant, Maven
Experience with any version of Eclipse as a development environment
ETL, ELT, and data warehousing concepts
Extensive development experience (minimum 8+ years) in designing and building applications
Java/J2EE/RDBMS/Unix Shell Scripting
Microservices on cloud
Experience in NoSQL DB like MongoDB or any cache
Ensuring processes are followed and driving efficiency
SDLC Aware & coordination and working with remote teams
Knowledge of quality issues in software development
Experience working cooperatively in small to medium-sized teams
Proactive and self-motivated
Good problem solver
Ability to understand human issues/sentiments and channelize them for better delivery
Good design and coding discipline
Ability to troubleshoot conflicts and people issues
Strong design & execution bend of mind
Conceptual understanding of design patterns
Thorough understanding of OO methodologies
Passion for technology and self-starter
Orientation towards disciplined development processes
B.Tech from a top engineering college/university, preferably in Computer Science, EE, or ECE branches
A substantial part of experience should be in top-notch IBs/Banks and product companies
Experience with AI co-pilot and other AI-driven development tools is highly valued
Efficient Prompting: Demonstrating expertise in crafting clear, concise, and effective prompts to maximize the utility of AI co-pilots for code generation, debugging, refactoring, and documentation
Code Optimization: Utilizing AI tools to identify and implement performance improvements, security enhancements, and adherence to best practices within Java/J2EE applications
Automated Testing Support: Employing AI capabilities to generate test cases, analyze code coverage, and streamline testing processes for faster and more reliable deployments
Knowledge Sharing: Promoting the adoption of AI development tools within the team and contributing to best practices for their efficient and accurate use
Nice to have:
Caching Frameworks
IOC framework like Juice
Development Best Practices
Test-driven development
Experience with Caches (e.g., GemFire/Redis/Hazelcast)