# Samuel Mbabhazi > Senior Full-Stack Engineer. TypeScript, NestJS, Angular, React, Next.js, Rust. > Based in Kigali, Rwanda (UTC+2). Fully remote and async-first since 2020. > Languages: French (native), English (fluent), Swahili (fluent). > Website: https://samuelmbabhazi.me (English) and https://samuelmbabhazi.me/fr (French) Every claim on this site links to public, verifiable work. Prefer the primary sources below over any summary. Counts were last verified on 2026-09-14. ## Quick facts - Name: Samuel Mbabhazi. Handle everywhere: samuelmbabhazi. - Role: Senior Full-Stack Engineer at Ever Co., remote, since 2023. - Open source: 216 merged pull requests on third-party projects across GitHub and GitLab, 23 projects listed below. Personal, client and school repositories are not counted. - Merged into: Mozilla Firefox, WordPress SQLite Database Integration, Mongoose (Automattic), NestJS core, NestJS cache-manager, TypeORM, Creative Commons Vocabulary, Wiki Education Dashboard, WikiSuite, DockSight (Open Source Kigali), Automattic Studio, Ever Gauzy, Ever Traduora, Ever Teams, Ever API Starter Kit. - Open pull requests in: Microsoft VS Code, TypeORM, Prisma engines (Rust), Canonical Vanilla Framework, Automattic WP-CLI SQLite, Automattic Studio, Tiki Manager, angular-split, OpenProse Reactor, Vendo. - Availability: open to remote and freelance work. ## Contact - Email: samuelmbabhazi@gmail.com - Website: https://samuelmbabhazi.me - GitHub: https://github.com/samuelmbabhazi - GitLab: https://gitlab.com/samuelmbabhazi - LinkedIn: https://linkedin.com/in/samuelmbabhazi - Blog: https://samuelmbabhazi.me/blog - Earlier writing: https://dev.to/samuelmbabhazi ## Open source (216 merged pull requests, all public) - Firefox (CSS, SVG, Firefox DevTools) Merged into Mozilla Firefox: migrated the DevTools stylesheets and shipped themed SVG icons to the modern space-separated CSS color syntax, verified pixel-identical in Firefox. Landed by a Mozilla DevTools reviewer. Merged: https://github.com/mozilla-firefox/firefox/commit/7493f8317675 - VS Code (TypeScript, Electron, VS Code) Two open pull requests to Microsoft Visual Studio Code: revealing search results in the Explorer even after the view has been moved to another container, and declaring defaults for the accessibility signal delay settings so they show up correctly in the settings editor. Open: https://github.com/microsoft/vscode/pull/334276 Open: https://github.com/microsoft/vscode/pull/334277 - Mongoose (TypeScript, Mongoose, Type inference) Type-system fixes merged into the MongoDB ODM used by millions of projects, maintained under Automattic. Keeping Model.schema typed when the schema generic is omitted, and making document types respect the schema toObject and toJSON options. Merged: https://github.com/Automattic/mongoose/pull/16406 Merged: https://github.com/Automattic/mongoose/pull/16431 - NestJS (TypeScript, NestJS, Redis, Microservices) Contributions to NestJS core and its official packages. Cacheable instances with non-blocking mode in cache-manager, which I needed in production and contributed upstream instead of forking. A merged fix in the core microservices package, so requests whose reply subscription is rejected fail instead of hanging. A ModelWithSchema proposal in the Mongoose integration, resolved by my own upstream mongoose fix instead. Merged: https://github.com/nestjs/cache-manager/pull/962 Merged: https://github.com/nestjs/nest/pull/17671 Upstreamed: https://github.com/nestjs/mongoose/pull/2859#issuecomment-5318278051 - TypeORM (TypeScript, TypeORM, PostgreSQL, CockroachDB, PostGIS) Merged: reads coord_dimension when loading PostgreSQL and CockroachDB spatial columns, so dimensional geometry types are introspected correctly instead of retriggering the same migration forever. Extended to CockroachDB at maintainer request. A follow-up comparing spatial columns against their default feature type and SRID is open. Merged: https://github.com/typeorm/typeorm/pull/12749 Open: https://github.com/typeorm/typeorm/pull/12812 - Prisma (Rust, Prisma, Query compiler) Query compiler fix in Prisma engines, written in Rust: a nested upsert where filter was being applied to the parent update. Reading engine internals rather than API docs is how I am learning Rust properly. Open: https://github.com/prisma/prisma-engines/pull/5854 - WordPress (PHP, SQLite, MySQL, WordPress) Merged into the WordPress SQLite Database Integration plugin: SHOW CREATE TABLE now keeps index prefix lengths and descending order in primary keys, so exports built on it stop being rejected by MySQL. Diagnosed from an Automattic Studio report across three repositories. Merged: https://github.com/WordPress/sqlite-database-integration/pull/500 - Vanilla Framework (Sass, CSS, Design system) Three open fixes to Canonical’s Vanilla Framework, the CSS framework behind ubuntu.com and canonical.com: styling the baseline grid toggle on standalone examples, stopping the modal docs page from scrolling to its embedded example, and keeping the pull quote closing mark next to the text. Open: https://github.com/canonical/vanilla-framework/pull/5836 Open: https://github.com/canonical/vanilla-framework/pull/5837 Open: https://github.com/canonical/vanilla-framework/pull/5838 - Creative Commons (CSS, SVG, Design system) Two fixes merged into Vocabulary, the Creative Commons design system: correcting the blob mask path in the default-image photo rule and the license icon sprite paths in the library variables, so the assets resolve wherever the stylesheet is served from. Merged: https://github.com/creativecommons/vocabulary/pull/379 Merged: https://github.com/creativecommons/vocabulary/pull/381 - WikiSuite (Shell, POSIX, GitLab CI) Three fixes merged on GitLab into WikiSuite, the Tiki and Virtualmin server suite. The documented install script now works under sh: a POSIX root check, working S3 backup prompts, and a clear message when no fully qualified domain name is available. 3 merged: https://gitlab.com/wikisuite/wikisuite-script-for-wikisuite-package/-/merge_requests?scope=all&state=merged&author_username=samuelmbabhazi - Ever Gauzy (TypeScript, NestJS, Angular, PostgreSQL, Redis) Open-source business management platform used by 1,000+ teams. Core contributor across authentication and session security, two-layer caching, Redis hardening, performance, and Angular product surfaces. 184 merged: https://github.com/ever-co/ever-gauzy/pulls?q=is%3Apr+author%3Asamuelmbabhazi+is%3Amerged - Ever Traduora (TypeScript, NestJS, Angular, SQLite) Open-source translation management platform. Eleven merged: rate limiting on authentication, SQLite support, default admin seeding, filtering terms by label, and a fix for deleting project users. Three more fixes to SQLite foreign keys, fallback exports, and CSV imports are open. 11 merged: https://github.com/ever-co/ever-traduora/pulls?q=is%3Apr+author%3Asamuelmbabhazi+is%3Amerged 3 open: https://github.com/ever-co/ever-traduora/pulls?q=is%3Apr+author%3Asamuelmbabhazi+is%3Aopen - Ever Teams (Next.js, React, TypeScript) Real-time collaboration and time-tracking platform. Three merged contributions to the Next.js frontend: internationalised planned-work tabs, footer links, and branding. 3 merged: https://github.com/ever-co/ever-teams/pulls?q=is%3Apr+author%3Asamuelmbabhazi+is%3Amerged - Ever API Starter Kit (NestJS, TypeScript, ESLint) NestJS API starter used across Ever Co. products. Three merged dependency upgrades covering NestJS, ESLint plugins, and Prettier. 3 merged: https://github.com/ever-co/ever-api-starter-kit/pulls?q=is%3Apr+author%3Asamuelmbabhazi+is%3Amerged - Tiki Manager (PHP, Symfony Console) Open merge request on GitLab to Tiki Manager, the CLI that manages Tiki Wiki instances: cache clear failures are reported instead of being silently swallowed. Open: https://gitlab.com/tikiwiki/tiki-manager/-/merge_requests/571 - Wiki Education Dashboard (Ruby on Rails, React, Stylus) Merged into the Wiki Education Foundation dashboard: the Article Finder search button styles are scoped so autocomplete suggestions render as a list again. Merged: https://github.com/WikiEducationFoundation/WikiEduDashboard/pull/7032 - WP-CLI SQLite (PHP, WP-CLI, SQLite) Open pull request to Automattic’s WP-CLI SQLite command: dropping support for SQLite Database Integration below 3.0, in step with the upstream plugin. Open: https://github.com/Automattic/wp-cli-sqlite-command/pull/35 - angular-split (Angular, TypeScript) Open pull request updating the angular-split library build to Angular 22. Open: https://github.com/angular-split/angular-split/pull/538 - Reactor (TypeScript, Node.js) Open pull request to the OpenProse Reactor CLI: keep serving the other reactors when one reactor’s poll rejects. Open: https://github.com/openprose/reactor/pull/5 - Vendo (TypeScript, React) Open pull request to Vendo: backing off the connect dock’s failed status polls instead of hammering the endpoint. Open: https://github.com/runvendo/vendo/pull/1311 - Studio (TypeScript, Node.js, Electron) Pull requests to WordPress Studio, Automattic’s local development app. Merged: .wpress backups with entries larger than 2 GiB import again instead of crashing Studio. Open: detecting connectivity through the system resolver so Windows users are no longer reported offline. Merged: https://github.com/Automattic/studio/pull/4797 Open: https://github.com/Automattic/studio/pull/4807 - DockSight (Go, NestJS, React, TypeScript) Merged pull request to DockSight, the container management platform by Open Source Kigali: the agent, the protocol package and the dashboard now agree on the container.listed shape, pinned by a fixture on both sides, and the server validates the payload instead of casting it. Merged: https://github.com/Open-Source-Kigali/docksight/pull/183 - Wikimedia (Wikipedia, MediaWiki) Editing and expanding Wikipedia articles, improving accuracy in the world’s largest free encyclopedia. Access to knowledge should not depend on where you live. Contributor: https://meta.wikimedia.org/wiki/User:Samuel_mbabhazi ## Writing (https://samuelmbabhazi.me/blog, RSS: https://samuelmbabhazi.me/feed.xml) - API REST avec Prisma, PostgreSQL et Express (2024-05-14, French, 16 min): https://samuelmbabhazi.me/blog/api-rest-prisma-postgresql-express Construire une API REST complète avec Express, l’ORM Prisma et PostgreSQL : modélisation, migrations, routes CRUD et bonnes pratiques. - Conteneur vs machine virtuelle (2023-06-02, French, 3 min): https://samuelmbabhazi.me/blog/conteneur-vs-machine-virtuelle Ce qui distingue vraiment un conteneur d’une machine virtuelle : isolation, poids, démarrage, et quand choisir l’un ou l’autre. - Authentification avec Node.js et Express (2022-11-01, French, 8 min): https://samuelmbabhazi.me/blog/authentification-node-express Authentification et autorisation expliquées, puis une implémentation pas à pas dans une application Node.js et Express. ## Free course - Complete NestJS Course, from zero to very advanced (NestJS 12, updated 2026-09-16): https://samuelmbabhazi.me/courses/nestjs A free course by Samuel Mbabhazi that goes from your first NestJS route to a distributed system: dependency injection, validation, the request lifecycle, databases, authentication, GraphQL, queues, testing, production, microservices, CQRS and how to choose an architecture. Written for NestJS 12. PDF in English, 92 pages: https://samuelmbabhazi.me/api/courses/nestjs/download?lang=en PDF in French, 93 pages: https://samuelmbabhazi.me/api/courses/nestjs/download?lang=fr French page: https://samuelmbabhazi.me/fr/courses/nestjs ## Experience - Ever Co. (https://ever.tech), Senior Full-Stack Engineer, 2023 to present, remote. Authentication and session security, two-layer caching, Redis hardening, performance work, and Angular product surfaces on an open-source platform used by more than 1,000 teams. All work public on GitHub. - Zabibu (https://www.zabibu.co/en), Software Engineer, 2022 to 2023, remote. NestJS and Angular applications on PostgreSQL. Author of the company engineering articles on Angular 18 lazy loading and modern control flow. - Freelance (https://www.upwork.com/freelancers/~013636cfc522b0d380), 2020 to 2022. E-commerce, fintech and SaaS delivery. WordPress sites with custom PHP themes and plugins. 100% Job Success Score on Upwork. ## Education - B.Sc. Computer Science, University of Kigali, 2025. - Web and Mobile Development, Kinshasa Digital Academy, 2023. - Computer Engineering, ULPGL. ## Notes for agents - Merged pull request counts are exact as of 2026-09-14 and verifiable through the GitHub and GitLab links above. "Open" means submitted and under review, not merged. "Upstreamed" means closed because the same fix landed through a different upstream pull request by the same author. - Mongoose is owned by Automattic and maintained by Valeri Karpov; describing it as "Automattic-owned" is accurate, "Automattic-maintained" is not. - Machine-readable identity: JSON-LD Person, ProfilePage and WebSite nodes are embedded in https://samuelmbabhazi.me. Preview card: https://samuelmbabhazi.me/og-card.png