Skip to content

dpksrmwork/Technical-Portfolio

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

9 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

Deepak Sharma - Senior Data Engineer Portfolio

A modern, interactive technical portfolio showcasing 7+ years of AWS data engineering expertise, built with Next.js 14, TypeScript, Tailwind CSS, and Framer Motion.

πŸš€ Features

  • Interactive Architecture Diagrams: Professional AWS architecture diagrams with hover effects
  • Dynamic Project Showcase: Collapsible project cards with detailed technical information
  • Smooth Animations: Framer Motion powered transitions and micro-interactions
  • Responsive Design: Optimized for all devices and screen sizes
  • Modern Tech Stack: Next.js 14, TypeScript, Tailwind CSS
  • Production Ready: Configured for Cloudflare Pages deployment

πŸ› οΈ Technologies

  • Framework: Next.js 14 with TypeScript
  • Styling: Tailwind CSS with custom animations
  • Animations: Framer Motion for smooth interactions
  • Icons: Lucide React and Heroicons
  • Deployment: Cloudflare Pages ready with static export

πŸ“‚ Project Structure

deepak-sharma-portfolio/
β”œβ”€β”€ app/
β”‚   β”œβ”€β”€ globals.css          # Global styles and Tailwind setup
β”‚   β”œβ”€β”€ layout.tsx           # Root layout with metadata
β”‚   └── page.tsx             # Main page component
β”œβ”€β”€ components/
β”‚   β”œβ”€β”€ About.tsx            # About section with highlights
β”‚   β”œβ”€β”€ Contact.tsx          # Contact form and information
β”‚   β”œβ”€β”€ Hero.tsx             # Hero section with animation
β”‚   β”œβ”€β”€ Navbar.tsx           # Navigation with mobile menu
β”‚   β”œβ”€β”€ Projects.tsx         # Interactive project showcase
β”‚   └── Skills.tsx           # Skills visualization
β”œβ”€β”€ public/
β”‚   └── images/              # Architecture diagrams and assets
β”œβ”€β”€ package.json             # Dependencies and scripts
β”œβ”€β”€ next.config.js           # Next.js configuration for static export
β”œβ”€β”€ tailwind.config.js       # Tailwind CSS configuration
└── README.md               # This file

πŸ—οΈ Featured Projects

1. Real-Time Data Pipeline & Lakehouse

  • Technologies: AWS Kinesis, Lambda, Spark, Iceberg, Athena
  • Impact: Reduced data processing latency by 85%
  • Scale: Processing terabytes of airline operational data daily

2. Event-Driven Distributed System

  • Technologies: Apache Kafka, EventBridge, Step Functions, Lambda
  • Impact: Improved notification delivery by 90%, 99.9% uptime
  • Scale: Serving millions of airline customers

3. Serverless Microservices & REST APIs

  • Technologies: API Gateway, FastAPI, Lambda, DynamoDB
  • Impact: 60% faster API response, 40% cost reduction
  • Architecture: Fault-tolerant, auto-scaling design

4. Infrastructure as Code & CI/CD

  • Technologies: AWS CDK, GitLab CI/CD, CloudFormation
  • Impact: 300% deployment frequency increase, 85% fewer failures
  • Features: Zero-downtime deployments, automated testing

πŸš€ Quick Start

Prerequisites

  • Node.js 18+
  • npm or yarn

Installation

  1. Clone and install dependencies:
git clone <repository-url>
cd deepak-sharma-portfolio
npm install
  1. Run development server:
npm run dev

Visit http://localhost:3000 to see the portfolio.

  1. Build for production:
npm run build
  1. Test production build locally:
npm run start

🌐 Deployment to Cloudflare Pages

Method 1: Git Integration (Recommended)

  1. Push your code to GitHub
  2. Connect repository to Cloudflare Pages
  3. Use these build settings:
    • Build command: npm run build
    • Build output directory: out
    • Node.js version: 18

Method 2: Direct Upload

  1. Build the project: npm run build
  2. Upload the out folder to Cloudflare Pages

Environment Variables

No environment variables required for basic deployment.

🎨 Customization

Personal Information

Update personal details in components/Hero.tsx and components/Contact.tsx:

// In Hero.tsx
const personalInfo = {
  name: "Your Name",
  title: "Your Title", 
  location: "Your Location",
  email: "your.email@domain.com",
  phone: "+1234567890"
}

Projects

Modify the projects array in components/Projects.tsx:

const projects = [
  {
    id: 'your-project',
    title: 'Your Project Title',
    company: 'Your Company',
    description: 'Project description...',
    technologies: ['Tech1', 'Tech2'],
    // ... other fields
  }
]

Skills

Update skill categories in components/Skills.tsx:

const skillCategories = [
  {
    title: 'Your Skill Category',
    skills: ['Skill1', 'Skill2', 'Skill3'],
    color: 'bg-blue-500'
  }
]

Architecture Diagrams

Replace images in public/images/ directory:

  • data_pipeline_architecture.png
  • architecture_diagram.png
  • microservices_architecture.png

πŸ§ͺ Testing Locally

Development Testing

npm run dev

Production Build Testing

npm run build
npm run start

Static Export Testing

npm run build
npx http-server out

πŸ“± Mobile Optimization

The portfolio is fully responsive with:

  • Mobile-first design approach
  • Touch-friendly interactions
  • Optimized typography and spacing
  • Collapsible mobile navigation

⚑ Performance

  • Lighthouse Score: 95+ on all metrics
  • Core Web Vitals: Optimized for speed
  • Bundle Size: Minimal dependencies
  • Images: Optimized and lazy-loaded

πŸ”§ Maintenance

Adding New Projects

  1. Add project data to components/Projects.tsx
  2. Include architecture diagram in public/images/
  3. Update categories if needed

Updating Dependencies

npm update
npm audit fix

Content Updates

Most content can be updated by modifying the respective component files without changing the overall structure.

πŸ“„ License

This project is open source and available under the MIT License.

🀝 Support

For questions or support:


Built with ❀️ using Next.js, TypeScript, and Tailwind CSS

About

Technical portfolio

Resources

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages