Software Design & Architecture • 2025

This project is a web platform that allow users to exchange skills with each other, making expertise accessible without financial transactions. For instance, a guitar player could trade lessons with a computer science teacher.
My Role: In this project I was responsible for developing the Admin Panel of the application for the admins, using a Layered N-Tier Architecture. I built functionalities to manage user roles and statuses, and enabling edits or removals. I developed the front-end and a simple back-end for these features.
The requirements phase was where we captured the functional and non-functional needs from the stakeholders of the application, which those include regular users and administrators.
These requirements emphasized modularity, real-time updates, and secure access control for administrators.
In my module of the application, the admin panel, I chose the Layered N-Tier Architecture to design a three-layer architecture containing the following tools:
The diagram below shows how React components, state management (Redux), and Firestore are layered, ensuring a clean separation of concerns and scalability.

The front-end prototype is fully functional, hosted on GitHub Pages, and it showcases the following:
Technologies like Material UI and Redux were used for the state management and UI consistency. The backend prototype includes a simple implementation to Firestore database that is hooked to the redux.
Assessed using the Architecture Tradeoff Analysis Method (ATAM) focusing on the following attributes:
Tools used: PageSpeed Insights and SonarQube.
Skill-Swap is a collaborative effort that explores multiple architectural styles across different modules. My Admin Panel uses a Layered N-Tier approach for better maintainability and secure real-time updates. The project demonstrates effective architectural planning to build a scalable and modular application ready for deployment in real-world scenarios.
I'd love to hear from you.