Welcome

I AM

image
Hello,

I'm Abderrahmane Salmi

I'm a software engineer and native Android developer, with an appreciation for good UI and UX. I enjoy building apps that are not just functional, but genuinely enjoyable to use.

With over 4 years of experience, I’ve developed Android apps for clients across various industries, covering the entire development cycle from requirements gathering to publishing on the Play Store. My work includes architecture design, feature planning, UI/UX design, coding, API integration, testing, and deployment.

My tech stack includes Kotlin, Java, REST APIs, Firebase, SQLite, Retrofit, Coroutines, Dagger Hilt, MVVM architecture, Git and more. I also apply Agile/Scrum methodologies to structure projects, manage sprints, and collaborate effectively.

I enjoy applying my Android development skills to help companies and businesses build or improve their apps, ensuring that each project delivers both technical excellence and a pleasant user experience.

1

Ongoing Projects

15

Completed Projects

15

Satisfied Clients

20,000+

Total Downloads
MY PROJECTS

Wasali • Delivery App

Overview
     Wasali is a native Android delivery platform composed of two Kotlin apps: one for customers and another for delivery partners. The system streamlines the process of ordering and delivering shopping items. Customers submit a shopping list, which is automatically assigned to the nearest delivery partner. The partner purchases and delivers the items, and receives payment in cash.
     I was the main Android developer on the Wasali project, but also worked closely with another developer on the delivery partner app. I also collaborated with the backend team to implement new features and integrate RESTful APIs using Retrofit. The apps follow the MVVM architecture and utilize modern Android tools such as Dagger-Hilt for dependency injection, Kotlin Coroutines for asynchronous programming, and the Google Maps API for geolocation. One of the core features I worked on is a background location tracking service in the delivery partner app, enabling real-time tracking of delivery agents to ensure efficient order assignment.
     This project was a valuable experience in which I learned a wide range of advanced Android skills, including implementing real-time location tracking in the background, scheduling and executing background tasks using Alarm Manager, and waking the app from a paused or locked state to notify delivery partners of new orders.

Technologies Used
◆ Platform: Android 
◆ Programming Language: Kotlin
◆ Architecture: MVVM 
◆ Backend: REST API
◆ Authentication: Custom OTP system (Icosnet API)
◆ Android Stack: Google Maps API, Places APIRetrofit, Room, Proto DataStoreCoroutines, Dagger Hilt, Jetpack Navigation, Paging 3, Coil
◆ Notifications: Firebase Cloud Messaging  
◆ Completion Date: May 2024
 
Key Features
◆ User authentication with phone-based OTP and Trusted Devices system to reduce authentication costs
◆ Dynamic shopping list UI for customers to easily create and edit their orders
◆ Background location tracking service for delivery partners, active even when the app is minimized
◆ Wake-lock notifications that alert partners about new orders even when the screen is off
◆ Order reminder system using Alarm Manager to notify partners about unhandled orders
◆ Real-time notifications for status updates, new orders, and reminders
◆ Partner wallet screen showing current earnings, payable amount, and transaction history
◆ Token refresh system to maintain secure sessions with Retrofit Authenticator
◆ In-app language switching allowing users to change the app language instantly 
◆ Firebase Crashlytics for error reporting and stability monitoring 


Link to Project
Explore the final product on Play Store by clicking here.
 
Screenshots


Authentication

Homepage

New Order

Order Details

In-App Language Settings

Delivery Partner - New Order

Delivery Partner - Wallet

Daleelcom • Business Directory App

 

Overview
     Daleelcom is a local business directory platform consisting of three native Android applications: Client, Business, and Admin, all developed in Kotlin. I was responsible for the complete Android development across all three apps.
     On the Client App, users can discover and interact with businesses and services in their region, browse categorized content, view detailed profiles, and make reservations for activities or vehicle rentals. The Business App enables business owners to manage their listings, publish new services, and respond to bookings. The Admin App supports the moderation of user-generated content, specifically approving or rejecting activities submitted by businesses.
     To build a smooth and maintainable app experience, I employed a range of modern Android tools and libraries. The project integrates Firebase for backend services including Authentication, Firestore, Cloud Storage, and Cloud Messaging. I implemented Dagger Hilt for clean dependency injection and used Jetpack Navigation to manage complex navigation flows within a single-activity architecture. For efficient data handling, Paging 3 was used alongside Kotlin Coroutines to manage asynchronous tasks smoothly. Images are loaded efficiently with Coil, while Room provides local data caching.

Technologies Used
◆ Platform: Android 
◆ Programming Language: Kotlin
◆ Backend: Firebase (Authentication, Firestore, Cloud Storage, Cloud Messaging)
◆ Architecture: MVVM with Jetpack Components
◆ Android Stack: Coroutines, Dagger Hilt, Jetpack Navigation, Paging 3, Coil, Room,  Google Play In-App Update API
◆ Completion Date: April 2024
 
Key Features
◆ Multi-app platform: Client, Business, and Admin apps covering different user roles
◆ User authentication with registration, login, and profile management
◆ Search and filter businesses by name and region
◆ View detailed business profiles including galleries and reviews
◆ Book activities and vehicles with dynamic reservation forms
◆ Manage reservations: view, cancel, and track bookings
◆ Business owners can add, edit, and delete their listings
◆ Admin dashboard to approve or reject business activities 
◆ In-app update mechanism allowing users to install updates directly within the app
 
Screenshots
Homepage

Listing Details

Reservations

Admin App

Nbookini • Audiobook App


Overview
     Nbookini is a native Android audiobook application developed using Kotlin. The app provides users with access to a rich catalog of audiobooks in Arabic, English, and French, categorized by genre and author. It supports essential audiobook features such as bookmarking, progress tracking, offline playback, and more.
     As the only Android developer on the project, I was responsible for building both the customer and admin apps from scratch. I implemented clean architecture (MVVM), used modern Android libraries, and integrated a secure backend using Firebase services. The app includes features such as audio streaming via ExoPlayer, in-app purchases through a local payment gateway, user library management, and content administration tools for admins.
     This was my first time developing an audio-focused Android application and working with ExoPlayer. The project gave me hands-on experience in managing media playback, building a responsive and persistent audio player from scratch, and addressing audio apps challenges like background playback and user progress tracking. It was a great learning experience that expanded my skill set which allows me now to develop media-based applications on Android.

Technologies Used
◆ Platform: Android 
◆ Programming Language: Kotlin
◆ Backend: Firebase (Authentication, Firestore, Cloud Storage, Cloud Messaging)
◆ Architecture: MVVM with Jetpack Components
◆ Android Stack: ExoPlayer, Coroutines, Dagger Hilt, Jetpack Navigation, 
Paging 3, Coil 
◆ Payments: Satim API (Algerian e-payment gateway)  
◆ Completion Date: March 2023
 
Key Features
◆ User Authentication: Sign up, log in, and reset password using Firebase Authentication.
Home Screen: Includes a dynamic announcement slider, book categories, featured authors, and a “Continue Listening” section showing in-progress books.
Audiobook Playback: Stream audio using ExoPlayer with support for play, pause, seek, resume, and chapter-based navigation.
Multilingual Support: Access audiobooks in Arabic, English, and French.
Favorites Management: Add or remove books from a personal favorites list.
In-App Purchases: Securely purchase audiobooks using the Satim API.
Progress Tracking: Automatically save and resume playback from the last listened position.
Search & Filter: Perform real-time searches with filters for titles, authors, and categories.
Admin Features: Manage authors, books, announcements, and user orders through an admin dashboard.


Link to Project
Explore the final product on Play Store by clicking here.
 
Screenshots

Authentification

Home & Explore

Book & Author Page

Audiobook Player

Account & Favorites

Ruxwear • E-Commerce App

 

Overview
     Ruxwear is a lightweight, fast, and high-quality e-commerce mobile app designed to provide users with a personalized online shopping experience. With comprehensive features such as product categories, shopping cart management, and order tracking, Ruxwear offers a complete solution for e-commerce enthusiasts.
     This project was developed as part of my continuous learning journey, aimed at gaining hands-on experience, exploring new technologies, and enhancing my skills as a developer.

Technologies Used
◆ Programming Language: Kotlin
◆ Backend: Firebase
◆ Database: Firebase Firestore
◆ Authentication: Firebase Authentication
◆ Platform: Android
◆ Completion Date: July 2021
 
Key Features
◆ Onboarding screen for new users
◆ Sign up, sign in, and password reset functionality
◆ Product categories for easy browsing
◆ Shopping cart management for adding and removing items
◆ Seamless checkout process for order placement
◆ Order management for tracking and managing purchases
◆ Wishlist feature for saving favorite items
◆ Push notifications for order updates and promotions
◆ Filters and search options for finding specific products
 
Screenshots

Onboarding

Authentication

Home Page

Products List

Product Details

Cart & Checkout

Orders

Link to Project
As this project was developed for learning purposes and is not available on any store, there is no direct link to access it.

Home Care • Telemedicine App


Overview
Home Care is a platform designed to connect patients with nurses and home service providers in Algeria, offering a solution to the challenge of finding specialized care within specific geographical areas. The platform facilitates the connection between patients and nurses by enabling users to request the nearest nurse or healthcare provider for adults, children, and pregnant women, based on their location. With features such as geolocation, doctor profiles, appointment scheduling, and rating systems, Home Care enhances the accessibility and quality of home healthcare services.

Technologies Used
◆ Programming Language: Kotlin
◆ Backend: Firebase
◆ Database: Firebase Firestore
◆ Authentication: Firebase Authentication
◆ Platform: Android
◆ Completion Date: January 2021

Key Features
◆ Authentication using phone number
◆ Geolocation & Google Maps integration for locating nearby healthcare providers
◆ Profiles for healthcare professionals, including doctors and nurses
◆ Scheduling appointments for medical consultations or home visits
◆ Push notifications for appointment reminders and updates
◆ Rating and feedback system for patients to review healthcare providers
◆ Filters and search options
◆ Multi-language support (English, French, Arabic)

Screenshots

Onboarding Screen

Authentification

Home Page

Request an appointment

Ratings & Reviews

Doctor's App

Admin's Dashboard

Link to Project
Explore the Home Care app on Google Play here.

Order Time • Delivery App


 

Overview
Order Time is an on-demand express delivery app designed to provide convenient delivery services for a variety of items, including packages, products, and food. With Order Time, users can request a deliveryman at any time to fulfill their delivery needs quickly and efficiently.

Technologies Used
◆ Programming Language: Kotlin
◆ Backend: Firebase
◆ Database: Firebase Firestore
◆ Authentication: Firebase Authentication
◆ Platform: Android
◆ Completion Date: December 2021

Key Features
◆ Authentication using email and password
◆ Filters and search options for quickly finding desired products 
◆ Seamless checkout process
◆ Rating and feedback system for user reviews 
◆ Push notifications for order updates
◆ Dashboard for each user (admin, deliveryman) 
◆ Multi-language support (English, French, Arabic)

Screenshots

Onboarding Screen

Authentication

Home Page

Request Delivery

Delivery Details

Admin's Dashboard

Manage Deliveries

Link to Project
Unfortunately, the Order Time project is no longer available on Google Play as the Order Time startup has cancelled the project. However, feel free to explore the screenshots above to get an overview of the Order Time app's user interface and features.

Taskoro • Task Management App

Overview
     Taskoro is an intuitive project management and task management tool designed to enhance personal organization and streamline team collaboration. Whether you're managing projects, creating to-do lists, or staying connected with team members through real-time chat rooms, Taskoro offers a comprehensive solution for efficient workflows. With its user-friendly interface and robust features, Taskoro empowers individuals and teams to work together seamlessly and achieve their goals with ease.
     This project was developed as part of my continuous learning journey, aimed at gaining hands-on experience, exploring new technologies, and enhancing my skills as a developer.

Technologies Used
◆ Programming Language: Kotlin
◆ Backend: Firebase
◆ Database: Firebase Firestore
◆ Authentication: Firebase Authentication
◆ Platform: Android
◆ Completion Date: September 2021

Key Features
◆ Authentication using email and password
◆ Dashboard for quick access to all tasks
◆ Task management for organizing and prioritizing tasks
◆ In-app chat system for real-time communication with team members
◆ Push notifications for timely updates and reminders
◆ Beautiful, modern UI for an enhanced user experience

Screenshots


Link to Project
As this project was developed for learning purposes and is not available on any store, there is no direct link to access it.

Wasali Express (Old Version) • Delivery App


Overview
     Wasali Express is a delivery application designed to simplify the process of ordering and delivering products from various stores to the user's doorstep. Users can browse through a wide range of stores and products, add items to their shopping cart, and place orders with ease.
     This project marked my first professional endeavor, collaborating with an Algerian delivery startup called Wasali. It offered valuable experience working with a real team and users, laying the foundation for my career in app development.
     PS: While this version of the app serves as an archival record of its early stages, the startup has since evolved, and a new version has been developed to meet changing needs and demands.
this version of the app is now considered an archive, the startup has since grown, leading to the development of a new application, also available in my portfolio.

Technologies Used
◆ Programming Language: Java
◆ Backend: Firebase
◆ Database: Firebase Firestore
◆ Authentication: Firebase Authentication
◆ Platform: Android
◆ Completion Date: July 2021

Key Features
◆ Authentication (Email, Phone)
◆ Shopping cart for adding desired products
◆ Wishlist for saving favorite items
◆ Easy checkout process for seamless ordering
◆ Rating and feedback system for user reviews
◆ Multi-language support (English, French, Arabic)
◆ Push notifications for order updates
◆ Filters and search options for finding specific products
◆ Loyalty program to reward frequent customers
◆ Dashboard for each user role (admin, deliveryman, store owner) 

Screenshots


Onboarding Screen

Authentication

Home Page

Store Page

Product Page

Shopping Cart

Checkout

Link to Project
While this version of Wasali Express is no longer available on Google Play, a new and improved version of the app is accessible. Explore the new version of Wasali Express here.

Ready to bring your app idea to life?

Contact Me
ABDERRAHMANE
SALMI
Pisa, Italy