WannaWork - Job Matching
Software Engineering Project at the University of Trento
What is WannaWork?
WannaWork is a Single Page Application designed to facilitate local job matching. It connects students, who can create profiles, upload resumes, and search for part-time jobs, with local employers, who can post jobs and manage applications.
The Problem & Solution
It was created to solve the difficulty students face in finding flexible part-time jobs and to digitize local job hunting, which often still relies on paper resumes. By centralizing this process, it creates a direct bridge between small businesses and local youth, boosting the economy and youth employment.
My Role in the Team
This was a group project. I actively contributed to the initial analysis phase (D1) and was entirely responsible for drafting the design document (D2), developing the complete codebase (Frontend and Backend), and writing the final self-evaluation (D4). The D3 document and the Business Plan were handled by other team members and are included here only for project completeness.
Tech Stack
- Frontend: Vue.js 3 (Composition API), Pinia, Vue Router, TailwindCSS, and DaisyUI.
- Backend: Node.js, Express.js (RESTful APIs), JWT for stateless authentication, bcryptjs.
- Database: MongoDB (NoSQL) with Mongoose ODM.
- Testing & DevOps: Jest, Supertest, OpenAPI (Swagger), Docker, Nginx, Let's Encrypt. Dual deployment (Render.com and Self-Hosted on Arch Linux).