Ahmad Soliman, Developer in Barcelona, Spain
Ahmad is available for hire
Hire Ahmad

Ahmad Soliman

Verified Expert  in Engineering

Web Developer

Location
Barcelona, Spain
Toptal Member Since
November 6, 2019

Starting as a Google intern, Ahmad has been leading the development of B2B services and admin web apps since 2015. On projects, he typically makes the architectural decisions about state management, framework selection, testing strategies, folder structure, team load and task allocation, and mentoring junior developers. Ahmad has also built shared UI component libraries, reusable CSS code, higher-order components, and best practices for scalable and maintainable codebases.

Portfolio

Cloud5 Technology
C#, .NET Core, Jest, NGXS, CSS, HTML, TypeScript, Angular, JavaScript...
TRIM Agency
GitLab, Kubernetes, Python, Prisma, Yoga, GraphQL, TypeScript, Angular...
bLAnk Company
Mobile Apps, Gulp, Firebase Hosting, CSS, HTML, AngularJS, JavaScript

Experience

Availability

Part-time

Preferred Environment

Webpack, NPM, Visual Studio Code (VS Code), Arch Linux

The most amazing...

...project I’ve developed is an eCommerce build-your-own-online-store web application called Goyasites within a startup that I co-founded.

Work Experience

Senior Front-end Developer

2017 - 2023
Cloud5 Technology
  • Developed an app that manages each client's assets through a platform allowing employees to access asset information, reserve the asset, or create and respond to a job request needed for asset maintenance.
  • Led a team of three through two projects by assigning tasks and reviewing code, designing, and architecting Angular apps.
  • Held workshops to improve the level of testing, using state management libraries like NGXS.
  • Built an Angular component framework that exports many basic components, such as dynamic layout components and a complex search-header module that allows several searching modes through data tables for all of our projects.
  • Designed and coded an Angular skeleton repository to serve as a starting point for new projects. It ships with folder structure, basic modules structure, HTTP services, interceptors, user authorization, routing, guards, NGXS, and Jest.
  • Implemented an online tutoring and consultancy web application using .NET Core Razor Pages. Using Agora video call API, a video conference call was implemented between clients and experts to join after the user book meeting and pay through PayPal.
  • Developed a tutoring platform where users book meetings with experts in any field and have a video call with them. Built with React, Next.js, TypeScript, MUI, Tailwind CSS, Agora for video calls, and PayPal for payments.
  • Deployed a Next.js app on Azure using CI/CD pipelines.
Technologies: C#, .NET Core, Jest, NGXS, CSS, HTML, TypeScript, Angular, JavaScript, Agile Software Development, CSS5, HTML5, AngularJS, AngularUI, Angular Material, Material 2, Azure, Azure DevOps, DevOps, Pipelines, CI/CD Pipelines, TypeScript 3, .NET 6, Razor, Razor Pages, Web MVC, MVC Razor, React, Redux, Next.js, Tailwind CSS, Material UI, Front-end, Front-end Development, Web Development, Web UX, Mocha, Google Chrome, Functional Programming, Web Applications, Figma, Material Design, Vercel

Senior Front-end Developer

2019 - 2020
TRIM Agency
  • Implemented multiple portal PWAs for creating a nutritional database. Set up the architecture and shared components and decided on frameworks and testing strategies. Decomposed modules into simple Asana tasks with clear and testable requirements.
  • Maintained a weekly delivery cycle within a team of 12 front- and back-end developers, designers, DevOps engineers, and a product owner, keeping up with daily standups, weekly sprints, deployments, sprint planning, code reviews, and task QA.
  • Mentored a junior front-end developer coming out of JavaScript code camp into Angular development with GraphQL API. Maintained regular one-to-one workshops, peer coding, code reviews, and teaching by example, learning a lot through the process myself.
  • Developed an Angular web app for creating a nutritional database by decomposing food ingredients text into simple ingredients with their nutritional data, along with an admin view for checking the progress and leaderboards of the team members.
  • Created a PWA Angular app for mobile devices to capture photos of branded foods sold in supermarkets and an internal team app to review the photos and convert their data to database entries.
  • Maintained a B2C Angular app that served as a nutritional guide and calorie calculator. Raised its performance noticeably by minimizing API hits and caching all unchanged data, decreasing the load on the API.
  • Deployed and maintained a CI/CD environment using GitLab pipelines, Helm charts, and Kubernetes to deploy three stages for each app on Google Kubernetes Engine (GKE), serving a secured deployment on three subdomains.
  • Joined a back-end team for a considerable database change and migrations to many microservices, including Python Flask apps, Prisma, and Yoga GraphQL APIs. Took architectural responsibility for which microservices should be removed or changed.
  • Migrated Python code to TypeScript that included an algorithm that parsed food ingredients text into an array of ingredients.
  • Designed and implemented an algorithm to sort an ingredient list as they appear in a long string, using the Levenshtein distance algorithm to do fuzzy string matching and its modified version to find a string in a text using approximate matching.
Technologies: GitLab, Kubernetes, Python, Prisma, Yoga, GraphQL, TypeScript, Angular, JavaScript, Algorithms, Web, Web UX, Web UI, TypeScript 3, HTML, HTML5, CSS, CSS5, DevOps, GitLab CI/CD, CI/CD Pipelines, Google Cloud, Dynamic Programming, Pattern Matching, Mentorship, Team Mentoring, Mentorship & Coaching, User Interface (UI), User Experience (UX), Testing, Jest, NGXS, NgRx, Asana, Angular CLI, Angular Material, Flask, REST, REST APIs, Microservices, PWA, Progressive Web Applications (PWA), Team Leadership, Remote Work, Remote Team Leadership, Web Development, Node.js, Charts, Cypress, Google Chrome, Web Applications, Figma, Material Design

Senior Front-end Developer

2016 - 2017
bLAnk Company
  • Developed a single-page web app targeting mobile that features a 5-year plan tool for a startup bank. It considers all the user's financial aspects and decides which goals they can reach in the coming years.
  • Integrated Firebase to host the application as it didn't need a back end.
  • Enhanced the app with a chart that I developed. It shows all the user's expenses, debt, and goals through the next five years.
Technologies: Mobile Apps, Gulp, Firebase Hosting, CSS, HTML, AngularJS, JavaScript

Senior Full-stack Developer | Co-founder

2015 - 2016
Goyasites
  • Developed eCommerce applications like Shopify, allowing clients to create their online store by registering and entering all their products' information through our admin portal, then publishing their online store with a custom theme.
  • Designed and developed an optimized algorithm on the server that calculates a dynamic list of available tags for the user to filter the products according to the available and currently selected tags.
  • Contributed to the architecture design of the back and front ends to handle multiple store owners in a multiple-tenant database.
Technologies: Webpack, Gulp, Sass, CSS3, HTML5, AngularJS, Python, Django, JavaScript

Corporate Operations Engineer Intern

2014 - 2014
Google
  • Developed a Python webapp2 internal web application that lists all of Google's worldwide TechStop location information using multiple APIs.
  • Serviced the company's IT office, TechStop, offering daily technical support for Googlers.
  • Provided direct support for desktops and laptops, network access and maintenance, phone services, and video conferencing.
Technologies: CSS, HTML, webapp2, Python, Hardware, Networks

WiseCode

https://www.wisecode.ai/
WiseCode is a nutritional PWA guide that helps users count their daily calories, create meals, and eat the leftovers. I joined and led a big team that developed this app, along with several behind-the-scene apps and portals for collecting the nutritional database. I also worked on many of its front-end and back-end microservice pieces.

EzyMed

https://www.ezymed.com.au/
An Angular B2B admin portal for pharmacies to handle medications and patients. It included huge amounts of data, tables, complex views, and dashboards. We used NGXS for state management, Jest for testing, and our CSS framework.

SmartAsset

https://www.smartasset.com.au
Developed a B2B service that allows a client to manage all his company's assets through a portal with different access levels for all their employees, filter through their assets, check in on them by location on the map, and create and respond to job requests needed to be done on assets.

Zeemo Chat

A .NET Core Razor Pages web app that connects clients with field experts through online video calls within the app using Agora's API. After the user makes a booking, a meeting is based on the expert's availability and payment through PayPal. Both join the meeting when it starts and have a video call to discuss anything the client needs to consult about. The video call also allows text chat, file sharing, and screen sharing.

Goyasites

https://goyasites.com/
I developed an eCommerce application, like Shopify, which allows clients to create an online store by registering and entering all their product information through our admin portal. Also, they can choose a UI theme for their store, request a customized theme for their client's portal, and specify which features they require in their online store.

Bank Budgeting App

Created a youth-oriented bank budgeting tool built as a single-page web app. We made the app mobile-friendly; it features a five-year plan tool that takes into account all financial aspects of the client and decides which goals they can reach in the coming years, showing the results through a chart.

Fuzzy String Matching in Practice

I designed and implemented an algorithm that could sort a list of ingredients according to their presence in a long string. By employing the Levenshtein distance dynamic programming algorithm, I incorporated fuzzy string matching and its modified version to perform approximate matching for finding a specific string within a lengthy text.

Languages

C#, HTML5, CSS3, TypeScript, JavaScript, HTML, CSS, Sass, Python, Java, TypeScript 3, SCSS, CSS4, CSS2, GraphQL, SQL, C++, Haskell, Prolog, C, Ruby, Dart, Visual Basic .NET (VB.NET)

Frameworks

.NET Core, Angular, AngularJS, Angular Material, Razor Pages, Next.js, Tailwind CSS, Bootstrap, Material UI, Django, Jest, Razor, MVC Razor, .NET, Redux, Yoga, Flask, Express.js, webapp2, Ruby on Rails (RoR), Flutter, Django REST Framework, IdentityServer 4, Cypress

Libraries/APIs

NgRx, React, Node.js, RxJS, jQuery, AngularUI, Material 2, jQuery UI, REST APIs, React Redux, jQuery DataTables, Flask-RESTful, Vue 2, Vue, Vuex

Tools

GitLab, GitLab CI/CD, Slack, Asana, Microsoft Teams, Angular CLI, Git, Visual Studio, NPM, GitHub, DataTables, Gulp, Webpack, Figma, Prisma, Helm, Google Kubernetes Engine (GKE), Mongoose, Agora, Mocha

Paradigms

Azure DevOps, Testing, Unit Testing, Dynamic Programming, Responsive, Web Architecture, API Architecture, Agile Software Development, REST, Functional Programming, Modular Design, DevOps, Prototype-based OOP, Microservices, CQRS

Platforms

Azure, Windows, Web, Visual Studio Code (VS Code), Google Chrome, Vercel, Linux, Arch Linux, Kubernetes, Amazon Web Services (AWS), Firebase, Docker, Google Cloud Platform (GCP)

Storage

JSON, Azure Cloud Services, MySQL, MongoDB, Google Cloud

Other

String-searching Algorithms, Code Review, Remote Work, Remote Team Leadership, NGXS, Web Development, Algorithms, Single-page Applications (SPA), Competitive Programming, Front-end Development, ACM Problem Solving, CSS5, CI/CD Pipelines, Web MVC, Web UI, PWA, Progressive Web Applications (PWA), Development, Websites, Web & Mobile Applications, Responsive UI, Responsive Web Apps, Responsiveness, CSS Frameworks, UI Frameworks, API Integration, Front-end, Front-end Architecture, Web Applications, Material Design, HTTPS, Code Architecture, Sprints, Sprint Planning, Deployment, Web UX, Mentorship, Mentorship & Coaching, Team Mentoring, Team Leadership, OOP Designs, .NET 6, Pattern Matching, User Interface (UI), User Experience (UX), APIs, Full-stack, Full-stack Development, Scss-lint, Architecture, Leadership, Video Chat, Back-end, Axios, DNS, HTML5 Animations, Pipelines, Automated Deployment Scripts, QA Testing, Teams, Team Building, Cross-functional Team Leadership, Task Analysis, Project Estimation, Estimations, Firebase Hosting, Mobile Apps, Compilers, Networks, Embedded Systems, Cryptography, Cryptocurrency, Software Architecture, Chrome Extensions, Identity Server, Hardware, IT, Microsoft 365, Charts, Artificial Intelligence (AI)

2010 - 2015

Bachelor of Science Degree in Computer Science and Engineering

German University in Cairo - Cairo, Egypt

2008 - 2010

High School Diploma | International General Certificate of Secondary Education (IGCSE) in Information Technology

Saint Fatima International School - Cairo, Egypt

Collaboration That Works

How to Work with Toptal

Toptal matches you directly with global industry experts from our network in hours—not weeks or months.

1

Share your needs

Discuss your requirements and refine your scope in a call with a Toptal domain expert.
2

Choose your talent

Get a short list of expertly matched talent within 24 hours to review, interview, and choose from.
3

Start your risk-free talent trial

Work with your chosen talent on a trial basis for up to two weeks. Pay only if you decide to hire them.

Top talent is in high demand.

Start hiring