Mouhamad Thiam, Developer in Thies, Thiès Region, Senegal
Mouhamad is available for hire
Hire Mouhamad

Mouhamad Thiam

Verified Expert  in Engineering

Back-end Developer

Location
Thies, Thiès Region, Senegal
Toptal Member Since
October 23, 2021

Mouhamad is a full-stack developer focused on the back end. During his nine years of experience in building and delivering solutions for financial and travel industry clients, he became an expert in creating, exposing, and consuming APIs using Python, FastAPI, Django, JavaScript, and Node.js. Mouhamad is interested in technology innovations such as distributed ledger technology and its applications and enjoys creating solutions that work as inclusion tools and give access to minorities.

Portfolio

Cidemia SAS
Agile Project Management, IT Management, Planning, Python 3, FastAPI, MongoDB...
Sonatel
Java, Elastic APM, Kibana, OpenShift, Key Performance Metrics, Metrics...
Tentamus
Groovy, Full-stack, Java, SQL, Grails, Microsoft SQL Server, React, Webpack...

Experience

Availability

Full-time

Preferred Environment

Linux, IntelliJ IDEA, Python, JavaScript, TypeScript, MacOS, Docker, REST, APIs

The most amazing...

...thing I've developed as a team lead is a booking and ticketing engine for flights with CRM, accounting, insurance, and communication modules.

Work Experience

Founder and CEO

2023 - 2024
Cidemia SAS
  • Developed APIs for a vote results gathering and reporting app.
  • Defined the way the company works and wrote different documents related to it (ground rules, decision-making process, meetings, manuals, etc.).
  • Managed projects and people around them by leveraging the skills needed to achieve our goals.
Technologies: Agile Project Management, IT Management, Planning, Python 3, FastAPI, MongoDB, Object-relational Mapping (ORM), OpenAPI, OAuth 2, OAuth, Starlette

Application Performance Specialist

2023 - 2023
Sonatel
  • Polished 10 different KPIs with thresholds that are used to study the performance of their applications.
  • We created dashboards in the observability platform (Kibana) with alerts that we use to visualize and monitor application performance. The alerts were automated, and stress on resources was prevented with the use of ML.
  • Proposed some recommendations after some studies, with implementation samples and guidelines. They mainly focused on some best practices to reduce resource consumption and effective costs on their platform.
Technologies: Java, Elastic APM, Kibana, OpenShift, Key Performance Metrics, Metrics, Spring Boot, Nexus, Apache Maven

Full-stack Developer

2022 - 2022
Tentamus
  • Created the development process with source code versioning, CI/CD, documenting, and other DevOps steps. Started with a source code in a zip file shared with me and finished with a versioned project that was ready and easy to set up by any new developer.
  • Made a dedicated database for app-related data. The original app relied on an external database handled by another application to read data from there and save it to JSON files. Migrated it to its own database.
  • Created a sync process using Quartz to collect data from the existing external database. This was useful, for example, when a new user was created in the external app.
  • Enhanced the app's security by migrating the authentication mechanism from in-house encryption to a standard hash function. I also added some security policies, such as maximum login attempts, reset passwords, and authentication token emails.
  • Developed an analytics database from the production database. I started developing a data aggregation module that will populate aggregated data in a datawarehouse.
  • Developed a trending app based on UX/UI guidelines from a professional designer using a Figma app. Used React and Highcharts to create charts that integrated with the existing app (scatter plot, histogram, column chart, pie chart, etc.).
Technologies: Groovy, Full-stack, Java, SQL, Grails, Microsoft SQL Server, React, Webpack, Tailwind CSS, Highcharts, Object-relational Mapping (ORM), OAuth 2, OAuth

Engineering Lead

2020 - 2022
Rocketrip
  • Developed a sustainability module that estimates CO2 emissions for the clients' past and current trips, helping to offset the harm they did to the planet by presenting reliable dashboards.
  • Created a module for travel restrictions that helps travelers determine what to expect when traveling or passing through countries regarding COVID-19 tests, quarantine, vaccinations, visas, and other mandatory documents.
  • Took over an existing project by participating in the knowledge transfer and handover. Fixed several bugs and implemented new features and settings to make the app more suitable to the client's needs.
Technologies: Python, Django, FastAPI, GraphQL, MySQL, RabbitMQ, Redis, Celery, React, Apollo, Lerna, Linux, IntelliJ IDEA, TypeScript, Databases, Web Development, Computer Architecture, Node.js, Express.js, MongoDB, JSON Web Tokens (JWT), Docker, APIs, API Documentation, API Integration, SQL, Back-end, Agile, Agile Project Management, REST APIs, Technical Leadership, Pydantic, Solution Architecture, Amazon Web Services (AWS), Object-relational Mapping (ORM), OpenAPI, OAuth 2, SAML, Python 3, OAuth, Starlette

Back-end Lead

2020 - 2020
Mondee
  • Developed the tour packages to permit integration into the TripPro app with the search, booking, ticketing, and payment features for tours and hotels.
  • Created a car rental module integrated with the TripPro app, including the search, booking, ticketing, and payment features with a wide variety of options.
  • Built a cruise module in the TripPro app with different search, booking, ticketing, and payment features.
Technologies: JavaScript, Node.js, Express.js, MongoDB, Mongoose, Linux, IntelliJ IDEA, TypeScript, Databases, Web Development, Computer Architecture, JSON Web Tokens (JWT), REST, APIs, API Documentation, API Integration, SQL, Back-end, Agile, Agile Project Management, Architecture, REST APIs, Technical Leadership, Pydantic, Solution Architecture, Amazon Web Services (AWS), Object-relational Mapping (ORM), OpenAPI, OAuth 2, Python 3, OAuth

Back-end Lead

2019 - 2020
Cosmopolitan Travel Service
  • Developed a Python portable package importable to several projects, interfacing with GDS providers and consuming their APIs.
  • Created a portal as an accounting, searching, booking, and ticketing engine for flights.
  • Developed a CRM module to handle customers and their parameters when using the platform.
  • Built an insurance module to strengthen our existing app.
Technologies: Python, FastAPI, Django, JavaScript, Node.js, Express.js, Vue 2, Swagger, MongoDB, PostgreSQL, SQLAlchemy, Mongoose, TypeScript, JSON Web Tokens (JWT), Unicorn, PI Development, Heroku, GitHub Actions, Eureka, Linux, IntelliJ IDEA, Databases, Web Development, Computer Architecture, Redis, Celery, Docker, REST, APIs, API Documentation, API Integration, SQL, Back-end, Agile, Agile Project Management, Architecture, REST APIs, SOAP, Technical Leadership, Pydantic, Solution Architecture, Amazon Web Services (AWS), Object-relational Mapping (ORM), OpenAPI, OAuth 2, Python 3, OAuth, Starlette

Senior Engineering Consultant

2018 - 2019
MNS Consulting
  • Led the engineering team to build a single portal app for the Government of Congo to comply with the doing business report, simplifying the company creation process.
  • Studied and proposed a fingerprint authentication app.
  • Mentored other junior developers and handled the parts of our infrastructure.
Technologies: Java, Spring Boot, OpenLDAP, PostgreSQL, MongoDB, Thymeleaf, JSON Web Tokens (JWT), Eureka, Camunda BPM, Apache Maven, Nexus, Jenkins, Ansible, Supervisord, Docker, REST, APIs, API Documentation, API Integration, SQL, Back-end, Agile, Agile Project Management, Architecture, REST APIs, Technical Leadership, Solution Architecture, Object-relational Mapping (ORM), OpenAPI, OAuth 2, OAuth

Chief of Development Unit

2017 - 2018
Sensoft
  • Acted as the lead of all finance-related projects in the company; built a transversal knowledge across multiple parts of that field.
  • Created an NFC card reader and writer module used for several projects, handling basic inputs and outputs, data encoding, encryption, and security.
  • Integrated a mobile payment solution in an existing app, allowing small businesses to handle billing, payments, and reports.
  • Built an API gateway agent deployed and configured in the client infrastructure, transforming database access to RESTful API. It mapped the saved procedures to endpoints and exposed them.
  • Created a KYC microservice with anti-money laundering and terrorist financing capabilities, which is used by wallet, card, and core banking systems.
  • Integrated and enhanced the security module to comply with the law regarding the OTP and password rules for an existing core banking system.
Technologies: Java, Spring, RabbitMQ, MySQL, Near-field Communication (NFC), Android, Grails, Groovy, APIs, API Integration, SQL, Architecture, Solution Architecture, Object-relational Mapping (ORM), SQLite, Oracle

Project Manager

2017 - 2017
Sensoft
  • Developed and supervised the implementation of a bank mobility project—ACEP Fekkisila. Interacted with a core banking system database under Oracle and offered mobility features regarding the client, loan, and transaction via an Android app.
  • Implemented an on-site fund collection automation project with FUCCEC Togo and a link with the database under SQL server; agents could recover funds by going directly to the clients.
  • Contributed to the technical implementation of a project named "Small Savings Digitization" with Asusu SA in Niger. Helped agents collect savings from small commerce tenders.
Technologies: Agile Project Management, SQL, SQLite, Oracle

Lead Developer

2016 - 2017
Sensoft
  • Developed a transactions module for a mobile app, having several transaction types such as sending, receiving, refund, cash in, and cash out.
  • Created a back-office web app to monitor transactions and apply constraints.
  • Integrated the transaction reports and dashboard for each level, including the cashier, supervisor, network admins, and platform admins.
Technologies: Java, JavaScript, Grails, Groovy, Android, SQL, Back-end, Object-relational Mapping (ORM), SQLite

Senior Full-stack Developer

2015 - 2016
Sensoft
  • Acted as the principal developer working directly with the lead developer. Refactored an existing app and developed new features.
  • Built an accounting core module for a money transfer app. This module mimicked the accounting plan and tracked and handled how the money is moved between different transactions' accounts.
  • Developed a settings module for a money transfer app for all entities involved in money transfer, such as platforms, networks, and distributors.
Technologies: Java, Grails, Spring MVC, MySQL, SQL, Object-relational Mapping (ORM), SQLite

Card Management System for Refugees

The goal of the app was to help refugees—UNHCR—get their allocation paid quickly.

I built an Android app, a back end and back-office web app for the card management system that completed an existing wallet app. I used the NFC technology and fingerprint to authenticate the users and Excel import to set up amounts in the back office for beneficiaries. We enabled the Android app to have all balances offline and perform verification in not connected environments with a sync mechanism.

Flight B2B Booking Engine

https://hero.ctsfares.com/
A microservices app refactored from an existing monolith offering the CRM, booking, ticketing, and insurance features to B2B travel agencies.

My tasks involved proposing the actual architecture, leading the team, building the entire authentication microservice, and other project parts.

Small Savings Digitalization

In rural and some urban regions of sub-Saharan countries, small savings are a part of the economy.

I led the project and provided an end-to-end digitization solution, offering the agents a mobile app and connecting directly with the core banking system.

Money Transfer App

Clinker is a local and international money transfer solution that helps the educated and low-banked rural population.

It has a mobile and web application and includes several transaction types:
• cash-to-cash (adapted to rural areas)
• cash-to-account (deposits, bill payments)
• account-to-cash (cash out, salary payments)
• account-to-account (wire transfers)

As principal and then lead developer, I was involved in every part of the project. I used to develop Android for the mobile app. I also added an NFC module to read cards from mobile and make transactions over them.
2014 - 2015

Postgraduate Degree in Computer Science

Gaston Berger University - Saint Louis, Senegal

2013 - 2014

Master's Degree in Computer Science

Gaston Berger University - Saint Louis, Senegal

2012 - 2012

Bachelor's Degree in Computer Science

Gaston Berger University - Saint Louis, Senegal

2009 - 2011

Associate Degree in Mathematics and Computer Science

Gaston Berger University - Saint Louis, Senegal

Libraries/APIs

Pydantic, Node.js, SQLAlchemy, REST APIs, OpenAPI, React, Vue 2, OpenLDAP, Highcharts

Tools

IntelliJ IDEA, RabbitMQ, Mongoose, Celery, Lerna, Eureka, Camunda BPM, Apache Maven, Jenkins, Ansible, Supervisord, Webpack, Kibana

Frameworks

JSON Web Tokens (JWT), OAuth 2, Express.js, Swagger, Alembic, Grails, Django, Spring Boot, Thymeleaf, Spring, Spring MVC, Tailwind CSS

Paradigms

REST, Agile Project Management, Agile, Object-relational Mapping (ORM), Concurrent Programming, Key Performance Metrics

Languages

Python, Python 3, JavaScript, TypeScript, GraphQL, Unicorn, Java, Groovy, SQL, SAML

Platforms

Docker, Linux, MacOS, Oracle, Heroku, Android, Nexus, OpenShift, Amazon Web Services (AWS)

Storage

Databases, MySQL, PostgreSQL, MongoDB, SQLite, Redis, Microsoft SQL Server

Other

Software Engineering, Web Development, Data Structures, FastAPI, APIs, API Integration, OAuth, Computer Architecture, Starlette, API Documentation, Back-end, Architecture, Technical Leadership, Solution Architecture, Full-stack, Distributed Systems, Algebra, Programming, Information Systems, Statistics, Mathematical Analysis, Apollo, PI Development, GitHub Actions, Near-field Communication (NFC), SOAP, Elastic APM, IT Management, Planning, Metrics

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