KK.DEV
Skip to content
Karim Khabouri · Backend Engineer & Team Lead

BACKENDENGINEER

I build and maintain banking and investment systems with TypeScript, Node.js, and NestJS. My work spans APIs, authentication, integrations, and the production issues that connect them.

Casablanca, Morocco · Open to full-time backend roles

5+
Years shipping production software
NestJS
APIs, integrations & backend services
Fintech
Banking & wealth platforms
On-site
Enterprise bank mission, KSA
NestJSNode.jsTypeScriptPostgreSQLBanking APIsRabbitMQProduction Systems
Explore my work↓
02 / Career

EXPERIENCE

FinaMaze Technologies

Since 2021 · 5+ years
Backend Engineer & Team Lead · Casablanca, Morocco

Building white-label banking, investment, and wealth-management platforms for financial institutions, including digital-banking projects for one of the largest banks in the region. I own backend services and APIs end-to-end, from architecture and integrations through SIT/UAT validation to production support.

▹Build and maintain TypeScript, Node.js and NestJS APIs for banking and investment products
▹Unified OTP handling across authentication and registration behind a shared provider interface
▹Implemented structured API errors with English and Arabic messages and consistent validation responses
▹Develop and maintain onboarding, KYC, investment, transaction and reporting workflows
▹Rebuilt the consumer investment web app in React before taking on backend ownership
▹Lead the backend team, review code, plan technical work and coordinate releases with QA and DevOps
◆ On-site Mission
Enterprise Banking

On-site Banking Mission: Jeddah, Saudi Arabia

Travelled on-site to Jeddah to validate the platform's integrations with the bank's SOAP banking services inside its closed environment. Our solution consumed the bank's core services, and every integration had to be tested and verified on-site under strict network and security constraints. I worked alongside DevOps teams on environment needs and monitoring, and helped move the delivery through SIT/UAT toward production readiness.

SOAP banking servicesIntegration testingClosed banking environmentSIT / UAT validationDevOps collaborationClient-facing delivery

Freelance Software Developer

2018 to 2020 · 2 years
Full Stack Developer · Morocco / Remote
▹Built native Android apps in Java with Node.js & MySQL backends
▹Developed a real-time chat application with Socket.IO live messaging
▹Integrated Firebase Authentication and Cloud Messaging push notifications
▹Delivered projects end-to-end: requirements, build, testing and release
03 / Selected Work

PROJECTS & CASE STUDIES

My contributions to production banking systems, alongside personal projects and earlier work.

10 projects · All

FinaMaze B2C · Digital Investment Platform
Featured
Backend / Full-StackLive · Production

FinaMaze B2C · Digital Investment Platform

Consumer investment platform at FinaMaze. I rebuilt the React web app, then moved into NestJS backend development, production support, and team leadership.

ImpactFrom a solo React rebuild to backend ownership
ROLE · Backend Engineer & Team Lead; previously frontend
ReactAnt DesignReduxReact QueryNode.jsNestJSAPI GatewayMicroservicesGCP
Case Study ↗
Engineering case study

Fintech / Backend

TypeScript · NestJS · OTP · REST APIs

Fintech / BackendProduction

Digital Banking Client APIs

Client-facing banking APIs for onboarding, authentication, accounts, and investments. My contributions include shared OTP handling and consistent multilingual error responses.

ImpactUnified OTP handling and standardized API errors
ROLE · Backend Engineer & Team Lead
TypeScriptNestJSOTPREST APIsValidationWebhooks
Case Study ↗
Jeddah Banking Environment Mission
Featured
Fintech / Banking MissionDelivered

Jeddah Banking Environment Mission

On-site integration mission in Jeddah: validating that our digital-banking platform's integrations with the bank's SOAP core-banking services worked correctly inside its closed environment, and helping move the delivery through SIT/UAT toward production readiness.

ImpactDigital-banking product validated inside one of the region's largest banks
ROLE · Backend Engineer / Integrations
NestJSSOAP Banking ServicesIntegration TestingSIT / UAT
Case Study ↗
Engineering case study

Backend Systems

TypeScript · NestJS · RabbitMQ · SMTP

Backend SystemsProduction

Notification Service

Contributed to a NestJS notification service, including RabbitMQ connectivity, email delivery error handling, and container setup.

ImpactRabbitMQ integration and email error handling
ROLE · Backend Engineer
TypeScriptNestJSRabbitMQSMTPDocker
Case Study ↗
Maroc Memes · TikTok-style Short-Video App
Featured
Mobile + Video InfrastructureIn development · Personal project

Maroc Memes · TikTok-style Short-Video App

A personal short-video app in development. I am building the React Native capture and editing flow, ranked feed, and NestJS video upload backend.

ImpactDirect video uploads and mobile memory management
ROLE · Solo developer: mobile app & backend
React NativeExpo SDK 56TypeScriptvision-cameraSkiaReanimatedFlashListNestJSMinIOffmpegSentry
Case Study ↗
Engineering case study

Mobile / Product

React Native · Expo · TypeScript · i18n

Mobile / ProductProduction

White-label Football Club Mobile App

A multi-tenant React Native platform where each football club becomes its own branded fan app (theme, languages, news, videos, players and fixtures) through configuration alone, not code changes.

ImpactNew clubs onboarded in days instead of weeks, from one codebase
ROLE · Mobile & Product Engineer
React NativeExpoTypeScripti18nWhite-label architecture
Case Study ↗
Engineering case study

AI / Automation

Claude Code · AI tools · Automation workflows · Developer tools

AI / AutomationIn use

AI Developer Workflow Assistant

AI-assisted engineering workflows integrated into day-to-day development: code-review assistance, documentation generation, product planning support, and automation of repetitive scaffolding.

ImpactFaster reviews and documentation, with humans always deciding
ROLE · AI Tools Builder
Claude CodeAI toolsAutomation workflowsDeveloper tools
Case Study ↗
Engineering case study

Freelance / Mobile

Java · Node.js · MySQL · Socket.IO

Freelance / MobileDelivered

Real-time Chat App (Android)

Native Android real-time chat application: Java on the client, Node.js and MySQL on the backend, live messaging over Socket.IO, Firebase Authentication and Cloud Messaging push.

ImpactDelivered end-to-end: app, backend, auth, push and release
ROLE · Full Stack Developer
JavaNode.jsMySQLSocket.IOFirebase AuthFCM
Case Study ↗
Engineering case study

1337 / Full Stack

Full stack · Authentication · Geolocation · Real-time features

1337 / Full StackCompleted

Matcha · Matching Web App

A dating web app built end to end at 1337: secure user management, a matching algorithm driven by tags, fame rating and proximity, geolocation-based suggestions, and real-time notifications and chat.

ImpactA complete social platform built from scratch, no frameworks hiding the work
ROLE · Full Stack Developer (1337)
Full stackAuthenticationGeolocationReal-time features
Case Study ↗
Engineering case study

1337 / Streaming

Streaming · Authentication · Backend processing · Web architecture

1337 / StreamingCompleted

Hypertube · Streaming Platform

A movie streaming web platform built at 1337: OAuth-based authentication, on-the-fly video streaming while downloading, and background workers for acquisition and transcoding.

ImpactStream-while-downloading video platform delivered as a 1337 milestone
ROLE · Full Stack Developer (1337)
StreamingAuthenticationBackend processingWeb architecture
Case Study ↗
04 / Technical Skills

WHAT I WORK WITH

Backend engineering is my core focus, supported by experience across web, mobile, and production operations.

// Tech Stack

Backend
TypeScriptNode.jsNestJSREST APIsBFFAuthRabbitMQWorkers
Mobile
React NativeExpoAndroidiOSWhite-labelReleases
Frontend
ReactNext.jsAdmin portalsDashboards
Databases
PostgreSQLMongoDBOracleMySQLRedis
DevOps / Tools
DockerKubernetesGCPGitHub ActionsCI/CDSwaggerPostmanSentrySigNoz
AI
Claude CodeAI-assisted devAutomation
05 / Education

1337 CODING SCHOOL

Part of the 42 Network in Morocco. Project-based training in C, algorithms, systems programming, and web development, with peer evaluation and code review.

Libft ↗

A C library regrouping the usual standard functions, reimplemented from scratch to be reused across all later projects.

CMemoryClean codeLow-level

Get Next Line ↗

A function that returns a line ending with a newline, read from a file descriptor, one call at a time.

CFile descriptorsBuffers

Fillit ↗

Arrange a set of Tetris pieces into the smallest possible square using backtracking.

AlgorithmsRecursionOptimization

FdF ↗

A simplified 3D wireframe representation of a relief landscape, rendered from a height map.

CGraphicsMathRendering

Piscine Reloaded ↗

A series of C exercises revisiting the fundamentals: functions, loops, pointers and structures.

CPointersFundamentals

Roger-Skyline ↗

An initiation to system and network administration: server setup, security hardening and services.

LinuxNetworkingSSHSecurity

Camagru ↗

A web application to capture photos from your webcam and blend them with overlays, a small Instagram-like gallery.

PHPWebSQLAuth

Matcha ↗

A dating web app with user management, matching logic, geolocation and real-time features.

Full stackAuthGeolocation

Hypertube ↗

A video streaming platform that searches and streams videos over the BitTorrent protocol, with an integrated player.

StreamingAuthBackend
Open to full-time backend engineering roles.
Karim Khabouri
Karim Khabouri
Backend Engineer & Team Lead at FinaMaze · Casablanca, Morocco
3,432contributions in the last year
LessMore

HIRING FOR BACKEND?
LET’S TALK.

↳ Usually replies within 24 hours · Casablanca · Open to discussing remote opportunities
© 2026 Karim Khabouri · Casablanca, Moroccov0.1.10 · d776c89
Security headersBackend · TypeScript · Fintech