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.
Responsibilities:
-
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
-
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.
Qualifications:
-
8-12 years of relevant experience in Apps Development role with hands on
coding using Java, Kafka, Big Data Framework and distributed systems
-
In depth knowledge of
Java, Spring, Kafka, Distributed Cache/Systems (e.g. Apache Ignite, Redis)
-
Hands on experience on relational databases like Oracle
-
Any experience with NoSQL databases like MongoDB or Apache Iceberg is
preferred
-
Experience with
Python is preferred
-
Great exposure to microservices architecture.
-
API first design thinking and implementation using Rest, websocket and gRPC
-
Experience with building applications on cloud platform such as Docker,
Kubernetes or OpenShift
-
Proven implementation of design pattern and enterprise level architecture
-
Strong analytical, troubleshooting and problem-solving skills
-
Excellent verbal and written communication skills
-
Able to work independently and as part of a team
-
Able to multi-task and prioritize tasks effectively.
-
Strong organizational and project management skills
-
UI tech stack knowledge will be advantage.
Education:
-
Bachelor’s degree/University degree or equivalent experience