About
I’m Amr Mubarak, a passionate backend engineer. I have a strong foundation in backend development, specializing in Node.js, Express, and NestJS. Recently, I’ve been diving into GoLang, and I also have experience with MongoDB and PostgreSQL. My knowledge extends to data structures, algorithms, and object-oriented programming (OOP).
Education
- Computer Science Student:
- Studying core concepts in software development.
- Gaining hands-on experience through projects and internships.
Skills
- Backend Development:
- Node.js
- Express
- NestJS
- GoLang (currently learning)
Databases:
- MongoDB
- PostgreSQL
- Programming Concepts:
- Data Structures
- Algorithms
- Object-Oriented Programming (OOP)
Experience
Node.js & Express:
- Developed RESTful APIs and web services.
- Integrated with various third-party services and APIs.
NestJS:
- Built scalable and maintainable backend applications.
- Leveraged decorators and metadata for clean code structure.
GoLang:
- Exploring the language’s concurrency model and performance benefits.
- Building small projects to solidify understanding.
MongoDB & PostgreSQL:
- Designed and managed database schemas.
- Performed CRUD operations and optimized queries.
- Ensured data integrity and implemented indexing strategies.
Projects
Natours
Natours is a fictional nature tours booking website built for learning purposes. This project showcases a comprehensive real-world web application using Node.js, Express.js, and MongoDB. Features:
User Authentication:
- Sign Up: Create an account with necessary details.
- Login: Securely log in to your account.
Security:
- Data Sanitization: Prevent security vulnerabilities by sanitizing input data.
- Rate Limiting: Mitigate brute-force attacks.
- JWT Authentication: Use JSON Web Tokens for secure authentication and authorization.
- HTTPS: Secure communication over HTTPS.
API Integration:
- Mapbox Integration: Display tour locations on interactive maps.
- Stripe Integration: Secure payment processing using Stripe API for bookings.
Contact
Feel free to reach out to me for collaboration or any queries you may have!