Projects

Deep case studies first, then standard writeups, then lighter early-career and supporting mentions. No commit counts or contributor stats — just the work and my role in it.

Case studies

Full writeups with dedicated pages — problem, role, architecture, and technical highlights.

Creditit Backend Contributions

Creditit

Credit scoring, payment forecasting, and bank-statement extraction, contributed to a larger invoice-financing platform.

PythonFlaskSQLAlchemyPostgreSQLscikit-learnOCRAWS

Scoring Service

Quadrant Technologies

A credit-scoring and loan-decisioning engine built on scorecards and a rules layer.

PythonDjangoDRFPostgreSQLCeleryRedisPMMLDocker

QDL Dashboard

Quadrant Technologies

A multi-tenant banking operations platform, built from scratch and still actively maintained.

Next.jsTypeScriptRedux ToolkitNextAuthTailwind CSSApexCharts

Secure View

Personal project

Encrypted, view-only file sharing, with a FastAPI backend and a native Android client.

FastAPISupabaseCloudflare R2KotlinAndroidPostgreSQL

Standard projects

Shorter writeups — what it is, my role, stack, and a couple of notable details.

Pathsin Platform

Yaltopia

A full-stack recruitment platform. The backend is a FastAPI service covering users and roles, CVs, job listings, recruitment workflows, Stripe checkout and webhooks, transfers, notifications, and PDF generation. The frontend is a React and TypeScript SPA with full English/Arabic support.

Role — Primary backend author, and a major contributor on the frontend.

  • A repository pattern with async handlers, generic search and pagination, and solid pytest coverage across the API.
  • Passport OCR using OpenCV and Tesseract, plus a migration from email-based to UUID-based identity across the system.
FastAPISQLAlchemyPostgreSQLStripeReactTypeScriptTanStack Queryi18next

Support Telegram Bot

Quadrant Technologies

A production Telegram bot for bank support: FAQs, problem reporting with attachments, ticket tracking, and separate flows for customers and merchants. Runs in English, Amharic, and Oromifa, with per-client overrides.

Role — Fully my work, from the multi-tenant config system to the conversation flows and integrations.

  • Per-bank JSON configs for FAQs, translations, contacts, and database names, so onboarding a new client doesn't require a code change.
  • Separate conversation flows for customers and merchants, with session handling and a ticket-tracking integration.
PythonTelethonPostgreSQLJSON config

Reporting Dashboard

Quadrant Technologies

A reporting dashboard for loan operations: all-loans follow-up, near-maturity and daily-due views, defaults by branch and district, head-office rollups, role-scoped access, filtering, search, and export.

Role — Built solo, from scratch.

  • One reusable report component and a set of hooks, instead of duplicating near-identical report pages over and over.
  • Role-based scoping from branch to district to head office, with consistent search and export across all of it.
ReactTypeScriptViteTanStack QueryTailwind CSS

Mkopo Easy Admin Dashboard

Quadrant Technologies

The central admin console for Mkopo Easy: onboarding merchants and creditors, managing customers, configuring loans and commissions, locking devices, and multi-entity reporting.

Role — Built the product during an intensive six-week sprint, currently being maintained by a teammate.

  • A generic data-table pattern with debounced search, filters, and server-side pagination, reused across most entity views.
  • Permission-gated routing and sidebar filtering based on JWT claims, for straightforward admin RBAC.
ReactTypeScriptViteTanStack RouterTanStack QueryZustandShadcn UI

Enterprise Lending Dashboard

Quadrant Technologies

A lending portal in the same ecosystem, aimed at enterprise clients: per-bank theming, corporate and agency profiles, loan requests, repayment flows, a product picker with live estimation, and document uploads.

Role — Sole author. Still actively growing this one.

  • An auth layer with JWT refresh, plus a dev mock mode so the UI could move forward before the backend was ready.
  • Shared lending components reused across both the corporate and agency journeys.
Next.jsTypeScriptNextAuthTanStack QueryZustandTailwind CSS

CMS

A material and construction management system: a GraphQL API over Prisma and PostgreSQL, paired with a Flutter app for field use. Built with a small team, where I owned most of the system.

Role — Primary author on a small team.

  • A GraphQL schema modeling materials, roles, and day-to-day operational workflows end to end.
  • A Flutter mobile app alongside the API for field-facing use.
NestJSGraphQLPrismaPostgreSQLFlutter

Quantum Technology PLC Website

Quadrant Technologies

The public site for Quantum Technology PLC: home, about, services, careers, privacy and terms, and a contact form.

Role — Built solo.

  • SEO-first App Router setup, with per-page metadata, Open Graph tags, and canonical URLs.
  • GSAP ScrollTrigger animation on the services hero and a few other sections.
Next.jsTypeScriptGSAPCSS Modules

Brief mentions

Early-career and supporting work — kept light on purpose.

  • Bilos Pastries

    Bilos Pastries

    A WordPress and Elementor marketing site, designed and delivered for a bakery client.

  • Alphabet Trading Web Suite

    Alphabet Trading

    Frontend work across a few marketing sites for an Ethiopian coffee and media company, in Next.js and Tailwind with GSAP and Framer Motion, including full bilingual support on one of them. Some of my first professional projects. I wasn't the sole owner of these, just a contributor.

  • Mini Store Hub

    Alphabet Trading

    Contributed to (didn't build solo) a retail operations platform built on NestJS GraphQL, React Native, and Next.js, touching inventory, sales, and notification work across mobile and dashboard.