YSF.SLM

YOUSOF SELIM

Halftone print of Yousof Selim sitting relaxed in the step of his own name, knees up, gazing across the letters

PORTFOLIO/2026

Software Engineering Student

Mobile & Full-Stack Developer

SUBANG JAYA, MALAYSIA
3.04°N — 101.59°E

AVAILABLE JAN—APR 2027
SUBANG JAYA, MY

يوسف سليم — Yousof Selim
Name
يوسف سليم — Yousof Selim
Shipping since
2024
Built solo, end to end
03
Degree expected
AUG 2027
Available
JAN—APR 2027
Languages
EN / AR
Yousof Selim seated in a stone opening in Melaka
FIG. 01 — MELAKA, MY · DEVELOPED

00/IDENTITY · DEVELOPED

Software, built
with intent.

Software Engineering student graduating in August 2027, building and shipping mobile, web, and desktop products since 2024 — sole developer of cross-platform products spanning iOS, Android, web, and desktop.

Strengths
Flutter/Dart, Firebase, TypeScript/Node.js, SQL/NoSQL
Practice
Native integrations, automated testing, end-to-end delivery
Available
Full-time internship
January — April 2027
Location
Subang Jaya / Kuala Lumpur, Malaysia
Languages
English · fluent
Arabic · native
Roots
Egypt · living in Malaysia

FIG. 00.2/AT A GLANCE

  • 01Product live on the App Store and Google Play
  • 03Cross-platform products owned end to end, solo
  • 146Accounts registered in Bupples
  • 61Hangouts real people created in it
  • 117Tests protecting Adelante's content contracts
  • 04Codebases shared with other developers
  • 1.2.5Bupples on the App Store, released 27 July 2026
  • AUG 2027BSc Software Engineering (Hons) — Sunway University / Lancaster University
  • JAN—APR 2027Available for a full-time internship

FIG. 00.5 — THE PIPELINE

Design.01SPEC Build.02SOURCE Ship.03STORES

End to end, and out to the stores.

FIG. 00.6/HOW I WORK

Six rules I actually follow

  1. Money is integer arithmetic

    Currency does not survive floating point, and a shared bill is only trustworthy when every participant's device computes the same figure. Amounts are held and split as integer minor units under their ISO 4217 exponent, with the leftover cent distributed deterministically rather than rounded out of existence.

    In practiceA cent-exact ISO 4217 multi-currency ledger, split by largest remainder — RM51.50 across four people resolves to RM12.875 before the remainder is assigned, not after.

  2. Trust the server, not the client

    Anything a client can compute, a client can also lie about. The writes that decide who owes whom run in Cloud Functions and are idempotent, so a retried request cannot double a debt, and everything else is bounded by Firestore Security Rules, which are what actually hold. App Check is integrated on the client, but enforcement across the callables is still switched off in source, so it is not yet a layer I claim.

    In practiceIdempotent Cloud Functions behind Firestore Security Rules, with Remote Config. App Check integrated; enforcement pending.

  3. Launch is the start of the work

    A store listing is a commitment to keep shipping, not a finish line — the interesting version of a product is the one that survives its first month of real use.

    In practiceFirst released 2 July 2026; version 1.2.5 reached the App Store on 27 July 2026.

  4. Reliability claims need a test behind them

    "It works" describes one run, not a system. Adelante's content pipeline — caching, deduplication, quality scoring, strict filtering — is covered by automated tests because a scheduled pipeline fails quietly, and the failure shows up on someone's Lock Screen rather than in a crash report.

    In practice117 Dart unit tests over the client's content layer — library loading, deduplication, strict filtering, quality floor and refresh policy — with widget payload parity covered alongside.

  5. Keep private data on the device

    The safest place for a camera frame is the machine that captured it. Photoshoot runs its entire pipeline locally — Electron with context isolation, sandboxing and a strict CSP, WebGL2 for the effects, MediaPipe for face tracking — so nothing is uploaded in order to be processed.

    In practiceLocal-first Electron/WebGL2 architecture; camera processing and captures stay on-device, with Firebase Hosting serving only the app itself.

  6. Go native where the platform is the product

    Cross-platform tooling is a default, not a rule. When the product surface is a widget rather than a screen, the framework has nothing to render into, so the widget gets written twice — properly — in the platform's own toolkit.

    In practiceWidgetKit/SwiftUI on iOS and Android RemoteViews on Android, for Home Screen, Lock Screen and StandBy, over a shared Flutter app.

FIG. 01 — THE CASE FILES

SELECTEDWORK

05CASE FILES 02 OPEN

  • Read the Bupples case study

  • Read the Adelante case study

  • Read the Photoshoot case study

All work & archive

02/TOOLS IN MOTION

What I build with.

The lanes keep moving until you choose one. Hover to pause that lane, then browse it with its shaded edges. I learned most of this the long way, and the rest with the old cheat.The lanes keep moving. Tap a lane to pause it, then browse it with its arrows.

Before the tool list — the things I can take from an empty repository to a release.

  • Cross-platform mobile products

    Take a Flutter application from an empty repository to a listing on both the App Store and Google Play, including the signing, the store paperwork, and the update cadence afterwards.

  • Native iOS and Android surfaces

    Leave the framework where the framework cannot go — Home Screen, Lock Screen and StandBy widgets written natively on each platform and wired back into a shared app.

  • Backends, data and rules

    Model the data, move the writes that decide anything into server-side functions, and constrain the rest with security rules instead of trusting the client.

  • Real-time graphics and desktop

    Build interfaces that run on the GPU and ship as a desktop binary as readily as a web page, with the process boundaries locked down.

  • Applied AI in products

    Put a model where it does a job a user can check — reading a receipt into structured line items, tracking a face on-device — rather than where it decides a number.

  • Release and product operations

    Run the unglamorous half — versioning, subscriptions, remote flags, design handoff, and the release itself — so a build can be shipped on a schedule rather than when it happens to be ready.

SYS.01Languages
DartTypeScriptJavaScriptPythonSQLHTML/CSS

The exact language set behind the shipped work.

SYS.02Mobile + frontend
FlutterRiverpodSwift/SwiftUIKotlinWidgetKitRemoteViewsElectronWebGL2

Cross-platform products and the native surfaces around them.

SYS.03Backend + data
FirebaseFirestoreCloud FunctionsNode.jsREST APIsApp Check

Real-time state, exact data, secure rules, and APIs.

SYS.04Cloud, AI + services
Vertex AIGeminiMediaPipeRevenueCatRemote ConfigApp Check

Vision, intelligence, subscriptions, and release infrastructure.

SYS.05Tools
Git/GitHubXcodeFigmaGodot Engine

Versioned, designed, tested, packaged, and shipped.

Auto-scrolls · hover to reveal edge navigationAuto-scrolls · tap a lane to pause · use the arrows

03/ACADEMIC CHAPTERS

Two chapters · one direction

Foundation in Information Technology — Multimedia University, May 2023 to July 2024.

Chapter 02 / Current

Bachelor of Software Engineering (Hons)

Expected August 2027

Subang Jaya, Malaysia
Dual-degree programme
In progress

04/EXPERIENCE & LEADERSHIP

10+posts + campaign assets

Content with direction.

Digital Marketing Executive

Sunway Cybersecurity Club

SUBANG JAYA · JAN 2026—PRESENT

CONTENT MIX ILLUSTRATIVE

  • Planned 10+ LinkedIn posts and campaign assets, coordinating the club's content calendar for recruitment, events, awards, and industry activities.
  • Produced recruitment, industry-visit, award-announcement, and event-recap graphics in Canva while collaborating with the committee and external partners.

FIG. 04/THE RECORD

  1. Feb 2026 — Present

    Sole developer

    Independent products Subang Jaya, Malaysia

    Three products taken from an empty repository to a release, each owned end to end — product design, client, backend, security rules, store paperwork and the update cadence afterwards.

    1. Bupples

      Feb 2026 — Present

      • Built and launched a social expense-sharing product for iOS and Android, owning product design, Flutter development, Firebase backend architecture, security, and release workflows.
      • Engineered a cent-exact ISO 4217 multi-currency ledger on idempotent Cloud Functions behind Firestore Security Rules, with Gemini receipt extraction, real-time chat, RevenueCat subscriptions and Remote Config.
      • Live on the App Store and Google Play since 2 July 2026; version 1.2.5 shipped on 27 July 2026.

      Flutter Dart Firebase Firestore Cloud Functions Vertex AI Gemini RevenueCat App Check Remote Config

      Case study
    2. Adelante

      Jun 2026 — Present

      • Built a privacy-first motivation app with native WidgetKit/SwiftUI and Android RemoteViews widgets for the Home Screen, Lock Screen, and StandBy — without accounts, analytics, or ads.
      • Designed a Firestore and scheduled Cloud Functions content pipeline with offline caching, deduplication, quality scoring, and strict filtering; validated reliability with 117 automated tests.

      Flutter Swift SwiftUI WidgetKit Kotlin Android RemoteViews Firebase Cloud Functions

      Case study
    3. Photoshoot

      Jun 2026 — Present

      • Built and deployed a browser and desktop photobooth with single-shot, four-shot strip, and video modes, plus 17 real-time GLSL effects and 8 on-device MediaPipe face effects.
      • Engineered a local-first Electron/WebGL2 architecture with context isolation, sandboxing, strict CSP, and Firebase Hosting, keeping camera processing and captures on-device.

      TypeScript Electron WebGL2 GLSL MediaPipe Firebase Hosting

      Case study
  2. Jan 2026 — Present

    Digital Marketing Executive

    Sunway Cybersecurity Club Subang Jaya, Malaysia

    • Planned 10+ LinkedIn posts and campaign assets, coordinating the club's content calendar for recruitment, events, awards, and industry activities.
    • Produced recruitment, industry-visit, award-announcement, and event-recap graphics in Canva while collaborating with the committee and external partners.

    Canva LinkedIn

05/CONTACT · OPEN CHANNEL

AVAILABLE FOR FULL-TIME INTERNSHIP · JAN—APR 2027

SUBANG JAYA / KUALA LUMPUR · MALAYSIA

NOW/CURRENT FOCUS

LAST UPDATED 2026-07-29

Building

  • Bupples

    Maintaining the shipped product. It reached the App Store and Google Play on 2 July 2026 and was on version 1.2.5 by 27 July.

  • CodeAtlas

    Evidence for what a code change actually does — a change-intelligence system for TypeScript and JavaScript that maps a change through the codebase, picks the tests that can explain its impact, compares behaviour across base and head, and packages the result as a signed Change Passport. In design and documentation, not a service: there is no hosted app, no GitHub App, and the runner is local-only.

  • Adelante

    Widget-first motivation app for iOS and Android: native WidgetKit and RemoteViews surfaces over a scheduled Firebase content pipeline, with no accounts, analytics or ads.

  • Photoshoot

    Shipped in June 2026 and live in the browser: a local-first Electron and WebGL2 photobooth with 17 real-time GLSL effects and 8 on-device MediaPipe face effects. Not under active development.

Studying

  • BSc Software Engineering (Hons) — Sunway University / Lancaster University

    Software Architecture, Data Structures, Mobile Development, Databases, and UI/UX Design. Expected August 2027.

Looking for

  • A full-time software engineering internship, January to April 2027

    Subang Jaya or Kuala Lumpur, Malaysia. Mobile, full-stack, or anything that ships to a real store.

Exploring

  • Inference that runs on the device

    MediaPipe face effects executing locally in Photoshoot, so a camera frame never has to be uploaded to become useful.

  • Model output as structured data, not prose

    Gemini receipt extraction in Bupples: the model reads a photographed receipt into line items, and the ledger still does the money.

  • Widgets as the product surface

    Home Screen, Lock Screen and StandBy as places a product lives rather than shortcuts into it — which means two native implementations instead of one shared screen.

Let's build something memorable.

CLICK TO EMAIL · OR COPY ITTAP TO EMAIL · OR COPY ITyousofselim2@gmail.com

DESIGNED AND BUILT BY HAND · 2026

ysf.slm

01 / Bupples