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).
Citi is embarking on a multi-year technology initiative in the Wealth Tech Banking & Payment Technology Space. In this Journey, we are looking for a highly motivated hands-on senior developer. We are building a platform that supports various Messaging, API, and Workflow Components for Banking and Payment Services across the bank. The solution will be built from scratch using the latest technologies. The candidate will be a core member of the technology team responsible for implementing projects based on Java, Spring Boot, and Kafka using the latest technologies. This is an excellent opportunity to immerse in and learn within the wealth tech banking division and gain exposure to business and technology initiatives targeted to maintain a lead position among its competitors. We work in a Hybrid-Agile Environment. The Applications Development Intermediate 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:
Individual Contributor: Write good quality code in Java, Spring Boot (and related stack)
Well versed with JUnit, Mockito, Integration Tests, and Performance Tests
Individual Contributor: Write good quality code in Java and Angular JS 16
Well versed with UI/UX Designs and unit testing using Jest
Ability to design and develop components with minimal assistance
Ability to effectively interact and collaborate with the development team
Ability to effectively communicate development progress to the Project Lead
Work with developers onshore, offshore, and matrix teams to implement a business solution
Write user and support documentation
Evaluate and adopt new dev tools, libraries, and approaches to improve delivery quality
Perform peer code review of project codebase changes
Act as SME to senior stakeholders and/or other team members
Utilize knowledge of applications development procedures and concepts, and basic knowledge of other technical areas to identify and define necessary system enhancements, including using script tools and analyzing/interpreting code
Consult with users, clients, and other technology groups on issues, and recommend programming solutions, install, and support customer exposure systems
Apply fundamental knowledge of programming languages for design specifications
Analyze applications to identify vulnerabilities and security issues, as well as conduct testing and debugging
Serve as an advisor or coach to new or lower-level analysts
Identify problems, analyze information, and make evaluative judgments to recommend and implement solutions
Resolve issues by identifying and selecting solutions through the application of acquired technical experience and guided by precedents
Has the ability to operate with a limited level of direct supervision
Can exercise independence of judgment and autonomy
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
Requirements:
5-8 years of relevant experience
Spring Framework: Good knowledge of Spring, including Spring Boot, Spring Security, Spring Web, and Spring Data
Core Java: Good knowledge of Threading, Collections, Exception Handling, JDBC, Java OOD/OOP Concepts, GoF Design Patterns, and SOA Design Patterns
Data Handling: File I/O, parsing XML and JSON, delimited files, fixed-length files, String matching, parsing, building, and working with binary data/byte arrays
UI/UX: Good knowledge of UI/UX Design, Angular JS, and Jest for unit testing
Database: Good knowledge of SQL (DB2/Oracle dialect is preferable)
Architecture: Experience working with SOA & Micro-services utilizing REST
Cloud & DevOps: Experience with design and implementations of cloud-ready applications and deployment pipelines on large-scale container platform clusters is a plus. Experience working in a Continuous Integration and Continuous Delivery (CI/CD) environment and familiarity with Tekton, Harness, Jenkins, Code Quality, etc.
Best Practices: Knowledge in industry-standard best practices such as Design Patterns, Coding Standards, Coding modularity, Prototypes, etc.
Performance: Experience in debugging, tuning, and optimizing components
SDLC: Understanding of the SDLC lifecycle for Agile methodologies
Nice to have:
Experience with design and implementations of cloud-ready applications and deployment pipelines on large-scale container platform clusters is a plus
Experience working in a Continuous Integration and Continuous Delivery (CI/CD) environment and familiarity with Tekton, Harness, Jenkins, Code Quality, etc.