Skip to content

Student Profiler

Project: March 2025 — June 2025

Role: Backend / Data Engineer

Company: GOTOIT sp. z o.o.

Status: Production


Project description

Mentors and course instructors lacked a tool for systematic monitoring of student activity on Discord. Analysis of engagement, work regularity, and interaction history: - was scattered across many channels, - required manual message review, - provided no basis for automatic conclusions or scaling the mentoring process. There was no single, central system for collecting and analyzing data. I designed and developed Student Profiler — a tool for automatic monitoring of student activity in the Discord environment.

Solution

The core of the system is a Discord Bot that: - fetches historical data from channels, - listens for new messages and events in real-time, - saves data in a relational database, - feeds the analytical layer and user interface. The architecture is prepared for further development of AI-based features (humanized mentor bot, sentiment analysis, OCR, predictive models).

Architecture

System architecture


Main functionalities

  • Discord Bot integration for monitoring activity and automated messaging
  • Scheduled hourly data collection from Discord channels
  • Data storage system using PostgreSQL for messages and Digital Ocean Spaces for attachments
  • Streamlit-based UI for easy access and analysis of Discord data
  • Scalable architecture with future implementation plans for AI features

What I did

  1. Designed system architecture following Single Responsibility Principle
  2. Implemented Discord Bot for:
  3. fetching message history
  4. listening for new events
  5. handling automated responses
  6. Created hourly data collection scheduler
  7. Designed and deployed PostgreSQL database
  8. Integrated DigitalOcean Spaces for attachment storage
  9. Built analytical UI in Streamlit with Plotly visualizations
  10. Prepared Docker environment for local and cloud deployment
  11. Implemented application configuration using pydantic-settings

Skills

  • Python
  • Discord API
  • PostgreSQL
  • Streamlit
  • Docker
  • DigitalOcean
  • Pandas
  • SQL
  • Plotly
  • Psycopg
  • Requests
  • Schedule
  • Pydantic-settings
  • SRP design

Results

  • Central data source for student activity on Discord
  • Automatic and regular data collection without manual mentor intervention
  • Clear dashboard for engagement and trend analysis
  • Stable foundation for further AI feature development:
  • communication sentiment analysis
  • student activity drop prediction
  • humanized mentor bot

Sample photos

Dashboard overview Activity pie chart Activity box plot