The Data Architecture Intmd is is a developing professional role responsible for participation in the establishment and implementation of new or revised application systems and programs. The overall objective of this role is to contribute to applications systems analysis and programming activities.
The Role
From a technical standpoint, the Software Engineer has full-stack coding and implementation responsibilities and adheres to best practice principles, including modern cloud-based software development, agile and scrum, code quality, and tool usage. The Software Engineer works to understand and influence software architecture, while contributing to Citi’s technical user base.
Must have technical skills:
Proficient in Java
OO Paradigm:
OO concepts, Exception Handling, Collections, DS and Algo, Memory mgmt, threadingFunctional Programming:
Pure functions, persistent data structures, alternatives to loops, side effectsHands on in at least one containerization platform like Docker, Kubernetes, OpenShift
Solid understanding of JS/HTML/CSS, Hands on one modern JS framework like Angular
Hands on with Dev Ops concepts, Exposure to CICD Pipeline technologies like Sonar, Jenkins, RLM.GIT Version control management
Exposure to Agile delivery - Scrum/KanBan, Hands on experience of JIRA
Spring framework, Microservices with Spring Boot, Intermediate understanding of RESTful services, Intermediate understanding of SQLDBs like Oracle, MySQL or NoSQL DBs like Mongo DB, SQL Language, Junit testing, Sonar overview, Good exposure to Unix, Basics of messaging services.
Preferred technical skills:
Exposure to multiple languages:
Language agnostic across Java, Python, Node JSObject Oriented:
Exposure to advanced topics like JVM monitoring, performance.Deeper understanding of one containerization platform or worked with multiple platforms.
Basics of Job scheduler like Autosys, Certification on any of the above topics, Basics of Entitlement management Experience with any of the following: API Management tools, event-driven design and architecture (i.e., Kafka, Spark Flink, etc.), or Microservices frameworks
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
- Develop and engineer solutions within an Agile software delivery team, working to collaboratively deliver sprint goals, write code, and participate in the broader Citi technical community and team-level Agile and Scrum processes.
- 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
- Take pride in designing solutions, developing the code free from defects and vulnerabilities, meeting functional and non-functional requirements by following modern engineering practices, reducing rework, continuously addressing technical debt.
- Ensure essential procedures are followed and help define operating standards and processes
- Can exercise independence of judgement 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.
Outlook and expected approach:
- A passion for learning new technologies, and a desire for personal growth, through self-study, formal classes, or on-the-job training.
- A passion for building high quality products which customers love.
Qualifications:
- 4-8 years of professional experience as Full Stack software engineering experience in developing enterprise scale applications.
- 2-5 years Banking or Financial Services experience
- Expertise in building web applications using Java, Angular and Oracle technology stack.
- Expertise in enterprise integrations through RESTful APIs, Kafka messaging etc.
- Expertise in designing and optimizing the software solutions for performance and stability.
- Expertise in troubleshooting and problem solving.
- Expertise in Test driven development.
- Expertise in Authentication, Authorization, and Security.
Education:
- Bachelor’s degree/University degree or equivalent experience
Data Architecture
Time Type:
Full timeView the " " poster. View the .
View the .
View the