DEVision Platform
Vietnamese tradition emphasizes the proverb “An Cư Lạc Nghiệp” (Settled and Flourished), highlighting the necessity of establishing a solid and fulfilling career as the foundation for prosperity and personal happiness. DEVision was created to embody this principle by bridging job applicants in the Computer Science fields with their potential employers.Platform Goals
Our primary goals are to:- Empower Applicants - Help job seekers find roles that align with their technical skills and career aspirations
- Assist Companies - Enable organizations to attract top talents that match their specific technical demands and long-term vision
System Architecture
DEVision is architected into two core subsystems:Job Applicant Subsystem
Provides tools for career advancement, job search, and application
management
Job Manager Subsystem
Platform for companies to manage recruitment and search for candidates
Saint Giong Team - Job Manager Subsystem
SGJM Team is responsible for developing the Job Manager Subsystem, which serves companies in their recruitment efforts.Core Capabilities
1. Company Management
- Secure registration and authentication
- Single Sign-On (SSO) support
- Comprehensive profile management
- Media uploads (logos, images, videos)
2. Job Post Management
- Create and publish job listings
- Manage employment types and requirements
- Tag technical skills and competencies
- Track applications (Pending/Archived)
3. Candidate Search
- Search applicants by location, education, and experience
- Full-text search across profiles
- Filter by technical skills
- Lazy loading for optimal performance
4. Premium Features
- Monthly subscription service ($30/month)
- Real-time notifications for matching candidates
- Define custom applicant search profiles
- Automatic candidate matching via Kafka messaging
5. Payment Integration
- Secure payment processing
- Third-party integration (Stripe/PayPal)
- Transaction recording and management
Integration with Job Applicant Subsystem
SGJM ↔ SGJA CollaborationTeam SGJM (Saint Giong Job Manager) and Team SGJA (Saint Giong Job Applicant) work together within the Saint Giong Squad to deliver the complete DEVision platform.Coordination Team:
- Phuc Vo (SGJM Primary Coordinator)
- Tung Nguyen (SGJM Secondary Coordinator)
APIs We Provide to SGJA
- Company Public Profile Data - Company information for job listings
- Job Post Data - Available positions and requirements
- Subscription Payment API - Shared payment service for both subsystems
- Authorization Services - Cross-system authentication when applicable
APIs We Consume from SGJA
- Applicant Profile Data - Job seeker information for search functionality
- Job Application API - Application submissions and tracking
- Authorization Services - Cross-system authentication when applicable
Shared Components
- Payment Service - Developed by SGJM team, used by both subsystems
- Kafka Topics - Shared messaging for real-time notifications
- Database Sharding Strategy - Coordinated across both subsystems
Development Methodology
Collaborative Development
- Methodology: SCRUM or Kanban
- Tools: Tuturuuu Kanban board for task management
- Reviews: Bi-weekly sprint reviews with the lecturer
Key Practices
- Iterative development approach
- Frequent GitHub commits
- Professional communication
- Active participation in meetings
Meeting Policy
- Attendance is mandatory
- 24-hour advance notice required for absences
- Valid justification and evidence required
- Penalties for unexcused absences
Project Milestones
Milestone 1 - November 28, 2025
Deliverables:- Conceptual Data Model (ER Diagram)
- System Architecture Diagrams
- 30-page Technical Report
- GitHub contribution proof
- Design data model with justifications
- Create architecture diagrams (UML or C4)
- Present system design decisions
- Demonstrate frequent GitHub usage
Milestone 2 - January 13, 2026
Deliverables:- Fully implemented system
- Deployed application (Docker/Kubernetes)
- API integration with Job Applicant subsystem
- Database initialization scripts
- Implement all functional requirements
- Deploy using Docker or Kubernetes
- Provide and consume APIs
- Demo integrated system
Initial Data Requirements
The system must be initialized with:Administrator
- One ADMIN account for system management
Companies
- 2 Freemium accounts (2 job posts each)
- 2 Premium accounts with specific subscriptions:
- Software Engineer hiring (React, Spring Boot, Docker)
- Data Engineer hiring (Python, AWS, Snowflake)
Applicants
- 5 APPLICANT accounts
- 2 from Vietnam, 2 from Singapore, 1 from another nation
- 2 Premium accounts (one from Vietnam, one from Singapore)
Architecture Complexity Levels
Simplex (Basic)
- N-Tier (Layer-based) architecture
- Frontend and backend separation
- Repository layer for queries
- Basic authentication and features
Medium
- Modular Monolith backend
- Componentized frontend
- Internal/External APIs
- REST HTTP Helper classes
- Advanced validation and security
Ultimo (Advanced)
- Microservices architecture
- Headless UI components
- Kafka message broker
- Database sharding
- Service discovery and API Gateway
- Kubernetes deployment (bonus)
Design Evaluation Criteria
All architectural decisions should be evaluated on:- Maintainability - Easy to understand, update, and test
- Extensibility - New features added with minimal impact
- Resilience - Continues functioning under unexpected conditions
- Scalability - Handles increased load efficiently
- Security - Protected from unauthorized access and threats
- Performance - Quick and efficient response to requests
Course Information
- Course: EEET2582/ISYS3461
- Project: Software Requirements Specification v1.1
- Institution: RMIT University
- Classification: RMIT Protected
This project is part of the Software Engineering curriculum at RMIT University
and follows strict academic and professional standards.