
Maanrifa Bacar Ali
Ingénieur full-stack
Salaire / Taux journalier
Cenon, France
Mobilité : France
Freelance, ouvert au CDI
Peut venir sur site
Expertises
Langues
À propos
Introduction
Ingénieur full-stack spécialisé en développement embarqué et Kotlin Multiplatform, capable d’intervenir sur tout le cycle de vie d’un logiciel, du cahier des charges au déploiement terrain. Autonome et rigoureux, je privilégie la maîtrise des concepts à celle d’une stack spécifique, ce qui me permet de concevoir mes propres outils quand les solutions existantes ne conviennent pas et de m’intégrer rapidement à un projet existant. 🔗 GitHub : github.com/manriif
Expérience de travail
Ingénieur logiciel indépendant
IndépendantFreelance
mai 2025 - Présent
1 an 6 mois
Bordeaux, France
Période dédiée au développement de projets techniques personnels en Kotlin Multiplatform, avec publication en open source, complétée par une mission freelance ponctuelle. • Ksqlite (github.com/manriif/ksqlite) : bibliothèque Kotlin Multiplatform offrant des bindings quasi complets de l’API C de SQLite, sur l’ensemble des cibles Kotlin (JVM, Android, natif Apple, Linux, Windows, JS, WebAssembly) avec la même version de SQLite partout, chiffrement intégral via SQLite3 Multiple Ciphers. • Komple (github.com/manriif/komple) : écosystème de plugins Gradle né des besoins de build de Ksqlite. Le plugin Gradle télécharge, vérifie et installe les outils natifs nécessaires (compilateurs, SDK, utilitaires) de façon portable, dans le dossier du projet plutôt qu’à l’échelle du système, puis les expose dans des environnements shell composables (PATH, configuration propre à chaque outil). Permet également de déclarer des projets C, sur lesquels des plugins dédiés peuvent ensuite intervenir (compilation, génération de code, ou tout autre traitement). Plugins existants pour la compilation Android Native (NDK), Windows/Linux (Zig), JavaScript/Wasm (Emscripten) et Apple (Xcode), ainsi que pour l’installation d’outils. personnalisés. • Shuttle (projet en cours, non publié) : runtime Kotlin Multiplatform d’exécution de bytecode à distance, reprenant le principe d’une machine virtuelle. Le code (rédigé en Kotlin) est compilé côté client vers un jeu d’instructions léger, incluant des instructions personnalisées pour la concurrence, puis interprété côté serveur. Né du besoin d’exécuter du code sur un WebWorker (JS) sans développer de système de messagerie complexe. • Mission freelance : accompagnement technique, transfert de compétences et maintenance sur un système embarqué de contrôle d’accès basé sur microcontrôleur STM32, en lien avec mon ancienne activité professionnelle.
Ingénieur Full-Stack
Cyc'lock Bordeaux
sept. 2023 - mai 2025
1 an 9 mois
Bordeaux, France
Développement d'une solution IoT de stationnement sécurisé pour vélos, articulée autour d'un boîtier connecté conçu sur une carte électronique sur mesure (avec un industriel), répondant à de fortes contraintes : gestion simultanée de plusieurs moyens de communication et d'accès, autonomie sur batterie, chiffrement, fonctionnement hors ligne. Ce boîtier pilote l'ouverture/fermeture des emplacements, seul pour un petit nombre de portes, ou en réseau pour des sites de plusieurs milliers d'emplacements. Autour de lui : applications, SDKs et remontée des données côté serveur. • Pilotage produit : cahier des charges, relation client et partenaire, responsabilité de l'architecture et des choix techniques (frontend, backend, embarqué), documentation et reporting. • Carte électronique (STM32) : conception avec un industriel, pilotage autonome de plusieurs emplacements, interconnexion optionnelle pour déploiements plus vastes. Gestion simultanée Bluetooth, Ethernet, Cellulaire, lecteur carte/badge, sous fortes contraintes matérielles, sur batterie ou secteur. Couche d'abstraction matérielle et drivers, chiffrement des communications, fonctionnement hors ligne. Tests unitaires C++/Google Test avant réception du matériel, puis implémentation concrète. • Applications & SDKs (Kotlin Multiplatform) : app grand public, app de gestion (utilisateurs, personnel, matériel), app interne de gestion de parc, déclinaison marque blanche. SDKs pour piloter les boîtiers et intégrer des fonctionnalités côté clients tiers. • Backend (Supabase) : centralisation des données (utilisateurs, clients, boîtiers et leur état) avec suivi temps réel. Toutes les demandes d'accès aux emplacements transitaient par ce projet, quel que soit le medium. Échanges avec systèmes externes prévus. Installation du matériel sur site et pilotage des essais en conditions réelles avec partenaires et clients. • Encadrement d'alternants.
Ingénieur d'étude
Université de Franche-Comté
nov. 2021 - mars 2023
1 an 5 mois
25200 Montbéliard, France
Projet de recherche visant à développer une solution de localisation indoor pour des environnements de grande surface fortement contraints, de type entrepôt, susceptibles de perturber les communications sans fil. La solution reposait sur des nœuds faible consommation communiquant en LoRa, dont la position pouvait être suivie au sein du périmètre couvert. • Développement d’une application Android en Kotlin permettant de quadriller un périmètre et de communiquer avec les nœuds déployés sur site. • Développement du firmware des nœuds, basés sur des microcontrôleurs ESP32, exploitant les technologies sans fil LoRa et Wi-Fi, avec prise en compte de fortes contraintes d’autonomie énergétique. • Encadrement de stagiaires.
Stagiaire
DigiChrone®
mars 2021 - août 2021
6 mois
21340 Nolay, France
Conception d’une solution de recherche de personnes par voie aérienne, combinant pilotage de drone et analyse d’image, y compris en conditions de faible visibilité grâce à un drone équipé d’une caméra thermique. • Développement d’une application mobile Android en Kotlin, avec intégration C++, permettant de quadriller une zone de recherche, de planifier et lancer un itinéraire de vol automatisé, avec possibilité de reprendre le contrôle manuel à tout moment. Pilotage du drone (DJI) via son SDK officiel. • Développement de modèles de détection de personnes vues du ciel avec OpenCV, entraînés sur un jeu d’images propre au projet, en tenant compte des contraintes spécifiques à la vue aérienne. Entraînement réalisé sur un supercalculateur mis à disposition. • Développement d’une API REST en PHP (Symfony) pour le transfert de données et le stockage des itinéraires de vol.
Stagiaire
SEM NUMERICA
mars 2019 - mai 2019
3 mois
25200 Montbéliard, France
Poursuite du développement d’une solution de covoiturage à destination d’un campus. Les conducteurs et passagers déclaraient leurs itinéraires respectifs, l’application se chargeant de faire correspondre les emplois du temps pour permettre aux conducteurs de récupérer des passagers sur leur trajet. Les covoitureurs bénéficiaient en complément d’un accès à un emplacement de parking réservé, dont la barrière était pilotée par le système. • Migration de l’application, initialement native Android en Java, vers une architecture cross-platform en Ionic Angular (TypeScript), puis poursuite de son développement. • Développement de la logique de correspondance entre les emplois du temps des conducteurs et des passagers. • Développement du pilotage de la barrière de l’emplacement de parking réservé aux covoitureurs.
Stagiaire puis Technicien
FEMTO-ST Institute
juil. 2018 - juil. 2018
1 mois
25200 Montbéliard, France
Développement d’une solution de covoiturage à destination d’un campus. Les conducteurs et passagers déclaraient leurs itinéraires respectifs, l’application se chargeant de faire correspondre les emplois du temps pour permettre aux conducteurs de récupérer des passagers sur leur trajet. • Développement d’une application Android en Java, incluant la déclaration des itinéraires et la consultation des trajets proposés. • Développement de la logique de correspondance entre les emplois du temps des conducteurs et des passagers. • Développement de l’API REST en PHP (Symfony).
Formation
Université Marie et Louis Pasteur
Master of Computer Applications - MCA, Information Technology
2019 - 2021
3 ans
Master of Computer Applications - MCA, Information Technology
iUT Nord Franche-Comté
Bachelor's degree, Information Technology
2018 - 2019
2 ans
Bachelor's degree, Information Technology
iUT Nord Franche-Comté
Higher National Diploma, Computer Systems Networking and Telecommunications
2016 - 2018
3 ans
Higher National Diploma, Computer Systems Networking and Telecommunications
Lycée Victor Hugo
High School Diploma, General Studies
2013 - 2016
4 ans
High School Diploma, General Studies
Portfolio

Komple
