Deaa Naser

Full-Stack Software Engineer, AI Applications

React · Next.js · TypeScript · Python · Django · FastAPI · React Native · LLM/RAG · Docker

Open to remote work and relocation (Gulf/MENA)

Homs, Syria

Portrait of Deaa Naser
// Experience
Oct 2025 — Present · Syria

Software Engineer and Founder, Siraj

AI education platform for grades 6-12. Sole engineer.

  • 01

    Built the Django REST backend, the React/Next teacher web platform (siraj.sy) and the React Native student app.

  • 02

    Designed and built the RAG, intent routing, AI grading and OCR pipeline (Qdrant, LLM providers, Celery, Redis).

  • 03

    Deploy and operate production on a self-managed VPS (Docker, Dokploy, Cloudflare, automated backups).

  • 04

    Live on Google Play and siraj.sy, 500+ students.

Oct 2021 — Present

Competitive Programming and Problem Solving

  • 01

    Solve algorithmic problems on Codeforces and LeetCode since October 2021.

  • 02

    About 1,500 problems solved on Codeforces across data structures and algorithms.

  • 03

    Practice SQL problem solving alongside algorithm work.

  • 04

    Learned multiple programming languages through regular competitive practice.

// Education

Information Technology, Software Engineering and AI Applications, Homs University, Oct 2025.

// Skills
Frontend
ReactNext.jsJavaScriptTypeScriptTailwind CSSTanStack QueryState ManagementZustandReduxContext APIShadcn UIExternal ImportSEO optimization
Backend
PythonDjangoDRFFastAPIREST API designCeleryIntegrationsScriptsRedisCacheMySQLPostgresORMDatabase DesignDatabase Optimization
AI
RAGLLM applicationsvector databases (Qdrant)embeddingsAI agentsprompt engineeringvision modelsinvocation toolsworkflows
Data
SQL queriesdata analysisExcelGoogle SheetsTableaudata visualization
Mobile
React NativeExpooffline-first appsLocal DatabaseNative packagesMarkdown & LaTeX rendering
Infrastructure
DockerLinux VPSCloudflaredeployment automationDNS
Practices
clean codedesign patternssystem designproject managementcritical thinkingproblem solving
// Projects
A mobile learning platform for Syrian students in grades 6-12, covering the national curriculum. Students study, practice and ask questions in one app; content is managed through a web dashboard on the same backend.
Built for

Students preparing for school and baccalaureate exams in Syria, often with unreliable internet. Study material, exam-style practice and an AI tutor in one app.

Learned

Design for the real constraints (connectivity, latency, cost) from day one, not as a retrofit.

Includes

Study notes in a PDF viewer · Question bank with solutions and answer checking (photo or typed) · Courses · Curriculum-aware AI Teacher · XP, levels, streaks and ranking · Study reports

Uses

Django REST backend with Celery workers for AI jobs · hybrid RAG (dense + sparse retrieval) over curriculum content · rubric-based AI grading · offline-first React Native app · self-managed VPS with Docker.

Siraj student app home screen
System architectureSiraj system architecture: student app and teacher web both call the Django REST API, which connects to an AI layer (Qdrant plus LLMs) and a data layer (MySQL plus object storage), coordinated by Celery and Redis.STUDENT APPReact Native · Expo · offline-firstTEACHER WEBsiraj.sy · React · TypeScriptDJANGO REST APICelery workers · Redis brokerAI LAYERQdrant + LLMs (RAG, grading,OCR, agentic tool-calling)DATA & STORAGEMySQL · Redis cache ·Backblaze S3 object storage
GitHub contribution graph for the Siraj repository

1,140 contributions to Siraj in 7 months

AI engineering
  • RAG — answers grounded in the real curriculum via vector search tuned for Arabic educational text.
  • Curriculum-aware retrieval — grade levels and subjects searched as distinct spaces.
  • Query routing — incoming questions classified by intent and routed to the right retrieval and prompting strategy.
  • Agentic assistant — a mode that chains multiple steps and tool calls instead of answering in a single pass.
  • LLM orchestration — providers chosen by empirical comparison on cost, quality and latency, swappable as the market moves.
  • Structured AI grading — subject-aware logic; exact-answer and rubric-based subjects evaluated differently.
  • Vision pipeline — reads handwritten student answers and ingests printed textbooks into the knowledge base.
Mobile engineering
  • Offline-first content — local persistence with offline/online sync; lessons and progress work without a connection.
  • Custom markdown & math renderer — purpose-built for mixed Arabic RTL text and LaTeX, which general libraries don't handle.
  • Typewriter streaming — token-by-token AI responses tuned for lower-end Android devices.
  • Device security — screenshot/recording protection and compromised-device detection gate paid content.
  • Download management — offline lesson assets cached; progress tracking kept out of the render path.
  • State & data — Zustand for client state, TanStack Query for server state and caching.
  • Styling & UI — NativeWind for Tailwind-style styling, Gluestack UI as the component system.
  • Native integrations — push notifications, file system access and security checks via Expo config plugins.
Backend and infrastructure
  • Django REST Framework — a single API surface shared by the mobile app and the teacher platform.
  • Async job processing — grading, OCR and report generation run in background, never blocking a request.
  • Relational database — primary store, schema and queries tuned for reporting and analytics.
  • Docker + Dokploy — containerized deployment on a self-managed VPS, no managed PaaS in the loop.
  • Cloudflare — CDN and DNS in front of the VPS.
  • Object storage — media assets and automated backups.
// Project
A Next.js + FastAPI tool for Arabic teachers to compose exam papers with rich text, LaTeX math and images, then export them as print-ready A4 PDFs.
Built for

Arabic teachers who need exam papers with RTL typography, inline LaTeX math and per-question images, exported as PDFs.

Learned

Rendering pipelines fail silently — the math layer must be verified before output is emitted, not assumed.

Includes

Single-page form with Zod validation · rich-text question editor with MathLive · per-question AR/EN toggle · per-question image upload · live generation stats · rate-limited backend

Uses

Next.js App Router frontend · FastAPI backend · MathJax 3 inside headless Chromium (Playwright) · SQLite stats · in-memory per-IP rate limiting.

Stack
Next.jsReactTypeScriptTailwind CSSshadcn/uiReact Hook FormZodMathLiveMathJax 3FastAPIPlaywrightSQLite
Technical detail
  • Single-page App Router shell — server component layout, client components for interactivity.
  • Rich question editor — contentEditable field supporting HTML, LaTeX and inline math; the MathLive dialog appends math into whichever field is focused and re-typesets via MathJax.
  • Multipart submit — posts exam metadata, indexed questions and per-question images to the FastAPI backend, receives the PDF as a Blob and downloads it.
  • Backend rendering — FastAPI fills an RTL HTML template, normalizes LaTeX to inline form, typesets it with MathJax inside headless Chromium (Playwright), and refuses to emit a PDF if MathJax fails.
  • Print-correct output — A4 geometry, three-column exam header, and انتهى pinned to the bottom of the last page.
  • Production guards — per-IP sliding-window rate limiting, SQLite generation stats, CORS locked to the production origin.
  • MathJax is loaded from a CDN; the README documents vendoring it locally for offline deployment.
// Project

Telegram Job Feed

A Python automation pipeline that turns noisy Telegram job channels into a clean, deduplicated daily feed of relevant tech vacancies, using an LLM to filter posts, extract structured details, and publish consistently formatted Arabic messages.
Built for

Job seekers following multiple Telegram channels who need one focused feed of relevant tech jobs without manually sorting through advertisements, courses, scams, and unrelated vacancies.

Learned

LLMs can classify and structure unorganized job posts, but factual details need deterministic safeguards. Duplicate detection should also happen before expensive processing whenever possible.

Includes

Read-only channel collection · batch LLM classification · per-post detail extraction · Arabic job summaries with English technical terms preserved · hidden application-link extraction · two-stage duplicate detection · SQLite-backed processing history · scheduled execution

Uses

Telethon to read selected channels · OpenAI-compatible LLM APIs for classification and extraction · regular expressions to capture contact details · SQLite for persistence and deduplication · Telegram Bot API for publishing · Docker and Dokploy for scheduled VPS execution.

Stack
PythonTelethonOpenAI SDKLLM IntegrationSQLiteTelegram Bot APIRegular ExpressionsDockerDokployLinux VPSpython-dotenv
// Problem solving

Codeforces Specialist (~1506) — Deaa

Algorithmic problem solving. Core topics:

Constructive algorithms

Building a valid answer directly from the problem's constraints.

Implementation

Turning detailed statements into correct code that handles edge cases.

Data structures

Segment tree for range queries and updates.

Dynamic programming

Defining states and transitions for optimization and counting problems.

Binary search

Searching sorted data, and searching over the answer itself.

Math and number theory

Applying number theory and mathematical reasoning to problem constraints.

// Certificates
Certificate: Bachelor's degree, Homs University

Bachelor's degree, Homs University

Homs University · 2025

University graduation certificate in Information Technology Engineering, Software Engineering.

Certificate: Google Data Analytics Professional Certificate

Google Data Analytics Professional Certificate

Google via Coursera · 2023

Data cleaning, analysis and visualization with SQL, spreadsheets and R.

Certificate: SQL for Data Science

SQL for Data Science

University of California, Davis via Coursera · Mar 2023

Online non-credit course authorized by UC Davis. Querying and analyzing data with SQL.

Certificate: Syrian College Programming Contest 2024

Syrian College Programming Contest 2024

Participant · 2024

Team programming contest, used as training for Codeforces and ICPC-style competition.

Certificate: Syrian College Programming Contest 2023

Syrian College Programming Contest 2023

Participant · 2023

Team programming contest, used as training for Codeforces and ICPC-style competition.

Certificate: Syrian College Programming Contest 2022

Syrian College Programming Contest 2022

Participant · 2022

Team programming contest, used as training for Codeforces and ICPC-style competition.

// Contact

Contact

Available for full-time and remote roles.