gtchakama/notes

Zimbabwean-born · Johannesburg, South Africa

George Chakama

Software Engineer · Systems Architect · Community Builder

I'm a Zimbabwean-born software engineer, systems architect, and technology innovator with over five years of industry experience building scalable platforms across logistics, accessibility, fintech, ESG, and social good.

I specialize in turning complex operational requirements into resilient infrastructure — whether orchestrating real-time geolocation streams with Google Fleet Engine, building idempotent APIs for fintech ecosystems, or engineering accessibility tools that change how people communicate.

Beyond engineering, I actively mentor developers through Google Africa Developer Scholarship and WeThinkCode, and speak at conferences like Google DevFest and Build with AI about applied AI and scalable system design. I believe technology should be intentional, human-centered, and impactful.

Career

Experience

  1. Jul 2023 – PresentSouth AfricaFull-time

    Software Engineer · Etapath

    Scaling Etapath's transportation and trip-dispatch platform across React, React Native, Ruby on Rails and Google Cloud — mobile, backend and the technical leadership around it: ADRs, SonarCloud quality gates and reviews across ~18 teammates' PRs.

    • Rebuilt the Etapath Driver App from the ground up in React Native/TypeScript — Google Navigation SDK, Fleet Engine Driver SDK, FCM, background GPS tracking and passenger geofencing
    • Led the migration to Expo SDK 56, React Native 0.85 and React 19 on the New Architecture, moving Fleet Engine to TurboModules and retiring 3 native patches
    • Re-architected the mobile data layer across 147 files with TanStack Query and resilient WebSockets — ~3,600 lines of obsolete code removed, test suite doubled; introduced Sentry, EAS Observe and a 25-flow Maestro E2E suite
    • Eliminated a Google Fleet Engine production error storm (~675 Sentry events in 6 weeks) with idempotent task creation, deterministic IDs and a retry/discard architecture adopted fleet-wide
    • Owned ~27 API routes and ~70% of the 12k-line Team Manager booking platform, and fixed a driver double-booking race with row locking, transactional guarantees and ~700 lines of regression tests
    • Designed fleet-scoped RBAC across 12 policies (97 tests, 100% new-code coverage), closed IDOR, LIKE-injection and OTP brute-force holes, and built an AI support-triage system across WhatsApp, Gemini and ClickUp
  2. Jun 2025 – Oct 2025United KingdomContract

    Software Engineer · TDi Sustainability

    Built and delivered enterprise ESG and supply-chain risk tooling — system architecture, data integration, user experience and scalable delivery.

    • Designed and built the Strategic Roadmap platform: a multi-step materials risk workflow from Bills of Material through API-driven risk scoring to actionable roadmap reports
    • Architected a unified ESG risk dashboard bringing TEDD, Global Risk Tool, ICAT, Search 360 and Entities/Materials into a single interface
    • Secure, scalable architecture with token-based authentication, RBAC, multiple API integrations and Convex-backed data workflows
    • Rich data visualisations in Next.js, TypeScript, Mapbox, Recharts, Radix UI and Tailwind CSS, delivered to production on Kubernetes with Helm
  3. Sep 2022 – Aug 2025Harare, Zimbabwe

    Community Manager · Built Different

    Ran the Built Different developer community in Harare alongside full-time engineering work.

  4. Feb 2023 – Jun 2023Cape TownContract

    Software Engineer · Restio Labs

    Built scalable web applications and intelligent integrations with Node.js, Angular, REST APIs and cloud platforms.

    • Built and integrated bot-driven workflows, connecting conversational interfaces with backend services and business processes
    • Designed and consumed RESTful APIs integrating frontend applications with distributed backend services and third-party platforms
    • Deployed on AWS and Azure for reliable application delivery and scalable infrastructure
    • Contributed across the full lifecycle — system design, implementation, testing, optimisation and production delivery
  5. Jan 2023 – May 2023Harare, ZimbabweContract

    Full Stack Engineer · Velocity Tech Inc.

    Digital agency delivering web and emerging-technology solutions for clients across multiple industries — several projects at once, each with its own stack and workflow.

    • Contributed to a large-scale job portal in Vue.js — frontend features, user workflows and integrations
    • Worked on a blockchain and NFT project, building Web3 functionality inside a production project
    • Delivered features across multiple client projects with designers, developers and stakeholders
  6. Sep 2022 – Feb 2023Berlin, GermanyContract

    Frontend Developer · Codum.cc

    Frontend for a platform matching developers and technology enthusiasts with accountability partners to learn, collaborate and build projects together.

    • Built and enhanced the React.js frontend — reusable components, responsive interfaces, maintainable architecture
    • Integrated with Python backend services and PostgreSQL, and added Stripe for secure payment workflows
    • Shipped core matching, collaboration and project-building features, and improved performance and cross-browser consistency
  7. Feb 2022 – Oct 2022NigeriaContract

    Lead Software Developer · Kerapay

    Led engineering for a fintech platform that lets employers give employees flexible financial benefits — salary-on-demand, perks and utility discounts.

    • Led and mentored a team of developers across TypeScript, React, Node.js and React Native
    • Architected the financial-benefits platform for scalability, reliability, security and maintainability
    • Delivered core features across web and mobile, from technical design through to production release
    • Set engineering standards — code reviews, technical decisions and continuous architecture improvements
  8. Jul 2021 – Jan 2022Los Angeles, CAContract

    Frontend Developer · orbit

    Frontend for high-quality, scalable web applications and polished user experiences across client projects.

    • Built and maintained production React and Redux applications with GraphQL and Apollo Client
    • Designed responsive, accessible interfaces in SASS from product and design requirements
    • Improved performance and responsiveness across devices, with code reviews, testing and debugging as routine
  9. Jan 2020 – Apr 2021Harare, ZimbabweContract

    Web Developer · Benthos Technologies

    Designed and delivered websites and digital experiences for clients — responsive design, usability and reliable content management.

    • Built and customised WordPress sites — themes, layouts, plugins and content-management workflows
    • Responsive interfaces optimised for desktop, tablet and mobile
    • Owned projects from requirements through development, testing, deployment and ongoing support
  10. May 2018 – Jan 2020Harare, Zimbabwe

    Web and Print Designer · Covenant

    Web and print design for clients — where the journey started.

Decisions

Engineering notes

  1. Reliability · Etapath

    Idempotent task creation to end a Fleet Engine error storm

    Context
    Google Fleet Engine task creation was producing an error storm — ~675 Sentry events in six weeks — as retried and duplicated dispatch requests collided with tasks that already existed.
    Decision
    Made task creation idempotent: deterministic task IDs so a retry resolves to the same task, behind one shared retry/discard architecture that every Fleet Engine integration now goes through.
    Trade-off
    One more layer every integration must pass through, and the discard rules have to be exactly right — get them wrong and a genuinely new task is dropped as a duplicate.
    Outcome
    The storm stopped, and the same path was adopted fleet-wide, so new integrations inherit retry safety instead of re-solving it.
    • Google Fleet Engine
    • Ruby on Rails
    • Sentry
  2. Data integrity · Etapath

    Row locking over optimistic checks for driver bookings

    Context
    Two dispatchers could book the same driver for overlapping trips: concurrent requests both passed the availability check before either had written, so the conflict only surfaced in the field.
    Decision
    Serialised bookings with database row locking and transactional guarantees, backed by ~700 lines of regression tests and a conflict-detection UI that explains why a booking was rejected.
    Trade-off
    Locking serialises writes on a hot row, so bookings for a busy driver queue briefly instead of racing — a small latency cost accepted in exchange for never double-booking.
    Outcome
    That class of bug is gone, and the regression suite keeps it gone.
    • PostgreSQL
    • Ruby on Rails
    • React
  3. Mobile architecture · Etapath

    Re-architect the Driver App data layer on TanStack Query

    Context
    Hand-rolled fetching, caching and socket handling had spread across 147 files of the Driver App; stale state and reconnect bugs were a recurring source of field issues.
    Decision
    Re-architected the data layer on TanStack Query with one resilient WebSocket handler — removing ~3,600 lines of obsolete code and doubling the test suite — shipped alongside the move to Expo SDK 56, React Native 0.85 and React 19 on the New Architecture.
    Trade-off
    A large, risky change across 147 files landing with a runtime migration, so regressions had to be caught by the expanded unit tests and a 25-flow Maestro E2E suite rather than a gradual rollout.
    Outcome
    Less code, more coverage, and a data layer that recovers from dropped connections by design; Fleet Engine moved to TurboModules and three native patches were retired in the same push.
    • React Native
    • Expo
    • TanStack Query
    • Maestro
  4. Access control · Etapath

    Declarative, fleet-scoped RBAC instead of per-endpoint checks

    Context
    Team Manager serves many fleets on one platform. Permission checks were scattered through controllers, where one missed check is a cross-tenant data exposure.
    Decision
    Designed fleet-scoped RBAC as 12 declarative policies evaluated centrally, with 97 tests and 100% new-code coverage — alongside fixes for IDOR, LIKE-injection and OTP brute-force findings and committed credentials.
    Trade-off
    Every new endpoint has to be expressed as policy before it ships — deliberate friction, since the failure mode is another fleet's data.
    Outcome
    Authorisation is one system you can read, test and audit, instead of a pattern each engineer has to remember.
    • Ruby on Rails
    • RBAC
    • Security
  5. Product architecture · TDi Sustainability

    One ESG risk dashboard over five separate tools

    Context
    Supply-chain risk work lived across TEDD, Global Risk Tool, ICAT, Search 360 and Entities/Materials; analysts stitched an answer together by hand.
    Decision
    Architected a unified ESG risk dashboard that integrates all five sources behind one interface — token-based auth, RBAC and Convex-backed data workflows — plus a multi-step Strategic Roadmap flow from Bills of Material to risk-scored roadmap reports.
    Trade-off
    Five upstream tools means five contracts to keep in sync; a change in any of them shows up in the dashboard first.
    Outcome
    Delivered to production on Kubernetes with Helm — one place for materials risk assessment instead of five.
    • Next.js
    • TypeScript
    • Convex
    • Mapbox
    • Kubernetes
Stack

What I reach for

Frontend

  • React
  • Next.js
  • TypeScript
  • Tailwind CSS

Backend

  • Node.js
  • Ruby on Rails
  • PostgreSQL
  • Express
  • MongoDB

Mobile

  • Expo
  • React Native
  • EAS Build
  • Flutter

Cloud

  • Google Cloud
  • Vercel
  • Heroku
  • Firebase
  • Cloudinary

AI

  • Gemini AI
  • AI Studio
  • Agents
  • LangChain
  • TensorFlow Lite
  • Core — first choice
  • Regular — in rotation
  • Exploring — learning
Right now

Now building

Oddah

In beta

A digital companion for modern couples committed to nurturing meaningful relationships.

  • React Native
  • Expo
  • Node.js
  • Gemini AI
  • MongoDB

SubTrack

In development

Track every subscription and renewal on one clean calendar.

  • Next.js
  • Auth.js
  • Drizzle
  • Postgres
  • Expo
  • Railway

Pushlog

In development

A focused push-up training app that turns your goal into an adjustable plan. Created by Ngonidzashe Mangudya; I contribute upstream.

  • Flutter
  • Cloudflare Workers
  • D1
  • Firebase

Poof

In development

Let go of what you don't need — a swipe-to-clean camera roll.

  • Expo
  • React Native
  • TypeScript

Tinnymix

In development

A Spotify companion for people who think in mixtapes.

  • Next.js
  • Spotify API
  • Gemini AI
  • Vercel
Open source & tools

More projects

Kanso

Ngonidzashe Mangudya's local-first Markdown notes app in Rust on GPUI, with end-to-end encrypted sync on Cloudflare. I contributed locked notes with Touch ID, and the notebook icons and colours.

  • Rust
  • GPUI
  • SQLite
  • Cloudflare Workers

VS Code Theme Collections

Two VS Code theme extensions — 25 palettes anchored to Zimbabwean cities and African countries, dual-published to the Marketplace and Open VSX by GitHub Actions.

  • VS Code API
  • TextMate grammars
  • GitHub Actions

WA-TUI

A keyboard-driven terminal UI for WhatsApp Web — QR pairing, fuzzy search, read receipts and native notifications, installed via Homebrew, npm or npx.

  • Node.js
  • neo-blessed
  • whatsapp-web.js

Site Lock

Manifest V3 browser extension that password-protects distracting sites — five block modes, bcrypt-hashed master password and no server anywhere.

  • TypeScript
  • React 19
  • Chrome Manifest V3
  • Playwright

Lockr

A local-first CLI that keeps API keys in a single AES-256-GCM vault with Argon2id key derivation and OS-keychain caching. No accounts, no sync, no servers.

  • Go
  • Cobra
  • AES-256-GCM
  • Argon2id
All projects and case studies on gtchakama.com →
Recognition

Awards

Junior Chamber International · 2023

JCI TOYP — Ten Outstanding Young Persons

Honoured as one of the Ten Outstanding Young Persons of the World for developing HearMe — a mobile application empowering individuals with speech impairments in Zimbabwe to communicate more effectively and integrate into society.

30 Under 30 · 2023

30 Under 30 Top Tech Innovator

Recognised for contributions to building impactful technology solutions across healthtech, fintech, and accessibility-focused applications.

On stage

Speaking

  • Google DevFestApplied AI Integrations & Advanced Architectural Patterns
  • Google Build with AIIntegrating Gemini AI into Real-World Applications
  • Community Developer EventsScalable System Design & Tech Education in Africa
Giving back

Mentorship & community

  • Google Africa Developer Scholarship (GADS)Mentoring aspiring African developers on software engineering, career paths, and Google Cloud technologies.Since 2019
  • WeThinkCodeSupporting junior developers through coding challenges, project reviews, and career guidance.Since 2019
  • Built DifferentCommunity Manager — organising tech meetups, mentorship sessions and engineering events that grow Zimbabwe's developer ecosystem.2022 – 2025
Background

Education

  • TreehouseFront-end Web Development & Full-stack JavaScript2018 – 2019
  • Zimbabwe Open UniversityBachelor's degree, Computer Software Engineering2017 – 2018

Technology should be intentional, human-centered, and impactful. The goal isn't just systems that scale technically — it's systems that improve how people communicate, work, move, learn, and connect.

— George Chakama