Job Overview
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.
Responsibilities:
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.
Qualifications:
0-2 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
Education:
Bachelor’s degree/University degree or equivalent experience
This job description provides a high-level review of the types of work performed. Other job-related duties may be assigned as required.
Technical Essential:
•Full stack development lead within depth knowledge and application of Core Java, Spring Framework, RESTFUL APIs, ReactJS, CI/CD, RDBMS, and JavaScript, should be good in threading concepts.
•Experience in AI coding assistants platforms like Copilot, Devin AI tools
•Experience in all the software development life cycle along with Continuous Integration / Continuous Deployment (CI/CD) pipeline, SonarQube code quality tools, uDeploy.
•Hand-on experience in design patterns, middleware like Solace, Kafka & cache technologies like Apache Ignite.
•Experience creating custom, general use modules and components which extend the elements and modules of core ReactJS
•Well verse with the use of XML, JSON and REST services
•Thorough understanding of usage of the fundamental concepts like Exception Handling, Static block/variables/classes, OOPS concepts, Collections, Multi-Threading, http sessions, session handling, Servlets/JSP life cycle, JDBC, actions, events, implicit objects, custom tags, context
•Exposure to an industry-standard database (Oracle or Sybase) on a UNIX platform with awareness of database design and SQL scripting knowledge and performance tuning
•Awareness of application servers /webservers
•Work experience in testing frameworks like Junit, TestNG
•Work experience on the transactional applications for low latency, high availability uses is a plus
•Ability to work in a fast-paced and agile development environment and to learn new frameworks/technology stacks.
This job description provides a high-level review of the types of work performed. Other job-related duties may be assigned as required.