Development of delivery reservation Chatbot

System Design
Backend
Agile Project
Development of delivery reservation Chatbot

Tech Stack

Python
Flask
Docker
AWS
MySQL

Description

Independently handled the entire development process—from requirements definition to AWS deployment—working fully remotely.

Developed a rule-based chatbot integrated into the LINE messaging platform to automate delivery reservations from users.

Adopted an agile-inspired approach by delivering core features in short development cycles, enabling frequent client feedback and iterative improvements.

Implemented morphological analysis using the Python library Janome to accurately process Japanese language input and extract relevant nouns for service execution.

Designed a custom session management system to track each user's progress in conversations, enabling step-by-step data collection within a browserless messaging environment.

Enabled automated PDF generation of reservation details, which were then sent to the registered dealership email address upon completion.

Developed in a Docker environment and deployed to AWS EC2 with Amazon RDS (MySQL), ensuring scalability and maintainability.

Through this project, I gained hands-on experience in end-to-end development, lightweight server design using Python Flask, containerization, and AWS deployment.

  • Delivered the full development lifecycle independently and remotely
  • Built a LINE-integrated chatbot to automate delivery reservations
  • Implemented morphological analysis for Japanese using Python Janome
  • Designed a session management system to track user progress in conversations
  • Automated PDF generation and email delivery of reservation details

Page Info

Adress Sugestion

When the user enters a zip code, the address is automatically retrieved. (Screenshots are for testing purposes only.)

/experience/chatbot/adress_sugestion.png

Step-by-Step user input

Users can input necessary information without stress by pressing buttons or entering text areas that appear on the messaging platform. If time is lost in the middle of a message, the user can continue typing, and if he/she wishes to cancel the operation, it can be terminated at any time. (Screenshots are for testing purposes only.)

/experience/chatbot/step_by_step_input.png/experience/chatbot/step_by_step_button.png