Full Stack Engineer@DatawaveLabs

My internship at Datawave Labs provided a hands-on experience as a Full Stack Engineer, immersing me in the development of a scalable, cloud-driven data intelligence platform. Below are detailed insights into the work I accomplished.

DatawaveLabs
Authentication and Authorization Systems

Designed and implemented a robust authentication system using JWT-based session management. Key tasks included:

  • Email/Password Authentication: Built a secure login and signup flow with password hashing and email verification to ensure account authenticity.
  • Google OAuth Integration: Enabled Google Sign-In using OAuth 2.0, simplifying user onboarding with secure access tokens.
  • Role-Based Access Control (RBAC): Developed middleware to restrict access to specific resources based on user roles.
Cloud Integration

Created seamless integrations for AWS, Azure, and GCP accounts, allowing users to manage cloud resources effortlessly. Key highlights:

  • Credential Handling: Implemented secure forms to collect and validate cloud credentials such as AWS Access Keys, Azure Tenant IDs, and GCP JSON files.
  • Cloud Resource Management: Developed connectors for AWS S3, Azure Storage, and GCP Storage, enabling unified interaction with cloud services.
Infrastructure Automation

Automated cluster management workflows for infrastructure deployment. My contributions included:

  • API-Driven Cluster Creation: Developed APIs to deploy Docker containers, reducing manual intervention in infrastructure management.
  • Real-Time Status Updates: Leveraged Event Source to provide users with live feedback on cluster creation and deletion processes.
Notification System

Built a real-time notification system using Redis Pub/Sub for efficient communication. Features included:

  • Real-Time Alerts: Delivered critical updates on system events, enhancing user experience and operational awareness.
  • Notification Management: Created APIs to handle notifications, including read and delete functionalities.
Client Development

Worked extensively on the frontend using modern tools to enhance usability:

  • ReactJS and Tailwind CSS: Built responsive and accessible interfaces for authentication, cloud integration, and notifications.
  • State Management with Recoil: Implemented efficient state handling to ensure a seamless user experience.
Server Development

Developed a scalable backend infrastructure using:

  • FastAPI: Built high-performance APIs for authentication, cloud integrations, and cluster management.
  • Database Management: Migrated from psycopg2 to SQLAlchemy ORM for better schema management and maintainability.
DevOps and Deployment

Contributed to the project's scalability and reliability through DevOps practices:

  • Containerization with Docker: Ensured environment consistency for backend services.
  • Kubernetes Integration: Orchestrated clusters for high availability and load balancing.
  • CI/CD Pipelines: Implemented automated build and deployment pipelines to streamline releases.

Technologies and Tools

My work involved a diverse set of technologies and tools that are integral to modern full-stack development:

ReactJS
Tailwind CSS
Recoil
react-cookie
FastAPI
Redis Pub/Sub
psycopg2
SQLAlchemy ORM
Docker
Kubernetes
Terraform
AWS SDK (boto3)
Azure SDK
GCP SDK
Postman
Event Source Polyfill

Conclusion

This internship was a comprehensive learning experience, blending practical development with exposure to modern technologies. It equipped me with a solid understanding of cloud integrations, real-time systems, and scalable application development, laying a strong foundation for future professional endeavors.

Relieving Letter