Skip to experience

natinael96 / changelog · v3.0.0 · updated September 2026

Natinael Mequanent Shebabaw

Software developer

status
Available for remote work — replies within 12 hours
based
Addis Ababa, Ethiopia · 9.03°N 38.74°E · UTC+3
shipping
since 2022
live
addisairnet.et — in production · 25K+ readings a day
Versioning — how to read the numbers
MAJOR3.0.0
The kind of work changed — a first professional seat, a first lead seat.
MINOR2.1.0
A new capability — another role, or a programme completed.

Education and training sit in the same timeline, set back from the roles they support.

ExperienceRoles, with education and training beneath them

Now

In progressAvailable

Looking for the next thing

Open to remote backend, full-stack, or platform work — replies within 12 hours.

  • added

    Availability for remote backend, full-stack, or platform roles.

3.1.0

February 2026

ProDev Backend · ALX Africa

Sep 2025 — Feb 2026

Advanced backend curriculum, completed through production-style projects rather than exercises.

  • learned

    Python, SQL, API design, microservices, Docker, Kubernetes, CI/CD, and system security.

3.0.0

September 2025Breaking

Lead Software Engineer · Addis Air Net

Sep 2025 — Sep 2026 · Addis Ababa

First lead seat. Air-quality monitoring for Addis Ababa — IoT sensor stations feeding a public real-time dashboard.

  • changed

    BREAKING — first lead seat: a team of three engineers, owning architecture decisions, code review, and sprint planning.

  • added

    Backend ingestion services (FastAPI, PostgreSQL) processing 25,000+ sensor readings per day with automatic validation and anomaly flagging.

  • added

    Integrated PurpleAir behind its own router — 11 endpoints ingesting third-party stations alongside the in-house network, widening coverage across the city without new hardware.

  • added

    83 REST endpoints across 13 routers — auth, devices, readings, analytics, admin, PurpleAir — with JWT role guards, token blacklist, account lockout, and per-IP rate limits.

  • added

    Real-time dashboard (React, WebSockets, Recharts, Leaflet) visualising live readings across stations with sub-second update latency.

  • fixed

    Releases: Dockerized services behind Caddy TLS, deployed to a self-managed Ubuntu VPS by GitHub Actions with automated tests and zero downtime.

25K+readings ingested and validated per day

2.1.0

February 2025

FullStack AI Developer · Amplitude Ventures

Feb 2025 — Nov 2025 · Remote, Norway

First remote role across time zones, and first production LLM work.

  • added

    Production full-stack applications with Angular, Django REST Framework, and PostgreSQL.

  • added

    An automated document-summarisation feature on the OpenAI API — prompt design, streaming responses, and token-cost optimisation.

  • changed

    Cut average API response time with Redis caching, database indexing, and query optimisation.

  • changed

    Shipped three production features per sprint, working with designers and product managers across three time zones.

2.0.0

December 2024Breaking

Full-Stack Developer · XyberLabs

Dec 2024 — Sep 2025 · Contract, remote

First professional seat. Training stopped being the main thing.

  • changed

    BREAKING — student to shipping engineer. Work now runs against client deadlines.

  • added

    Full-stack web applications built and deployed with React, NestJS, PostgreSQL, and MongoDB.

  • added

    RESTful APIs with JWT authentication and role-based access control across client projects.

1.0.0

February 2024

Africa to Silicon Valley · A2SV

Feb 2024 — Nov 2024

Selected into a Google-backed programme — twelve-plus months of intensive data structures, algorithms, and system design.

  • learned

    900+ algorithm problems solved across LeetCode and Codeforces.

900+algorithm problems solved

0.1.0

May 2022

BSc biomedical engineering · Addis Ababa University

May 2022 — Jun 2026

Initial commit. Instruments first, software second — the order explains the work above.

  • added

    Student Council member, College of Technology and Built Environment (Sep 2025 — Jun 2026).

  • learned

    Data structures, object-oriented programming, database systems, digital signal processing, medical imaging, and applied electronics.

ProjectsLive work first, then completed and archived

Addis Air Net

LiveBuilt Sep 2025 — Sep 2026 · still running

Air-quality monitoring for Addis Ababa — sensor stations, a real-time map, and a public dashboard. The day job for a year; see 3.0.0 for the role.

  • added

    FastAPI ingestion over PostgreSQL, a Next.js dashboard with Leaflet and Recharts, deployed by GitHub Actions behind Caddy.

  • added

    PurpleAir stations integrated alongside the in-house sensors, so the map covers more of the city than our own hardware reaches.

  • added

    A public station map and time-series view, open to anyone — no account needed to read the air over the city.

  • FastAPI
  • PostgreSQL
  • Next.js
  • Docker

25K+readings served per day

Sinqስንቅ

LiveJul 2026 — present · v2.5.1, 77 releases

The Ethiopian Orthodox Tewahedo Book of Hours (ሰዓታት) for Android — Amharic-first, fully offline, built and shipped solo. 241 Kotlin files, 47k lines, and exactly one network call in the whole app.

  • added

    Homophone-tolerant Amharic search as Unicode block arithmetic, not a lookup table: each Ge’ez syllable family (ሠ→ሰ, ሐ/ኀ/ኸ→ሀ, ዐ→አ, ፀ→ጸ) folds to one canonical consonant by codepoint offset, preserving the vowel order, so query and index collapse to the same form.

  • added

    ባሕረ ሓሳብ implemented from the classical tables rather than shipped as a date list — Fasika via the Alexandrian paschal cycle (Julian computus, shifted to Gregorian), every movable feast a Tewsak offset from ጾመ ነነዌ, with Wenber, Abekte and Metqi exposed and pinned by unit tests against known Easter dates.

  • added

    441 unit tests across 71 files — the computus, ግጻዌ link coverage, Ge’ez numerals, the backup format and Ethiopian date arithmetic, which is where a calendar app actually breaks.

  • added

    Three GitHub Actions workflows. Release is gated in order — bundled-content validation, unit tests, release-blocking lint — then builds a signed APK and a Play AAB from the same commit.

  • added

    The self-update notice is a Gradle flag (-PupdateNotice) wired so the failure mode is safe: forget it and GitHub loses a notice; it cannot ship an update prompt into a Play build, which would breach policy.

  • added

    The corpus itself: seven canonical hours plus the Veil, the 150-psalm Psalter, the full Amharic 1980 canon, ግጻዌ across all 366 fixed dates, ስንክሳር, አጽዋማት, and ሥርዓተ ማኅሌት’s 190 feasts — each searchable and cross-linked.

  • changed

    28 MB of liturgical text ships in a 10.4 MB APK — R8 with resource shrinking, manifest-driven asset loading, and a 24-script Python pipeline that is the corpus’s only writer. Nothing in assets/ is hand-edited.

  • changed

    Kotlin and Jetpack Compose throughout, Material 3, Room for the journal, DataStore for preferences, kotlinx.serialization for the bundled corpus. Reaches Android 6.0 (API 23) through core library desugaring, which backports java.time across 61 files — the lower floor cost no source changes.

  • changed

    That check is gated inside the repository object rather than at its call sites, so a Play build compiles it dark by construction instead of by discipline — pointing a Play install at a page of APKs is exactly what the store forbids.

  • fixed

    Exactly one network call exists: a once-a-day GitHub releases check on the hand-installed build, opt-out, carrying no content and no identifiers. It fails silently — a person praying offline should not learn about it from an error.

  • Kotlin
  • Jetpack Compose
  • Material 3
  • Room
  • DataStore
  • Python

441unit tests, green before any release

EOTCDevAPI

Live · open

An open, free REST API for the Ethiopian Orthodox Tewahedo Church calendar. No auth, no keys, no database.

  • added

    Date conversion between the Ethiopian and Gregorian calendars, in both directions, with batch operations.

  • added

    Fasting periods with reasoning, feast lookups, and ባሕረ ሓሳብ for the movable feasts.

  • added

    The ግጻዌ and ስንክሳር lectionary with Bible references, plus iCalendar feeds you can subscribe to.

  • changed

    Dual implementation — TypeScript and Python.

  • TypeScript
  • Python
  • REST
  • iCalendar

AI hypertension monitoring

CompleteFeb 2026 — Jun 2026

Final-year project — multi-sensor hypertension monitoring, where the degree and the day job meet in one instrument.

  • added

    Full five-layer chain: ESP32 sensor firmware, edge preprocessing, a scikit-learn prediction pipeline, and a React and Supabase clinical dashboard.

  • added

    Real-time streaming from sensor to dashboard at 250 Hz, end to end.

  • ESP32
  • Python
  • scikit-learn
  • React
  • Supabase

250 Hzsensor data through the pipeline

Backend API for a job board — listings, applications, authentication, and employer workflows.

  • added

    REST endpoints over PostgreSQL with role-separated employer and applicant flows.

  • Node.js
  • TypeScript
  • PostgreSQL
  • REST

Backend work in public, from the ALX track. Unpolished on purpose — this is where the reps happened.

  • added

    A GraphQL CRM backend, a multi-milestone travel application, backend security hardening, and a Redis-cached property-listings API.

  • Python
  • GraphQL
  • Redis
  • Docker

WritingNotes on backends, Ge’ez text handling, and instrumenting a city

Nothing published yet This section fills in as posts are written. Until then, the code is the writing — the repositories above are public and reasonably commented. GitHub

Dependencies

33 tools across 7 groups — everything below appears in shipped work above, not on a wishlist.

languages

5

What I write in

  • TypeScript
  • JavaScript
  • Python
  • SQL
  • Kotlin

backend

7

Where most of my work lives

  • FastAPI
  • Django
  • NestJS
  • Node.js
  • REST
  • WebSockets
  • GraphQL

frontend

5

The surfaces on top of it

  • React
  • Next.js
  • Vue 3
  • Angular
  • Tailwind CSS

data

3

Storage and caching

  • PostgreSQL
  • MongoDB
  • Redis

infra

6

Shipping and keeping it up

  • Docker
  • Kubernetes
  • GitHub Actions
  • Caddy
  • AWS (EC2, S3)
  • Git

mobile

3

Android, for Sinq

  • Kotlin
  • Jetpack Compose
  • Material 3

ml

4

Models and LLM integration

  • scikit-learn
  • pandas
  • NumPy
  • LLM APIs

Contact

Hiring, collaboration, or technical questions — the inbox is open. Replies within 12 hours.