Android apps
Native apps in Kotlin and Jetpack Compose: business tools, field apps, customer apps. Built to work offline when they must and to stay fast on modest devices.
I'm a freelance app and website developer in Lebanon, and a senior Android developer who works on payment terminals every day: card readers, cash-register links and vending machines. I bring the same care to the mobile apps, Windows apps and websites I build for clients — reliable, tested on real hardware, and pleasant to use.

As a Senior Android Developer at areeba, I develop the Android app that runs on our payment terminals — Nexgo and Kozen devices such as the UN20, N62 and N92. A customer taps a card, and my code reads it, talks to the bank, prints the receipt and tells the cash register or vending machine what happened.
That work means EMV card flows, PIN entry, reversals and currency conversion, plus integrations with cash registers over serial and Wi-Fi and with vending machines over MDB. When the hardware isn't on my desk, I build the tools to test without it.
Before areeba I spent almost seven years at BMB Group, building a B2B merchandising app from scratch with offline sync and receipt printing. I started in 2014 at Code Fish, building HR systems in C# and .NET for clients such as GlobeMed.
As a freelancer I take that discipline to mobile apps, Windows apps and websites for businesses: clear requirements, small working releases, and code that's tested before it ships.
From a single screen to a full product, for businesses in Beirut and across Lebanon. Every project gets the same process: a written scope, regular builds you can try, and a clean handover.
Native apps in Kotlin and Jetpack Compose: business tools, field apps, customer apps. Built to work offline when they must and to stay fast on modest devices.
Desktop tools in C# and WPF: back-office apps, dashboards, and utilities that talk to devices on COM ports or USB.
Company sites, portfolios, landing pages and web dashboards: responsive on every screen, fast to load and easy to keep up to date, like this site.
Apps for Android payment terminals: card payments, receipts, settlement, and links to cash registers. I know the edge cases — declines, reversals, timeouts.
Connecting software to machines: vending machines over MDB, printers, serial and USB devices, cash-register protocols. When the real device is far away, I build a simulator so your team can test from a laptop.
An existing app that crashes, drifts from the backend or needs a new SDK version: I find the cause, fix it, and add tests so it stays fixed.
Company projects are described without confidential details.
Turned our payment terminal into the card reader inside vending machines. The machine asks for a price over the MDB bus; the terminal takes the card and tells the machine whether to release the item.
A Windows app that pretends to be a vending machine, so a payment terminal can be tested without one. Choose a product, pay on the real terminal, and watch the machine release it — or fail on purpose.
Day-to-day work on the terminal app used by merchants: card flows, receipts, settlement and cash-register links, across several device models and three languages.
A motorbike-taxi and small-parcel delivery app for a Beirut taxi office, built once in Kotlin Multiplatform for Android and iOS. Riders order on a map, drivers accept jobs, and the office manages everything from its own dashboard.

My own online team shooter for Android, set in real Beirut neighbourhoods (Downtown, the Souks, Hamra, Ain El Mreisseh and Raouche), which are generated in 3D from OpenStreetMap and elevation data.
Coming soon on Google Play · See the game page
Designed and delivered a merchandising app for field teams from scratch to deployment, owning the whole lifecycle from architecture to customer delivery.
From backend systems in C# to the apps on payment terminals. Download my full CV.
Lead Android development of the POS app on Nexgo and Kozen payment terminals: card payments, DCC, surcharging, QR payments, settlement, cash-register and vending-machine integrations. Refactoring that cut crashes by 40%.
Built a B2B merchandising app from scratch: offline-first sync, SDK integrations and receipt printing. Mentored junior developers and introduced unit testing, CI and peer reviews.
HR management systems for clients including GlobeMed, Jubaili Co. and iEngineering; backend systems in C# and .NET. Joined as a software developer intern in July 2014.
No surprises on scope or price: you know what you're getting and when, and you can try it at every step.
A short call to understand the problem, the users and the devices it runs on.
A written scope with screens, milestones and a fixed price or a day rate — your choice.
Working builds every week or two, so you can test early and steer.
Store or installer release, source code, and notes your team can maintain.
Chosen for the job, not for the trend.
Quick answers to what clients usually ask first.
Yes. I'm based in Baabda, next to Beirut, and I take freelance projects from businesses in Beirut and across Lebanon. Most of the work happens remotely, with regular builds you can try on your own phone or computer.
Native Android apps in Kotlin and Jetpack Compose, Windows desktop apps in C# and WPF, websites and web apps, and apps for Android payment terminals (POS). I also connect software to machines: vending machines, printers, and serial or USB devices.
After a short call I send a written scope with screens and milestones, and a fixed price or a day rate — your choice. You know what you're getting and when before any work starts.
Yes. If an app crashes, has drifted from its backend or needs a new SDK version, I find the cause, fix it, and add tests so it stays fixed.
Tell me what you need and when. I'll answer within one working day with questions or a first estimate.