Lead integration of functions to meet goals, deploy new products, and enhance processes
Analyze complex business processes, system processes, and industry standards to define and develop solutions to high level problems
Provide expertise in area of advanced knowledge of applications programming and plan assignments involving large budgets, cross functional project, or multiple projects
Develop application methodologies and standards for program analysis, design, coding, testing, debugging, and implementation
Utilize advanced knowledge of supported main system flows and comprehensive knowledge of multiple areas to achieve technology goals
Consult with end users to identify system function specifications and incorporate into overall system design
Allocate work, and act as an advisor/coach developers, analysts, and new team members
Influence and negotiate with senior leaders and communicate with external parties
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.
Required Qualifications
10+ years of experience as a Software Engineer/Developer using Java
Multiple years of experience with software engineering best practices (architecture, system design, unit testing, automation, design patterns, peer review, etc.) working oh high-resilient global applications.
Clear understanding of Data Structures and Object Oriented Principles using Java
Multiple years of experience with Cloud-native development and Container Orchestration tools (Serverless, Docker, Kubernetes, OpenShift, etc.).
Multiple years of experience on Service Oriented and MicroServices architectures, including REST and GraphQL implementations
Multiple years of experience with frameworks like Spring Boot, Quarkus, Micronaut, or Vert.x
Exposure in financial or compliance applications
Exposure to architecture experience in building horizontally scalable, highly available, highly resilient, and low latency applications
Exposure to Cloud infrastructure both on-premise and public cloud (i.e., OpenShift, AWS, etc.)
Exposure to front-end technologies (Angular, Javascript, Typescript)
Exposure to Continuous Integration and Continuous Delivery (CI/CD) pipelines, either on-premise or public cloud (i.e., Tekton, Harness, CircleCI, Cloudbees Jenkins, etc.)
Multiple years of experience with agile and iterative software delivery (SCRUM, Kanban)
Exposure to Database technologies (RDBMS, NoSQL, Oracle, MySQL, Mongo)
Exposure to event-driven design and architecture (i.e., Kafka, Spark Flink, RabbitMQ, etc.
Exposure to API Management tools
Exposure to Infrastructure as Code tools (i.e., Terraform, Cloudformation, etc.)
Exposure to Security, Observability, and Monitoring tools (i.e., Grafana Prometheus, Splunk, ELK, CloudWatch, etc.)
Experience mentoring and providing technical leadership for teams of 50 or more developers
Education:
Bachelor’s degree/University degree or equivalent experience