RAG System – Java & Python Microservices
Built two solo backend projects showcasing scalable API design and AI integration: a FastAPI Microservice and a Spring Boot AI Chatbot. The FastAPI Microservice features modular, async endpoints with dependency injection and RESTful patterns for maintainable, testable microservices—using FastAPI for high-performance APIs, Docker containerization, PostgreSQL/SQLModel storage, and Pydantic validation, plus service routing, auth, and clean separation of concerns. The Spring Boot AI Chatbot combines Spring Boot/Spring AI with OpenAI GPT models for domain-specific chats (e.g., bakery, legal, health assistants), built on Java 17, PromptTemplate, and Maven with a /chat endpoint, modular configs, and easy domain switching. Together, they honed API orchestration, containerization, AI integration, and prompt engineering across Python/Java ecosystems.
FastAPI: Used to build lightweight, high-performance APIs with asynchronous endpoints and dependency injection for modular, scalable microservices.Docker: Used to containerize the microservices, ensuring consistent environments and simplifying deployment and orchestration.PostgreSQL / SQLModel: Used for reliable, persistent data storage and object-relational mapping to simplify database operations within the microservice architecture.Pydantic: Applied for strict data validation and type enforcement, ensuring clean, predictable API requests and responses.Spring Boot: Used to develop structured RESTful APIs in Java with minimal configuration and strong scalability for the AI chatbot service.Spring AI & OpenAI API: Integrated to enable AI-powered conversational features and prompt-based interactions across multiple business domains.PromptTemplate: Used to manage dynamic prompt construction for flexible and reusable AI responses.Maven: Used for dependency management and project build automation within the Spring Boot chatbot application.