Scroll To View More
Youssef Sherif, JavaScript Developer in Cairo, Cairo Governorate, Egypt
Youssef Sherif

JavaScript Developer in Cairo, Cairo Governorate, Egypt

Member since September 11, 2017
Youssef is a prolific software developer who thrives in dynamic, fast-paced working environments. He delivers world-class quality code in terms of architecture, readability, maintainability, and performance. He also has a hunger for learning about new advances in the software industry.
Youssef is now available for hire

Portfolio

  • ThoughtDesign
    Angular, Webpack, C#, Node.js, JavaScript, MongoDB, Sass, Express.js
  • ThoughtDesign
    Angular, Webpack, Sass, CSS, JavaScript
  • 34 MediaLabs
    Node.js, AngularJS, MongoDB, Express.js, Socket.IO

Experience

  • JavaScript, 3 years
  • Python, 2 years
  • Node.js, 2 years
  • Angular, 2 years
  • React, 2 years
Cairo, Cairo Governorate, Egypt

Availability

Part-time

Preferred Environment

Git

The most amazing...

...software I've developed is an Arabic text to speech converter. It is ranked as the best open source Arabic text to speech in terms of naturalness.

Employment

  • Technical Team Lead

    2017 - PRESENT
    ThoughtDesign
    • Built a Node.js application that demonstrates an architecture for building Node.js back-end services using the command query responsibility separation principle and event sourcing.
    • Built new features and fixed bugs in the front-end using Angular.
    • Conducted code reviews.
    • Assessed and interviewed senior developers for hiring consideration.
    • Migrated an AngularJS project to Angular.
    • Developed unit tests, integration tests, and end-to-end tests.
    • Built features and fixed bugs for a portal to manage Azure, AWS, and GCP compute assets for clients.
    Technologies: Angular, Webpack, C#, Node.js, JavaScript, MongoDB, Sass, Express.js
  • Senior Developer

    2017 - 2017
    ThoughtDesign
    • Migrated apps from old Angular versions to new Angular versions and updated dependencies accordingly.
    • Migrated a huge codebase from a SystemJS module loader to use Webpack loader and bundler.
    • Built Selenium E2E tests and refactored old tests to use the page object model.
    • Built API data-driven dynamic forms in Angular.
    • Used Redux-like architecture to manage complex central state in Angular apps.
    • Built a sophisticated client-side form wizard.
    Technologies: Angular, Webpack, Sass, CSS, JavaScript
  • Full-stack Developer

    2016 - 2017
    34 MediaLabs
    • Designed and developed an Angular app for restaurant reservations where admins could accept, reject, and check-in clients.
    • Designed and developed a Node.js API to mobile apps and to an admin panel.
    • Developed JSON web token authentication and authorization in Node.js.
    • Set up and configured servers on DigitalOcean for deployment.
    • Developed a notifications system for an admin panel.
    • Wrote sophisticated and performant queries utilizing MongoDB aggregate query syntax that reduced response times by hundreds of milliseconds.
    Technologies: Node.js, AngularJS, MongoDB, Express.js, Socket.IO
  • Front-end Developer

    2016 - 2016
    34 MediaLabs
    • Developed fully functional responsive admin panels.
    • Developed tables with search, filtering, sorting, and pagination.
    • Built a sophisticated JavaScript event calendar for an admin panel that utilized CalendarJS.
    • Maintained, developed features, and fixed bugs for the Angular client side of an admin panel for a startup project.
    Technologies: AngularJS, FullCalendar, Angular Material, CSS

Experience

  • Manage Center (Development)

    This is a platform related to one of the world's largest companies in the information technology services. I was involved with migrating AngularJS modules to Angular 5.

  • Cloud Gate (Development)

    A platform for one of the world's largest companies in the information technology services. This platform is used for administrating managed cloud hosting on Amazon AWS and Microsoft Azure. My role involved Angular front-end app migration, code reviews, feature development, and bug fixes.

  • Table Ping (Development)

    Restaurant reservation system with real-time notifications and different authorization access layers.

    My role involved building the admin panel for the client company and for the restaurants and developing the Socket.IO notification system in the back-end and in the admin panels.

  • Merck Smart (Development)

    A quiz platform that features quizzes for employees at Merck, a multinational pharmaceutical company. The system consists of a Node.js back-end, Angular admin panel, iOS app, and Android app.

    I worked on architecting and developing the back-end and the admin panel. The back-end involved multilayered MongoDB aggregate queries, crude operations, and authentication for the mobile app and the admin panel. The admin panel involved CRUD operations for various entities and for displaying quiz results and statistics for each quiz category, company department, and user.

  • Donation Places (Development)
    https://github.com/Life-Saving-Team/donation-places-server

    An app that allows adding donation places that include drives and places. The donation places are viewed in a map and in a list that provides back-end pagination, filtering, and search.

    Preview url: https://donation-places-admin.herokuapp.com/map
    Code url (server): https://github.com/Life-Saving-Team/donation-places-server
    Code url (client): https://github.com/Life-Saving-Team/donation-places-client

  • Blood Donation Real-time Map (Development)
    https://github.com/youssefsharief/blood-donation-real-time-map

    A Node.js back-end service and an Angular app that allows donors to register themselves through clicking on their location on a map with search and location functionality. The map updates either adding, deleting, or updating a donor's location, which is reflected in real time without the need for page refresh for other observers, including donors and patients.

  • Smoott (Development)

    A platform concerned with buying, selling, and bidding services online. My role involved building Angular views, adding unit and end-to-end tests, and providing functionality through a mock API.

  • Laundry Locker (Development)

    An app lets users manage their laundry and dry cleaning account. My role involved fixing bugs on the Node.js back-end and developing features on the client-side AngularJS app.

  • Is It Time to Use Node 8? (Publication)
    Node 8 has brought significant performance and feature upgrades. Should you use it on new projects? Is it worth upgrading existing codebases? In this article, Toptal Freelance JavaScript Developer Youssef Sherif gives a tour of Node 8's biggest changes and what they mean for your project.

Skills

  • Languages

    ECMAScript (ES6), TypeScript, JavaScript, CSS, Sass, Python
  • Frameworks

    Jasmine, Express.js, Mocha.js, Angular, Redux, Jest, AngularJS
  • Libraries/APIs

    React, Node.js, Socket.IO, RxJS, React Router, Formik, Redux Observable, ArcGIS API 4, Firebase Web SDK, MobX
  • Tools

    Git, Mocha, Gulp.js, Karma, Webpack, AWS SQS
  • Paradigms

    Test-driven Development (TDD)
  • Platforms

    AWS Lambda, Amazon Web Services (AWS)
  • Storage

    MongoDB, AWS S3, AWS DynamoDB, Redis
  • Other

    Google Cloud Functions, Firebase Hosting

Education

  • Bachelor's degree in Engineering
    2010 - 2015
    American University in Cairo - Cairo, Egypt
Certifications
  • Structuring Machine Learning Projects
    MARCH 2018 - PRESENT
    Cousera
  • Sequence Models
    MARCH 2018 - PRESENT
    Coursera
  • Neural Networks and Deep Learning
    MARCH 2018 - PRESENT
    Coursera
  • Improving Deep Neural Networks: Hyperparameter tuning, Regularization and Optimization
    MARCH 2018 - PRESENT
    Coursera
  • Convolutional Neural Networks
    MARCH 2018 - PRESENT
    Coursera
  • NumPy Data Science Essential Training
    JULY 2017 - PRESENT
    Lynda.com
  • Machine Learning Essential Training: Value Estimations
    JULY 2017 - PRESENT
    Lynda.com
  • Learning the Python 3 Standard Library
    MAY 2017 - PRESENT
    Lynda.com
  • Data Science & Analytics, Career Paths & Certifications: First Steps
    MAY 2017 - PRESENT
    Lynda.com
  • Learning Python and Django
    APRIL 2017 - PRESENT
    Lynda.com
  • Learning Python Generators
    APRIL 2017 - PRESENT
    Lynda.com
  • Learn Webpack: The Basics
    APRIL 2017 - PRESENT
    Lynda.com
  • TitleCode Clinic: JavaScript
    APRIL 2017 - PRESENT
    Lynda.com
  • AngularJS 1: Form Validation
    APRIL 2017 - PRESENT
    Lynda.com
  • Angular 2 Testing and Debugging
    APRIL 2017 - PRESENT
    Lynda.com
  • Learning AngularJS 2
    MARCH 2017 - PRESENT
    Lynda.com
  • Angular 2 Forms: Data Binding and Validation
    MARCH 2017 - PRESENT
    Lynda.com
  • Angular 2 Essential Training
    MARCH 2017 - PRESENT
    Lynda.com
  • Web Project Workflows with Gulp.js, Git, and Browserify
    OCTOBER 2016 - PRESENT
    Lynda.com
  • Javascript Templating
    OCTOBER 2016 - PRESENT
    Lynda.com
  • CSS: Visual Optimization
    OCTOBER 2016 - PRESENT
    Lynda.com
  • jQuery for Web Designers
    SEPTEMBER 2016 - PRESENT
    Lynda.com
  • Up and Running with Underscore.js
    SEPTEMBER 2016 - PRESENT
    Lynda.com
  • Up and Running with ECMAScript 6
    SEPTEMBER 2016 - PRESENT
    Lynda.com
  • TypeScript Essential Training
    SEPTEMBER 2016 - PRESENT
    Lynda.com
  • Tooling with NPM Scripts
    SEPTEMBER 2016 - PRESENT
    Lynda.com
  • Programming Foundations: Object-Oriented Design
    SEPTEMBER 2016 - PRESENT
    Lynda.com
  • Learning Node.js
    SEPTEMBER 2016 - PRESENT
    Lynda.com
  • Learning NPM the Node Package Manager
    SEPTEMBER 2016 - PRESENT
    Lynda.com
  • Learning JavaScript Debugging
    SEPTEMBER 2016 - PRESENT
    Lynda.com
  • Learning ECMAScript 6
    SEPTEMBER 2016 - PRESENT
    Lynda.com
  • Learning AngularJS 1
    SEPTEMBER 2016 - PRESENT
    Lynda.com
  • JavaScript: Functions
    SEPTEMBER 2016 - PRESENT
    Lynda.com
  • JavaScript: Enhancing the DOM
    SEPTEMBER 2016 - PRESENT
    Lynda.com
  • JavaScript for Web Designers
    SEPTEMBER 2016 - PRESENT
    Lynda.com
  • HTML5: Web Forms in Depth
    SEPTEMBER 2016 - PRESENT
    Lynda.com
  • Functional-Lite JavaScript
    SEPTEMBER 2016 - PRESENT
    Lynda.com
  • Coding Faster with Emmet
    SEPTEMBER 2016 - PRESENT
    Lynda.com
  • CSS: Selectors
    SEPTEMBER 2016 - PRESENT
    Lynda.com
  • CSS: Page Layouts
    SEPTEMBER 2016 - PRESENT
    Lynda.com
  • CSS: Animation
    SEPTEMBER 2016 - PRESENT
    Lynda.com
  • jQuery Essential Training (2014)
    AUGUST 2016 - PRESENT
    Lynda.com
  • User Experience for Web Designers
    AUGUST 2016 - PRESENT
    Lynda.com
  • Up and Running with Git and GitHub
    AUGUST 2016 - PRESENT
    Lynda.com
  • Learning Responsive Design
    AUGUST 2016 - PRESENT
    Lynda.com
  • Learning How to Manage a Hosted Web Site
    AUGUST 2016 - PRESENT
    Lynda.com
  • Learning Git and GitHub
    AUGUST 2016 - PRESENT
    Lynda.com
  • JavaScript and JSON
    AUGUST 2016 - PRESENT
    Lynda.com
  • JavaScript Essential Training (2011)
    AUGUST 2016 - PRESENT
    Lynda.com
  • HTML5: Structure, Syntax, and Semantics
    AUGUST 2016 - PRESENT
    Lynda.com
  • CSS: Core Concepts
    AUGUST 2016 - PRESENT
    Lynda.com
  • Programming Foundations: Databases
    JULY 2016 - PRESENT
    Lynda.com
  • Programming Foundations: Data Structures
    JULY 2016 - PRESENT
    Lynda.com
I really like this profile
Share it with others