Java FullStack Engineer
About this role
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.
Responsibilities:
- 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 advisor or coach to new or lower level analysts
- Identify problems, analyze information, and make evaluative judgements to recommend and implement solutions
- Resolve issues by identifying and selecting solutions through the applications of acquired technical experience and guided by precedents
- 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-8years of relevant experience in the Financial Service industry
- Intermediate level experience in Applications Development role
- Consistently demonstrates clear and concise written and verbal communication
- Demonstrated problem-solving and decision-making skills
- Ability to work under pressure and manage deadlines or unexpected changes in expectations or requirements
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.
We are looking for an innovative and experienced Full Stack Engineer to join our forward-thinking product development team. In this role, you will be at the forefront of integrating cutting-edge Generative AI into our applications. The ideal candidate will possess a strong background in building robust backend systems with Java, creating dynamic user interfaces with Angular/React, and have hands-on experience developing applications that leverage Generative AI technologies. You will be responsible for the end-to-end design, development, and deployment of new features that redefine user interaction and create intelligent, next-generation experiences.
Key Responsibilities
- Full Stack Development: Design, develop, and maintain scalable, high-performance web applications, working across the entire technology stack from backend services to frontend UI using Angular/React.
- Backend Engineering: Build and enhance robust, secure, and scalable backend services and RESTful APIs using Java, primarily with the Spring Boot framework.
- Frontend Engineering: Develop modern, responsive, and intuitive user interfaces using Angular/React, TypeScript, and modern CSS frameworks, ensuring a seamless and engaging user experience.
- Generative AI Integration:
- Architect and implement solutions that integrate with Large Language Models (LLMs) and other Generative AI APIs.
- Apply prompt engineering techniques to optimize AI-driven interactions and outputs.
- Design and build systems incorporating Retrieval-Augmented Generation (RAG) patterns, utilizing vector databases and semantic search.
- Develop backend infrastructure to support AI features, including data processing pipelines and asynchronous task handling.
- Database Management: Design database schemas and interact with both SQL (Oracle, Postgres, Snowflake) and NoSQL (MongoDB) databases.
- Code Quality and Testing: Write clean, maintainable, and well-documented code. Implement unit, integration, and end-to-end tests to ensure application quality and reliability.
- Collaboration: Work closely with product managers, UI/UX designers, and other engineers to translate requirements into functional, user-centric features.
- Mentorship: Provide technical guidance and mentor junior engineers, fostering a culture of learning and excellence.
Required Qualifications & Technical Skills
- Experience: 5-7 years of professional experience in full-stack software development.
- Java Proficiency:
- Strong command of Java and object-oriented programming principles.
- Extensive hands-on experience with the Spring Boot framework for building microservices and REST APIs.
- Angular Proficiency:
- Deep expertise in Angular and TypeScript for building complex single-page applications.
- Strong understanding of Angular concepts such as components, services, routing, and state management
- Generative AI Experience:
- Demonstrable experience building applications that leverage Generative AI.
- Hands-on experience with APIs from major LLM providers
- Solid understanding of prompt engineering, RAG architecture, and the role of vector databases
- Web Technologies: Proficiency in HTML5, CSS3, and modern JavaScript (ES6+).
- Databases: Experience with both relational (SQL) and non-relational (NoSQL) databases.
- DevOps & Cloud: Familiarity with CI/CD pipelines, containerization using Docker, and deploying applications to a major cloud platform (AWS, Azure, or GCP).
Preferred Qualifications
- Experience with Python for scripting or AI/ML tasks.
- Knowledge of microservices architecture and container orchestration with Kubernetes.
- Familiarity with message queues (e.g., Solace).
- Experience with performance tuning and optimization for both backend and frontend applications.
- A portfolio of projects or a GitHub profile showcasing your work, especially any projects involving Generative AI.
------------------------------------------------------
Job Family Group:
Technology------------------------------------------------------
Job Family:
Applications Development------------------------------------------------------
Time Type:
Full time------------------------------------------------------
Most Relevant Skills
Please see the requirements listed above.------------------------------------------------------
Other Relevant Skills
For complementary skills, please see above and/or contact the recruiter.------------------------------------------------------
Citi is an equal opportunity employer, and qualified candidates will receive consideration without regard to their race, color, religion, sex, sexual orientation, gender identity, national origin, disability, status as a protected veteran, or any other characteristic protected by law.
If you are a person with a disability and need a reasonable accommodation to use our search tools and/or apply for a career opportunity review Accessibility at Citi.
View Citi’s EEO Policy Statement and the Know Your Rights poster.
