logo
✨ Welcome To My Portfolio
I'm soufiane El hamri

I'm an accomplished software engineer known for my expertise in crafting robust and efficient web applications. I am Proficient in TypeScript and JavaScript, and my technical palette is extensive and includes React, Next.js, Node.js, HTML, and CSS.

ABOUT ME

ABOUT ME

4
2
1
3

Hi There! I'm Soufiane El hamri


I'm an accomplished software engineer known for my expertise in crafting robust and efficient web applications. I am Proficient in TypeScript and JavaScript, and my technical palette is extensive and includes React, Next.js, Node.js, HTML, and CSS.


Web Development

SEO

Web scraping

UX UI Design

Machine learning

Devops

Problem solving


RESUME

RESUME

Experience

Full Stack Developer

Jan 2021 - Present

Gear9, CasaBlanca

As a vital member of the dynamic web development team at Inwi.ma project, I played a crucial role in the conceptualization,design, and implementation of the company's official website

Full Stack Developer

April 2021- October 2021

Um6p, Benguerir

As a Software Engineer intern at Mohammed VI Polytechnic University, I had the exciting opportunity to contribute to the development of a dynamic website. Working closely with a talented team, I played a key role in designing and implementing new features, enhancing the site's functionality, and ensuring a seamless user experience.

Full stack developer

Mar 2019 - Apr 2021

Salam Système,CasaBlanca

Developed a web application for managing stock, electrical equipment, and industrial installations using React.js for the front-end and Node.js for the back-end

Education

Full Stack Developer

April 2019 - 2023

1337, Khouribgha

Completed intensive and immersive Full Stack Web Development training at 1337 School, renowned for its innovative and project-based curriculum

Technician diploma specialized in computer development

Sep 2017 - Aug 2019

ISGI, Khouribgha

Holder of an ISGI Technician diploma in computer development, I have undergone comprehensive training in programming languages, including Java, Python, and C++, coupled with in-depth studies in databases, web development, and systems analysis

Bachelor

Sep 2015 - Aug 2016

Bir Anzarane School, Fkih Ben Salah

Bachelor of Science in Physics and Chemistry

Projects

Projects

tor-movies

tor-movies

NextJs - tailwind - FramerMotion - TypeScript

Build Modern Next 14 Server Side App with Server Actions, Infinite Scroll & Framer Motion Animations Learn more >

section-hub

section-hub

NextJs - tailwind - FramerMotion - TypeScript

Beautifully designed components that you can copy and paste into your apps. Accessible. Customizable. Open Source. Learn more >

Inwi.ma

Inwi.ma

Nextjs - MUI - Nodejs - TypeScript

As a vital member of the dynamic web development team at Inwi.ma, I played a crucial role in the conceptualization, design, and implementation of the company's official website. Learn more >

QR-Code-Generator

QR-Code-Generator

NextJs - tailwind - Shadcn - TypeScript

This project is a QR Code Generator built with React and TypeScript. It allows users to generate and download QR codes in multiple sizes with custom colors. Users can also copy the generated QR code to the clipboard. Learn more >

pharmacie-garde

pharmacie-garde

NextJs - tailwind - Puppetee - TypeScript

This repository contains a web application that displays on-duty pharmacies (pharmacies de garde) in a given area. The application helps users quickly find pharmacies that are open outside regular business hours by scraping real-time data from relevant websites. Learn more >

modern-landing-page

modern-landing-page

React - tailwind - FramerMotion - TypeScript

Brainwave - Modern UI/UX website, developed using React.js and Tailwind CSS, exemplifies modern UI/UX principles. Its sleek design, seamless animations, Learn more >

Blogs

Blogs

image

Optimizing Data Fetching in React using React.use

When working with React component, managing data fetching efficiently is crucial to providing a smooth and responsive user experience

5 min readRead More
image

Understanding React's useSyncExternalStore

React 18 introduced a new hook called useSyncExternalStore to help manage state that is external to React components. This hook is useful for integrating with external libraries or APIs that manage their own state

10 min readRead More
image

Mastering Custom Hooks in React

If you're diving deep into React, you've likely encountered custom hooks. These powerful tools enable developers to encapsulate complex logic and promote reusability across components

15 min readRead More
image

Event Capturing and Bubbling in React

When working with React, understanding how events propagate through the DOM is crucial for building interactive and responsive user interfaces.

5 min readRead More
image

Understanding Composition To Avoid Prop Drilling

The composition and Layout Components Pattern helps to avoid prop drilling and makes the code more readable and maintainable

5 min readRead More
image

Compound Components Pattern in React

The Compound Components Pattern allows you to create a collection of component that implicitly share state and behavior without the need to pass props down the component tree

8 min readRead More
image

Understanding React's flushSync API

React's automatic batching of state updates is a powerful feature that optimizes performance by reducing the number of re-renders. However

9 min readRead More
image

Unlocking the Power of Imperative Handles

When working with React, sometimes we need allows child components to to expose certain function or properties to the parent component or other child components

5 min readRead More

SKILLS

SKILLS

0

Years
Experience
Working

Great Experience


Fill appear won't may make moveth signs. Fourth. Good own. Green you're moveth us, lesser.

Nextjs

90%

React

90%

TypeScript

80%

Docker

70%

Mongodb

70%

Nodejs

70%

JavaScript

90%

Css

90%

HTML

90%

Python

70%

Contact

Contact

Let's grab a coffee and jump on conversation And chat with me.


You can also find on Linkedin if that's easier for you.


(+212) 641-40-48-42