Responsible for the requirements analysis, system design, coding implementation and testing of the system.
Participate in the design and optimization of system architecture to enhance system performance and stability.
Maintain existing systems, resolve issues, and continuously optimize the system.
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:
5-8 years of relevant experience
Proficient in Java language, familiar with JVM principles, multithreading, collections, network programming and other basic knowledge.
Familiar with mainstream Java frameworks such as Spring/Spring Boot and MyBatis, with in-depth understanding and practical project experience.
Familiar with commonly used technologies in the big data ecosystem(Such as Hadoop, Spark, Kafka, etc.)
Familiar with Docker, Kubernetes container and possess practical experience in cloud-based technologies.
Good coding habits, familiar with common design patterns, able to write high-quality, maintainable code.
Good communication skills and teamwork sprit, able to quickly integrate into the team and adapt to the team culture.
Passionate about the technology, willing to accept challenges, and have the motivation to continuously learn new technologies.
Preference will be given if with frontend capabilities (HTML/JS/CSS/TS/Angular/React).
Experience in systems analysis and programming of software applications
Experience in managing and implementing successful projects
Working knowledge of consulting/project management techniques/methods
Ability to work under pressure and manage deadlines or unexpected changes in expectations or requirements
Education:
Bachelor’s degree/University degree or equivalent experience