MOHAMED JABERI

lead iOS Developer

Salaire / Taux journalier

92500 Rueil-Malmaison, France

Freelance, ouvert au CDI

Expertises

IOSSwiftFirebaseDéveloppement Mobile

Langues

AnglaisArabeFrançais

À propos

Liens

Expérience de travail

lead iOS Developer

BforBank

janv. 2023 - Présent

3 ans 10 mois

Paris, France

• Développement des interfaces graphique avec SwiftUI en se basant sur Figma ‘pour les maquette’ et ZeroHeight ‘pour les composants design system’. • Travailler sur le modèle de conception Clean Archi qui devise le projet en 3 couches (Presentation layer ‘MVVM-C’ , Domain layer ‘Business logic by using Interactor, Data layer ‘Networker, Data base’ ) • Implémenter les web services avec en utilisant modern concurrence Async/Await. • Implimenter custom composants, custom modifiers et costume subviews avec SuiftUI. • Utiliser SonarQube locally et en remote pour faire la merge request verification afin de détecter les code smell et la generation le code coverage rapport. • Utiliser Bitrise pour déployer des nouveaux builds en différents environnements sur Firebase, Browserstack et TestFlight. • Amelioration d’archi : utiliser differents design pattern afin de rendre le code clean, réusable et maintenable (Pattern : DTO, factory, Façade, Delegation, Singleton, Observer, ID ” Injection de dépendances, mock, Spy…), Intégrer Combine pour le binding • Utiliser SPM pour integrer les customs component et libraray. • Review de code lors de création de merge request et faire le PeerPrograming. • Réaliser le développement des tests unitaires (tester les ViewModels, Interactor, Repository, Manager) • Proposer et améliorer les architectures techniques de projet. • Intégrer DataScannerViewController pour ajouter la feature scan IBAN. • Investigation et Analyse des bugs graphiques et fonctionnels. ENVIRONEMENT TECHNIQUE ET FONCTIONNEL : • Secteurs : Banking • Langages : Swift, SwiftUI, Combine. • Outils : XCode, Figma, Betrise, Firebase, Swagger, Zeroheight, Fork, Gitlab, REST API, SwiftGen, Swift-Lint, SonarQube • Compétences Fonctionnelles : Développement de composants génériques, Gestion du versioning, Documentation technique du projet , Méthode agiles • Méthodes : Agile/Scrum, TDD

iOS Developer

Euro Information Developpements / EID

déc. 2020 - Présent

5 ans 11 mois

Strasbourg, France

Lyf pay (https://apps.apple.com/fr/app/lyf-pay/id824967438 ) • « Lyf » est une Fintech Française, leader du paiement mobile augmenté • I ’objectif est d’offrir des solutions de paiement mobile simple, avant-gardistes et sécurisées à plus de 2 millions de particuliers via son application Lyf Pay • Avec Lyf Pay : Payer vos achat en magasin avec votre téléphone sans contact et sans limite, dématérialisez toutes vos cartes de fidélité, Envoyer de l’argent à vos proches gratuitement et de maniéré instantanée, créez des cagnottes 100% gratuites. TACHES : • Développement des interfaces graphique en se basant sur InVision. • Travailler sur le modèle de conception MVVM-C • Refonte archi (re-implimenter des ancien fonctionnalité en MVVM-C , Intégrer RxSwift pour le binding, et ID ” Injection de dépendances” ) • Intégration des nouveau SDK ”Restaurant et Scan & Go” et mise à jour les fichier Podspec • Revue de code. • Réaliser le développement des tests unitaires () • Proposer et améliorer les architectures techniques des projets. • Développement du module « Parkus » : Permet de consulter les listes des parkings disponible et payer via l’application • Développement du fonctionnalité Universal Link : permettant la redirection vers l’app depuis le scan d’un QR Code • Intégrer Core Data pour persister les statistiques de fidélité • Investigation et Analyse des bugs graphiques et fonctionnels.

iOS App Developer

Néo-Soft Groupe

sept. 2019 - nov. 2020

1 an 3 mois

Région de Marseille, France

1) Setting up Unit Tests : - Added unit testing target and scheme to an existing project 2) Writing testable code : - Refactored networking logic - Abstracted out logic from our view controller - Added tests for extensions 3) Asynchronous testing : - Testing network requests 4) Mocking : - Extend URLSession
Refactor tests to use mock objects - Created protocols for dependencies - External test files 5) Code coverage and performance tests : - Xcode’s code coverage Performance tests with measure - Parallelizing and randomizing tests 6) UI tests : - add new UI testing target - add new test scheme
- write UI test 
7) Testing your view controllers

IOS Application Developer

MS Solutions (Monetics Services Solutions)

juin 2019 - sept. 2019

4 mois

Tunisie

- On behalf of the customer Ooredoo, Development of the Mobicash application that allows to carry out monetary transactions. - Responsible for Integrate the design, build, deployment, debug & maintenance. - Designed and Developed iOS applications for customers - Development was mainly in Swift. - Working with SqlLite, and cocoaPods build a native app with XCode IDE And Swift language
. - UI that works in diffrent devices and resolutions. - Using SCRUM as our project management methodology. - Worked in an Agile environment and managed to launch a widely used application. -Using Fastlane : For automating our development and release process : 1- AUTOMATE SCREENSHOTS : Automatically generate localized screenshots for the app store. 2-BETA DEPLOYMENT : Easily distribute beta builds to testers. 3-APP STORE DEPLOYMENT : Publish a new release to the app store . 4- CODE SIGNING : Reliably and consistently code sign app

Proxym Group

janv. 2017 - juin 2019

2 ans 6 mois

Sousse, Tunisie

IOS Application Developer

août 2017 - juin 2019

1 an 11 mois

Sousse, Tunisie

- Worked as an iOS Developer with a highly skilled and experienced team of 6 iOS Developers on the major Beterise's application . - Using SCRUM as our project management methodology. - Worked in an Agile environment and managed to launch a widely used application.

Projet de fin d’étude

janv. 2017 - juil. 2017

7 mois

Sousse, Tunisie

Development of an application that reacts with real objects based on Augmented Reality: Task: The detection of an object on the paper surface, the use of different types of camera and their calibrations, video processing and pattern recognition. Assimilation of complex notions related to computer imaging, Use of mathematical tools in algorithms. - Development was done using Swift & C++ on the iOS side. Technical environment: Ipad, Xcode, Sprite Kit, Open-CV, Swift, C, C ++

IOS Developer , JAVA Trainer

learning Pro

sept. 2015 - janv. 2017

1 an 5 mois

Bizerte, Tunisie

IOS Mobile Engineer Internship

Beta Life Center, Cabinet du Consulting & de Formation

juin 2016 - juil. 2016

2 mois

Tunis, Tunisie

Development of an E-Commerce application Moltin API Integration, Product Selection, Product Navigation, Add to Cart and Order Validation.

IOS Mobile Engineer Internship

Learning_Pro

juin 2015 - août 2015

3 mois

Tunis, Tunisie

IOS application development of Geolocation. the expanded example displays the weather forecast in a captured city by interacting with the Rest API provided by Openweather.org. It also shows how to do geolocation using Google Maps.

Internship Trainee

Groupe Tunisie Telecom

juil. 2014 - août 2014

2 mois

Bizerte, Tunisie

knowing the ACTEL work process, have an idea about the execution and control plan and also properly carry out certain tasks supervised by the agents of the ACTEL.


Formation

Noble Work Foundation

Composable-SwiftUI-Architecture-Using-Redux, iOS Programming

2023 - 2023

1 mois

SwiftUI Architecture Using Redux course! This course provided a deep dive into the Redux architecture and how it can be used to build scalable, maintainable apps with SwiftUI. I learned how to use the Redux pattern to manage app state, create composable and reusable views, and write testable code. I highly recommend this course to any developer looking to improve their skills and build better apps with SwiftUI. * Unidirectional Data Flow Using Redux Design Pattern in SwiftUI * Composable SwiftUI Apps Using Redux * Maintaining Global State, Actions, Multiple Reducers * Asynchronous Requests Using Middleware

Noble Work Foundation

Async/Await and Actors - Concurrency in Swift, iOS Programming

2022 - 2022

1 mois

Résultat : Async/Await and Actors - Concurrency in Swift

Concurrency allows multiple tasks to run at the same time.  When used correctly, it can create a pleasant user experience and can even avoid crashing your app. In this course, you will learn about the new concurrency features available in Swift using Async/Await and Actors. * Understanding Concurrent Programming
 * Getting Started with Async & Await (Dates App)
 * Understanding MVVM Design Pattern
 * Dates App Using MVVM
 * Exposing your Functions as Async/Await Using Continuation
 * Understanding Structured Concurrency in Swift
 * Project: Random Images and Quotes
AsyncSequence
 * Actors
 * New async/await features of Swift language * Concurrency in Swift Using Actors * Exposing callback functions using continuation API * Running concurrent tasks using async-let and Task Groups * Writing modern asynchronous syntax using async/await

Noble Work Foundation

Combine: Asynchronous Programming with Swift, Combine Framework in iOS Using Swift

2022 - 2022

1 mois

I learn in this course: - Publishers, Subscribers and Operators - Transforming Operators - Filtering Operators - Combining Operators - Sequence Operators - Combine for Networking - Debugging Combine - Combine Timers - Resources in Combine - Integrating Combine with UIKit Application - Weather App - Understanding MVVM Design Pattern - SwiftUI Basics - Understanding State and Binding - Hacker News - SwiftUI, Combine and Web API

Noble Work Foundation

Testing iOS Apps - Behavior Driven Development Using Swift, Testing iOS Apps

2022 - 2022

2 mois

Learn Unit Testing, Test Driven Development and Behavior Driven Development in iOS Using Swift Language: Code source on Github : https://github.com/mohamed-habib-jaberi/Testing-iOS-Apps.git Test Driven Development Types of Testing : * Unit Testing * User Interface Testing * Integration Testing * Acceptance Testing * Performance Testing
 Test Expectations : * Testing asynchronous code using Expectations * Multiple Expectations Dependency Injection and Mocks : * Using Fake, Mocks and Stubs * Mocking callbacks Behavior Driven Development * Using Gherkin language * Understanding The Outside-In Approach * Adding Cucumberish dependency * Writing Cucumberish test continued

Udemy

Mastering RxSwift in iOS

2020 - 2021

2 ans

Mastering RxSwift in iOS : - Understanding functional programming and RxSwift - Observables - Subjects - Implementing photo filter app using RxSwift - Filtering operators - Todo list app using filtering operators - Transforming operators - Building news app using transforming operators - Combining operators - Beginning RxCocoa - MVVM with RxSwift

Udemy

MVVM Design Pattern Using Swift in iOS, iOS Development

2020 - 2021

2 ans

Building New App Using MVVM Design Pattern : 1- Setting Up the User Interface 2- Implementing Web Services Layer 3- Creating and Decoding JSON to Models 4- Building ViewModels and Populating View Models 5- Persisting Settings and Converting Temperature Units 6- Setting Up Delegate to Pass Settings 7- Bindings : View to ViewModel Binding 8- Bindings : ViewModel to View Binding 9- Implementing WeatherDataSource 10- Implementing Generic Data Source 11- Unit Testing

Scrum Study

Scrum Fundamentals Certified (SFC™) certification, Business Administration and Management, General

2020 - 2021

2 ans

CertiProf

Scrum Foundation Professional Certificate, Accounting and Business/Management

2020 - 2021

2 ans

6sigmaStudy

Six Segma Yellow Belt, Business Administration and Management, General

2020 - 2021

2 ans

We get after taking this Certification : - Master 40+ Six Sigma tools - Complete a realistic Lean Six Sigma Yellow Belt project in 6.5 hours - Add Minitab expertise to your skill set and analyze Six Sigma Yellow Bel project data - Become a pro at answering tough interviewer questions related to Lean Six Sigma Yellow Belt - Get access to 140+ Six Sigma pdf that are downloadable and review 30+ articles - Solve any business problem using Six Sigma principles, tools and techniques - Learn root-cause analysis techniques - Learn Graphical techniques using Minitab - Learn how to create a Lean Six Sigma Yellow Belt project storyboard - Receive trainer assistance using the Q&A Discussion board

Pluralsight

Clean Architecture: Patterns, Practices, and Principles, iOS Developer

2020 - 2020

1 an

Clean Architecture: Patterns, Practices, and Principles : - Clean Code - Invest in Clean Code - Domain-centric Architecture - Application Layer - Commands and Queries - Functional Organization - Microservices - Testable Architecture - Evolving the Architecture

Pluralsight

Lean and Agile Enterprise Architecture, Agilité / Scrum

2020 - 2020

1 an

Lean and Agile Enterprise Architecture: Getting Started 1- The CFBC Case Study: Introducing CFBC Case Study The Investigation What Really Transpired? 2- Understanding Lean Principles: Economics of Lean Wasteful Work & Overburden Variability and Queues 3- Strategic Agility: Strategy and VUCA World New Approaches to Strategy BMC, Strategy, & Sense-making 4- Innovation and Architecture: An Innovation Framework Shapes of Innovation Strategy, Innovation, and Architecture 5- Architecture Development Sprint: Quicksilver Case Study Traditional Process 6- Architectural Agility Transforming Legacy Architecture Microservices Architecture Realizing the Architecture Container Technologies Tools Walk-through Tools in Detail

Pluralsight

Scrum Development with Jira & JIRA Agile, Agility and Scrum

2020 - 2020

1 an

Scrum Development with Jira & JIRAA Agile 1- Concepts of Scrum Development with Jira & Jira Agile : Agile Development Scrum Framework JIRA for Agile Scrum User Stories, Epics and Themes Product Owner, Scrum Master, Team Member Product Backlog Sprint Planning Meeting Daily Scrum Burndown Chart & Velocity Sprint Retrospective Sprint Review JIRA 2- Getting Started with Jira & Jira Agile : The Scrum Boards Project Overview and Administration Creating the Backlog 3- Sprint Planning & Sprint Retrospective: Sprint Planning Meeting Sprint Retrospective Meeting Sprint Review 4- Scrum & Sprints : Daily Scrum with Work Mode Work Mode Demo Report Mode Additional JIRA Reports

Pluralsight

Structural Design Patterns in Swift 5, iOS Development

2020 - 2020

1 an

Structural Design Patterns in Swift 5 : - The Adapter Pattern - The Bridge Pattern - The Composite Pattern - The Decorator Pattern - The Façade Pattern - The Flyweight Pattern - The Proxy Pattern

Pluralsight

Behavioral Design Patterns in Swift , iOS Development

2020 - 2020

1 an

Behavioral Design Patterns in Swift: - Chain of Responsibility Pattern - Command Pattern - Interpreter Pattern - Iterator Pattern - Mediator Pattern - Memento Pattern - Observer Pattern - State Pattern - Strategy Pattern - Template Method Pattern - Visitor Pattern

Pluralsight

Swift iOS UI and Unit Testing, iOS Development

2020 - 2020

1 an

1- UI Testing : Creating a Simple UI Test Providing Access on Hard to Reach Elements Working with XCTAssert Handling the Delete Scenario 2- Unit Testing : Creating a Simple Unit Test Using setUp() and tearDown() Multiple Asserts Filling Gaps in Test Coverage 3- Advanced Testing Techniques : Global Variables Code Reuse Report Navigation and Test Coverage Debugging Tests Testing UITableView

Pluralsight

iOS Auto Layout: Adaptive UIs for All Devices, iOS Development

2020 - 2020

1 an

iOS Auto Layout: Adaptive UIs for All Devices 1- Building a Dynamic User Interface : Too Many Screens Update Frames 2- Working with UIScrollView and Layout Guides : UIScrollView and Auto Layout Setting up UIScrollView UIScrollView's Content Properties View Controller's Layout Guides and Scroll Views Automatically Adjusts Scroll View Insets UILayoutSupport Protocol 3- Size Classes and Trait Collections Equal Spacing Techniques UILayoutGuide 4- Controlling Traits and Constraints UITraitEnvironments UITraitCollection Transitions 5- Leveraging Pseudo-languages for Internationalization UILabel's Number of Lines Double Length Pseudo language Remove Intrinsic Content's Width Flexible Height Right-to-Left Pseudo language 6- Supporting Accessibility with Dynamic Type UIFont Text Styles Setting Text Styles in Code Notifying Your App of Dynamic Type Changes 7- iPad Multitasking Better Readability UIView's Layout Guide Margins Responding to Other Apps Responding to Keyboard Notifications

Pluralsight

Practical iOS Concurrency, iOS Development

2020 - 2020

1 an

Practical iOS Concurrency : 1- Creating and Using Blocks 2- Dispatch Queues : - Serial Queue - Concurrent Queue - Adding Tasks to a Queue 3- Operation Queues : - NSOperatios - KVO Compliance

Pluralsight

Creational Design Patterns in Swift 5, IOS Development

2020 - 2020

1 an

Exploring the Pros and Cons of Design pattern UML,The Class Diagram Representing Relationships The Sequence Diagram 1- the Singleton : Implementing a Singleton Revealing Concurrency Problems Making Singleton Thread-safe Improving Performance Through Dispatch Berriers 2- The Prototype : Copying Value vc Reference Types Clonig Reference Type Implementing Shalow Copying Implementing Deep Copying 3- The Builder Pattern: Building Class the Wrong Way and Applying the Builder Pattern 4- The Factory Method : Exposing Too Many Types Applying the Factory Method 5- The Abstract Factory: A Tightly Coupled Class Implementing the Abstract Factory Removing the Unwanted Dependencies

Pluralsight

IOS Data Persistence, IOS Development

2020 - 2020

1 an

1-Establishing the data Persistence Landscape : - Setting the Stage for Data Persistence - Persisting with a purpose - Encoding and Decoding Data 2- Saving Settings and Configuration : - Managing Preference with UserDefaults - Synchronize Setting with iCloud - Configuring Apps with Property List 3- Saving Objects and Object Graphs 4-Saving Data as Documents and Files : - Understing the Use Case - Designing a Document - Creating and Loading Documents - Customise App’s File Extension - Interacting with Document Data

CertiPro

Scrum Foumdation Professional Certificate, Business Administration and Management, General

2020 - 2020

1 an


Licences et certifications

NumPy Essential Training: 1 Foundations of NumPy

Délivré le : avr. 2024

Certifié par LinkedIn

Advanced Python

Délivré le : avr. 2024

Certifié par LinkedIn

Le meilleur endroit pour trouver votre prochaine opportunité

© 2026. Tous droits réservés.