Working at Citi is far more than just a job. A career with us means joining a team of more than 230,000 dedicated people from around the globe. At Citi, you'll have the opportunity to grow your career, give back to your community and make a real impact.
The Application Development Sr Programmer Analyst is accountable for building Real Time APIs interfacing Customer Data Management applications. In-depth understanding of how own sub-function contributes to achieving the objectives of the function. Candidates with Customer Data Management experience is preferred. This role requires practicing of designing, describing, and building the solution engineering in relation to business problems associated with Customer Data Management. The ideal candidate is very hands on and requires a comprehensive understanding of building APIs using Java MicroServices. Excellent communication skills required to negotiate internally, often at a senior level. Some external communication/negotiation may be necessary. Responsible for executing functional strategy in area managed. Determines approach to implementing functional strategy. Accountable for end results, budgeting, planning, policy formulation and contribution to future strategy of the area(s). Provides advice and counsel related to the technology or operations of the business. Work impacts an entire area, which eventually affects the overall performance and effectiveness of the sub-function/job family.
Partner with multiple management teams to ensure appropriate integration of functions to meet goals as well as identify and define necessary system enhancements to deploy new products and process improvements
Resolve variety of high impact problems/projects through in-depth evaluation of complex business processes, system processes, and industry standards
Provide expertise in area and advanced knowledge of applications programming and ensure application design adheres to the overall architecture blueprint
Utilize advanced knowledge of system flow and develop standards for coding, testing, debugging, and implementation
Develop comprehensive knowledge of how areas of business, such as architecture and infrastructure, integrate to accomplish business goals
Provide in-depth analysis with interpretive thinking to define issues and develop innovative solutions
Serve as advisor or coach to mid-level developers and analysts, allocating work as necessary
Appropriately assess risk when business decisions are made, demonstrating 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.
Create solutions by developing, implementing, and maintaining Java based components and interfaces.
Strong knowledge on Microservice design pattern and creating agnostic high performance APIs
Design and Development using Java, Microservices working within Spring Framework/Spring Boot, Java 8 + functional programming, REST APIs and Junits
Strong understanding on concurrency and writing thread safe code.
Experience in developing solutions using Spring integration with various messaging system like EMS, Kafka, etc.
Experience with Spring Data for Relational and Non-Relation Database and write code for all CRUD operations
Experience with SQL and no-SQL query (MongoDB) to write basic operations.
Experience with securing API using different authentication mechanism- Ouath2, etc.
Responsible for Design, Development, Code reviews (peer review), Unit testing, providing support to testing team, Defect fixing, Defect triaging, Root causes Analysis and release / deployment support.
Experience on CICD tool and creating pipeline for build – Jenkins, RLM, etc.
Experience using various tools used in development– STS/IntelliJ, SoapUI, Postman, Bitbucket, Git, jMeter, etc.
Preferred to have understating of PaaS platform – PCF and CLI commands
Experience with GraphQL.
Familiar with Agile process and related tools like JIRA
5+ years of relevant experience in Apps Development or systems analysis role
5+ years of experience in building Microservices
5+ years of experience with Spring and Spring Boot, Microservices, Spring MVC, Spring Data, Spring Security, Spring Integration etc.
Extensive experience system analysis and in programming of software applications
Experience in managing and implementing successful projects
Subject Matter Expert (SME) in at least one area of Applications Development
Ability to adjust priorities quickly as circumstances dictate
Demonstrated leadership and project management skills
Consistently demonstrates clear and concise written and verbal communication
Bachelor's/University degree, Master's degree preferred