Personal details

Mahdi M. - Remote full-stack developer

Mahdi M.

Timezone: Paris (UTC+2)

Summary

Hello, dear community :)

I'm a full-stack software engineer specializing in web technologies with more than 5 years of experience.

I work on the front-end as well as the back-end. I have a very good experience with Javascript, Typescript, and most of the popular frontend frameworks: (Angular +2, Vue (2 and 3), React (with hooks), StencilJs, and Svelte. I'm also very good at CSS (and CSS preprocessors) and UI design concepts in general.

On the backend, I work mainly with NodeJs and NestJs and SQL databases, and I have previous experiences with Java (+8) and Spring before switching completely to Javascript.

Currently, I'm working at Contentsquare which is one of the biggest french unicorns. And before that, I worked for several companies ranging from very early-stage startups to big corporates.

I am a hardworking person, I value the quality of work and it is something I find meaning in.
I try always to find the most simple and efficient solutions, and although I don't consider that I have many talents, knowing how to explain complex concepts in simple terms is surely one of them :)

Work Experience

Software Engineer
Contentsquare | Jul 2019 - Present
SQL
Node.js
Git
Angular
Jenkins
JavaScript
Apache Kafka
NestJS
Vue.js
AWS (Amazon Web Services)
Currently, I work as a full-stack software engineer at Contentsquare which is a French unicorn and a world leader in user experience analytics. Our product analyzes the user experience on our clients' websites: the frictions, the revenue, the lost opportunities, and everything that can help understand the user behavior while browsing the client's website will be gathered and presented to the clients in a way that would make them quickly discover new insights and act on them to improve the user experience, and in the same time, generate more revenue. Contentsquare is a Saas company, so our application is basically a web application using Javascript on the frontend and the backend via different frameworks that I will mention next. The frontend is developed using a micro-frontend architecture, so each module of the application can be developed in a different frontend framework and everything is bundled at the end to give the whole application. In my day-to-day tasks, I work with Vue.js, Angular (2+), Svelte, Stincil.js, React, and vanilla Javascript and Typescript. So on the frontend side, I consider myself to be framework agnostic. On the backend, we use Node.js and NestJS. The backend architecture is designed in micro-services. We use HTTP for inter-service communication and a Kafka event bus to send events. For the Database, we use Postgres with TypeORM. And finally, we use Github for the version control and Jenkins for the CI/CD. I also occupy the position of tech lead within my team, ensuring code quality standards, onboarding, and helping newcomers, making sure we follow and use the best and latest technologies on the market, and following features from the design phase to the production phase.
Frontend engineer
Followback | Jan 2022 - Aug 2022
HTML/CSS
HTML5
CSS3
TypeScript
React
JavaScript
React Router
React with redux
Followback is a young startup trying to reinvent emailing which has been a stagnant field for many decades by making it more attractive especially for the younger generations. This is done by drastically improving the user experience and providing a hybrid approach that combines email and instant messaging paradigms. I worked as a front-end web developer on this project using React. I bootstrapped the front end from scratch and developed it into a full-fledged application using React, React query, Pusher, and Vercel. The product is now in its alpha phase.