Cloud Workstation Management Platform

M Shaheer Haider

Fullstack Engineer
DevOps Engineer
Web Developer
AWS
Nuxt.js
Python
Al Nafi
Developed a Cloud-based workstation management platform for students to launch a server on-demand and perform labs in their browser right away
Role: Senior Software Developer (Tech Lead) | Software Architect | DevOps & Cloud Engineer

Project description

A business required an innovative solution to provide their students with access to virtual lab environments on remote machines connected to a private network. Previously, they relied on site-to-site VPNs, but many users faced challenges due to limited hardware capabilities and slow internet speeds. They needed a seamless, cloud-based solution where students could effortlessly create virtual machines with a single click and conduct their labs, regardless of their device performance.
Additionally, the system needed to cater to professionals, enabling them to launch powerful cloud machines for resource-intensive tasks. Users would purchase tokens to access virtual machines, with costs determined by factors such as machine size, storage, and the AMI chosen. This flexible, token-based system ensures efficient resource allocation and cost management for both students and professionals.

Technical Stack:

Frontend: Vue.js, Nuxt.js, Tailwind, JavaScript, HTML5
Backend: Nginx, Django
Database: Postgres (AWS RDS)
Libraries: AWS SDK (boto3)
Opensource Tools: Apache Guacamole, Docker
Hosting and Infrastructure: AWS, ECS on EC2 with Autoscaling and Load Balancing
AWS Services: AWS Amazon Virtual Private Cloud, ECR, ECS, EC2, and AWS RDS.
Log and Audit Controls: Web Server(NGINX) Error Alarm, AWS CloudWatch Monitoring, Logs and Alarms, Sentry & Matomo.
Integration: Stripe, Apache Guacamole

Key Accomplishments:

1. Designed the architecture that focuses on scalability and solved the problem of business
Developed the system architecture, including the network, computing, and storage resources, a system for buying and using tokens as in-app currency, a virtual machine pool with auto-scaling, and external service integrations.
Ensured the users didn't have to leave their browsers to use virtual machines or workstations.
2. Managed the production environment setup using AWS services.
Utilized AWS Amazon Virtual Private Cloud (VPC), Elastic Container Registry (ECR), Elastic Container Service (ECS), Elastic Compute Cloud (EC2), and AWS Relational Database Service (RDS).
Created DevOps CI/CD pipelines using AWS Codepipeline.
3. Led a team of designers and developers while playing a hands-on role in all critical components
Led the UX team to design a prototype based on business requirements
Worked with the frontend team and created the logic, animation system, and real-time connections with the backend
Single-handedly created all backend including APIs and integrated it with AWS SDK and Apache Guacamole
4. Made improvements based on students' and staff's feedback.
Collected feedback from users through the platform
Based on the feedback, we introduced new features and eliminated the limitations of the system
5. Wrote comprehensive product requirement documentation for the application.
Collaborated with stakeholders to gather and document application requirements.
Ensured high quality and optimum performance of data integration systems to meet business needs.
Students and Staff's feedback played a crucial role in shaping the process, driving iterative enhancements, and ensuring we stayed aligned with their needs. Our focus on open communication and a client-first approach fostered a strong partnership, enabling continuous improvement and successful outcomes.
Partner With M Shaheer
View Services

More Projects by M Shaheer