- π I'm a seasoned Software Developer with expertise in MERN Stack (MongoDB, Express.js, React, Node.js), PostgreSQL, and a specialization in full-stack development.
- πΌ Currently, I'm making waves at Launchpad Impact Ventures, driving technological innovation and delivering impactful solutions.
- π± Expanding my horizon with NestJS microservices and cloud technologies like AWS and GCP.
- π‘ Passionate about leveraging real-time communication tools (Socket.io, Firebase Cloud Messaging) and integrating third-party APIs to enhance application functionality.
- π¨βπ» With a knack for problem-solving and project management, I aim to deliver efficient and scalable software solutions.
- Developing cutting-edge projects in the automation, fitness, and IoT domains, utilizing an expansive tech stack including Node.js, TypeScript, GCP, Docker, MQTT, and more.
- π¦ Twitter: @const_gaju91
- π LinkedIn: Gajanand Sharma
Month | Week | Focus Area | Goals/Tasks | Projects | Resources | Repository | Progress |
---|---|---|---|---|---|---|---|
1 | 1 | Node.js Asynchronous Programming | Learn callbacks, promises, async/await | Refactor a basic CRUD application to use async/await | Node.js Documentation, You Donβt Know JS: Async & Performance | Repo Link | β |
2 | Node.js Event-Driven Architecture | Study EventEmitters, streams | Create a real-time chat application using WebSockets | Node.js Streams, Socket.io Documentation | Repo Link | β | |
3 | Node.js Performance Optimization | Learn profiling, monitoring, and optimization techniques | Optimize the performance of your CRUD application | Node.js Best Practices, Performance Monitoring with PM2 | Repo Link | β | |
4 | Node.js Security | Study OWASP Top 10, secure coding practices | Implement security best practices in the chat application | OWASP Node.js Security Cheat Sheet, Helmet.js | Repo Link | β | |
2 | 5 | Advanced MongoDB | Learn indexing, aggregation framework | Build a blog platform with advanced search and aggregation features | MongoDB University Courses, MongoDB Documentation | Repo Link | β |
6 | MongoDB Replication and Sharding | Study replica sets, sharding for scaling | Implement a sharded cluster for the blog platform | Replica Sets, Sharding | Repo Link | β | |
7 | Advanced PostgreSQL | Learn complex queries, indexing strategies | Create an analytics dashboard with complex queries | PostgreSQL Documentation, PostgreSQL Advanced Queries | Repo Link | β | |
8 | PostgreSQL Performance Tuning | Study query optimization, transactions, and concurrency | Optimize the analytics dashboard for performance | PostgreSQL Performance Tuning, Explaining EXPLAIN | Repo Link | β | |
3 | 9 | AWS Core Services | Understand EC2, S3, IAM basics | Deploy a Node.js application on EC2 with S3 for storage | AWS Free Tier, AWS EC2 Documentation | Repo Link | β |
10 | AWS Lambda and Serverless | Study serverless architecture, AWS Lambda functions | Convert parts of the blog platform to use AWS Lambda | Serverless Framework, AWS Lambda Documentation | Repo Link | β | |
11 | AWS RDS and Database Services | Learn RDS setup, connecting PostgreSQL | Migrate the analytics dashboard to use RDS | AWS RDS Documentation, Connecting to an RDS Database | Repo Link | β | |
12 | AWS Security and IAM | Study IAM roles, policies, best practices | Implement role-based access control in your deployed applications | AWS IAM Documentation, AWS Security Best Practices | Repo Link | β | |
4 | 13 | AWS Networking and VPC | Learn VPC, subnets, security groups | Set up a secure VPC for your Node.js application | AWS VPC Documentation, AWS Networking Best Practices | Repo Link | β |
14 | AWS CloudWatch and Monitoring | Study monitoring, logging, alerting | Implement monitoring and alerts for your deployed applications | AWS CloudWatch Documentation, Monitoring Best Practices | Repo Link | β | |
15 | Introduction to GCP | Learn Compute Engine, Cloud Storage, IAM in GCP | Deploy a Node.js application on Google Compute Engine | Google Cloud Free Tier, GCP Compute Engine Documentation | Repo Link | β | |
16 | GCP Cloud Functions | Study serverless functions in GCP | Implement serverless functions for specific tasks in your application | GCP Cloud Functions Documentation, Serverless on GCP | Repo Link | β | |
5 | 17 | Docker Fundamentals | Learn Docker basics, Dockerfile, Docker Compose | Containerize your Node.js applications | Docker Documentation, Docker for Beginners | Repo Link | β |
18 | Advanced Docker | Study multi-stage builds, optimizing Docker images | Optimize the Docker setup for your applications | Docker Best Practices, Docker Official Images | Repo Link | β | |
19 | Kubernetes Basics | Learn Kubernetes architecture, pods, services | Deploy your Dockerized application on a local Kubernetes cluster | Kubernetes Documentation, Minikube for Local Kubernetes | Repo Link | β | |
20 | Advanced Kubernetes | Study deployments, StatefulSets, Persistent Volumes | Implement a full Kubernetes deployment with monitoring and scaling | Kubernetes Patterns, Prometheus for Monitoring | Repo Link | β | |
6 | 21 | CI/CD Concepts | Study principles of CI/CD, benefits, and challenges | Set up a simple CI pipeline using GitHub Actions | Continuous Integration Overview, GitHub Actions Documentation | Repo Link | β |
22 | Jenkins for CI/CD | Learn Jenkins setup, pipelines, and integrations | Implement a Jenkins pipeline for automated testing and deployment | Jenkins Documentation, Jenkins Pipeline Syntax | Repo Link | β | |
23 | Advanced CI/CD with GitLab | Study GitLab CI/CD pipelines, runners, and caching | Implement a CI/CD pipeline with GitLab for one of your projects | GitLab CI/CD Documentation, GitLab CI Examples | Repo Link | β | |
24 | CI/CD Best Practices | Study security in CI/CD, managing secrets, deployment strategies | Harden your CI/CD pipelines and implement blue-green deployment | CI/CD Security Best Practices, Deployment Strategies | Repo Link | β | |
7 | 25 | Microservices Architecture | Learn principles of microservices, design patterns | Refactor an existing monolithic application into microservices | Microservices Patterns, Building Microservices by Sam Newman | Repo Link | β |
26 | Implementing Microservices | Study inter-service communication, API gateways | Implement inter-service communication with REST and gRPC | API Gateway Patterns, gRPC Documentation | Repo Link | β | |
27 | Event-Driven Architecture Basics | Study event-driven design principles, message brokers | Build an event-driven application using RabbitMQ | Event-Driven Architecture, RabbitMQ Documentation | Repo Link | β | |
28 | Advanced Event-Driven Architecture | Learn Kafka, event sourcing, CQRS | Implement an event-driven architecture with Kafka | Apache Kafka Documentation, Event Sourcing and CQRS | Repo Link | β | |
8 | 29 | Serverless Architecture | Learn serverless principles, benefits, and limitations | Build a serverless application using AWS Lambda | Serverless Framework Documentation, AWS Serverless Application Model (SAM) | Repo Link | β |
30 | Advanced Serverless Patterns | Study state management, orchestration with AWS Step Functions | Implement complex workflows using AWS Step Functions | AWS Step Functions Documentation, Serverless Patterns | Repo Link | β | |
31 | Serverless Security and Best Practices | Study security considerations, monitoring, and logging | Secure and monitor your serverless applications | Serverless Security Best Practices, AWS CloudWatch for Serverless | Repo Link | β | |
32 | Serverless with GCP | Study GCP Cloud Functions, Cloud Run | Build a serverless application using GCP Cloud Functions and Cloud Run | GCP Cloud Functions Documentation, GCP Cloud Run Documentation | Repo Link | β | |
9 | 33 | RESTful API Design Principles | Learn RESTful principles, best practices | Design a RESTful API for a new application | RESTful API Design Guidelines, API Design Patterns | Repo Link | β |
34 | Advanced RESTful API Techniques | Study HATEOAS, versioning, pagination | Implement advanced RESTful features in your API | HATEOAS, API Versioning | Repo Link | β | |
35 | Introduction to GraphQL | Learn GraphQL fundamentals, queries, mutations | Build a GraphQL API for your application | GraphQL Documentation, Apollo GraphQL | Repo Link | β | |
36 | Advanced GraphQL | Study subscriptions, schema stitching, performance optimization | Implement real-time updates and optimize your GraphQL API | GraphQL Subscriptions, GraphQL Performance | Repo Link | β | |
10 | 37 | Finding and Setting Up | Identify suitable projects, understand contribution guidelines | Choose an open-source project and set up the development environment | Contributing to Open Source, GitHub Explore | Repo Link | β |
38 | First Contribution | Learn Git workflows, pull request process | Make your first contribution by fixing a bug or adding a feature | Understanding GitHub Flow, Creating a Pull Request | Repo Link | β | |
39 | Engaging with the Community | Improve communication in open-source projects | Engage with the community by participating in discussions and reviews | How to Collaborate on GitHub, Effective Communication for Open Source | Repo Link | β | |
40 | Advanced Contributions | Learn refactoring, optimizing, and documenting code | Make significant contributions such as refactoring a module or improving performance | Refactoring Code, Writing Good Documentation | Repo Link | β | |
11 | 41 | Mentoring Basics | Study principles of effective mentoring, giving constructive feedback | Start mentoring a junior developer | The Mentorβs Guide, Giving Constructive Feedback | Repo Link | β |
42 | Code Reviews | Learn best practices for code reviews, tools, and techniques | Conduct thorough code reviews for your team or open-source projects | Code Review Guidelines, Code Review Tools | Repo Link | β | |
43 | Effective Communication | Improve communication skills, especially in remote teams | Lead a remote meeting or a code review session | Remote Communication Tips, Effective Meeting Techniques | Repo Link | β | |
44 | Leadership Skills | Study leadership principles, managing projects and teams | Lead a small project or team within your organization | Leadership in Tech, Managing Software Teams | Repo Link | β | |
12 | 45 | Agile Methodologies | Learn Agile principles, Scrum, Kanban | Implement Scrum or Kanban for a small project | Scrum Guide, Kanban for Software Development | Repo Link | β |
46 | Agile Tools | Study tools like JIRA, Trello, Asana | Set up a project management board and manage a project | JIRA Software Guide, Trello Basics | Repo Link | β | |
47 | Project Planning | Learn project planning techniques, roadmaps, and timelines | Create a project plan for a complex application | Project Planning Guide, Creating Roadmaps | Repo Link | β | |
48 | Retrospectives and Improvement | Study conducting retrospectives, continuous improvement | Conduct a retrospective for your project and implement improvements | Retrospective Techniques, Continuous Improvement | Repo Link | β | |
13 | 49 | AWS Solutions Architect Exam Preparation | Study exam domains, study guides, and resources | Create a study schedule and gather resources | AWS Solutions Architect Study Guide, A Cloud Guru | Repo Link | β |
50 | Hands-On Labs | Complete practical labs covering key services and scenarios | Complete hands-on labs for core AWS services | AWS Training and Certification, AWS Hands-On Labs | Repo Link | β | |
51 | Practice Exams | Take practice exams and review answers | Identify weak areas and focus on them | AWS Practice Exams, Whizlabs | Repo Link | β | |
52 | Exam Review and Final Preparation | Final review of key concepts, last-minute tips | Take the AWS Certified Solutions Architect β Associate exam | Exam Readiness: AWS Certified Solutions Architect, AWS Exam FAQs | Repo Link | β | |
14 | 53 | System Design Basics | Learn fundamentals of system design, scalability, and reliability | Design a scalable architecture for a sample application | System Design Primer, Designing Data-Intensive Applications | Repo Link | β |
54 | High Availability and Fault Tolerance | Study strategies for high availability, disaster recovery | Design a fault-tolerant system for a critical application | High Availability Guide, Fault-Tolerant Design | Repo Link | β | |
55 | Performance and Scalability | Learn load balancing, caching strategies, and performance tuning | Implement a load-balanced and cached version of your application | Web Caching Basics, AWS Elastic Load Balancing | Repo Link | β | |
56 | Real-World System Design Challenges | Study case studies of real-world system designs | Design a complete system incorporating learned concepts | Real-World Case Studies, Scalability Patterns | Repo Link | β | |
15 | 57 | Project Planning and Setup | Learn detailed project planning, requirements gathering | Plan a complex system incorporating microservices, databases, and cloud services | Project Planning Techniques, Requirements Gathering | Repo Link | β |
58 | Development Phase 1 | Implement core services and infrastructure | Implement the core microservices and set up the cloud infrastructure | Microservices Development, AWS Infrastructure Setup | Repo Link | β | |
59 | Development Phase 2 | Implement advanced features and integrations | Integrate services, add event-driven components, and implement security | Service Integration, Event-Driven Systems | Repo Link | β | |
60 | Testing and Deployment | Learn comprehensive testing strategies, CI/CD for deployment | Test the system extensively and deploy using CI/CD pipelines | Testing Microservices, CI/CD Best Practices | Repo Link | β | |
16 | 61 | Portfolio Creation | Learn elements of a strong portfolio, showcasing projects | Create a professional portfolio website showcasing your projects | Creating a Developer Portfolio, GitHub Pages | Repo Link | β |
62 | Resume Writing | Learn effective resume writing for software engineers | Write and refine your resume, highlighting key projects and skills | Technical Resume Guide, Resume Templates | Repo Link | β | |
63 | LinkedIn Profile Optimization | Learn optimizing LinkedIn profiles for job search | Update and optimize your LinkedIn profile | LinkedIn Profile Tips, [LinkedIn for |