01 # About
I'm Ivan Bayiga, a software engineer focused on building reliable systems, digital products and technology that solves meaningful problems.
# behind the systems
I enjoy working at the intersection of software engineering, system architecture, infrastructure and innovation.
My work moves from the first question to the architecture, the build and the product that survives contact with reality.
01 # Engineering DNA
BUILD
Turn ideas into working products.
DESIGN
Create systems that can evolve.
SOLVE
Break complex problems into manageable systems.
LEARN
Understand how things work beneath the surface.
IMPACT
Build technology that matters.
02 # Stack
What each tool does, how it works, and an example of how I use it in my projects.
Programming languages
- Java
- What it does
Build typed backend services and domain logic.
- How it is used
Model business rules in classes, expose service contracts and verify them with automated tests.
- How I use it
I model hospital workflows and business rules in the backend services.
In GinDHO - TypeScript
- What it does
Make JavaScript data contracts explicit before runtime.
- How it is used
Define types for component props, API responses and application state, then check them during builds.
- How I use it
I define the frontend's API contracts, form values and component props explicitly.
In GinDHO - Python
- What it does
Implement backend APIs and data-processing logic.
- How it is used
Organize services into modules, validate their inputs and test their behavior.
- How I use it
I implement the road-core and trip-safety backend services in Python.
In RoadGuardian - JavaScript
- What it does
Run browser interactions and Node.js automation.
- How it is used
Compose modules and asynchronous functions to handle events, requests and command-line tasks.
- How I use it
I use Node.js scripts to migrate the shop database and check storefront flows.
In BayShop
Frameworks & UI
- Spring Boot
- What it does
Structure Java applications with configurable web and data services.
- How it is used
Connect controllers, business services and repositories through dependency injection.
- How I use it
I organize hospital APIs into controllers, business services and persistence layers.
In GinDHO - React
- What it does
Build interactive web interfaces from reusable components.
- How it is used
Use props, state and hooks to connect screens to application data and user actions.
- How I use it
I build the hospital workspace as reusable screens for clinical and administrative workflows.
In GinDHO - FastAPI
- What it does
Expose typed HTTP APIs from Python services.
- How it is used
Declare routes, validate request models and connect asynchronous handlers to data services.
- How I use it
I expose incident, navigation and trip-safety operations through validated API routes.
In RoadGuardian - React Native
- What it does
Build mobile interfaces using React and native platform components.
- How it is used
Compose screens, navigation and device integrations while handling mobile loading and error states.
- How I use it
I build the mobile map, reporting screens and road-safety learning experience.
In RoadGuardian - Expo
- What it does
Provide development tools and device APIs for React Native.
- How it is used
Use Expo modules for platform capabilities and Expo Router for application navigation.
- How I use it
I connect mobile navigation and device capabilities, including location, through the Expo application.
In RoadGuardian - Next.js
- What it does
Combine React pages, server rendering and application routes.
- How it is used
Use the App Router, server and client components, metadata and route handlers where needed.
- How I use it
I organize the company, product and service pages with the App Router and page metadata.
In BAYSIVA - Tailwind CSS
- What it does
Style interfaces with composable utility classes.
- How it is used
Combine layout, spacing and responsive utilities with shared design tokens.
- How I use it
I style responsive page sections with utility classes and shared design tokens.
In BAYSIVA - Material UI
- What it does
Provide reusable React controls and a consistent design system.
- How it is used
Compose forms, dialogs and navigation from themed components instead of rebuilding each control.
- How I use it
I compose storefront and administration controls with Material UI components.
In BayShop
Data & messaging
- PostgreSQL
- What it does
Persist structured application data with relational guarantees.
- How it is used
Define schemas, constraints and migrations, then read and update data through SQL transactions.
- How I use it
I persist hospital records and service data using relational schemas and migrations.
In GinDHO - Kafka
- What it does
Distribute durable events between independent services.
- How it is used
Publish to topics and process events with consumer groups, versioned contracts and retry handling.
- How I use it
I connect hospital domains through events such as patient changes, appointments and billing updates.
In GinDHO - Redis
- What it does
Store fast-access and short-lived data outside the main database.
- How it is used
Use scoped keys, expiration times and explicit invalidation for cached values.
- How I use it
I cache authorization lookups and invalidate cached permissions when access rules change.
In GinDHO - PostGIS
- What it does
Add geographic storage and spatial queries to PostgreSQL.
- How it is used
Represent locations as spatial data and use distance queries and spatial indexes.
- How I use it
I work with incident locations and proximity queries for the road map.
In RoadGuardian
Infrastructure & tooling
- Docker
- What it does
Package applications and their runtime dependencies.
- How it is used
Build images from Dockerfiles and coordinate local services with Docker Compose.
- How I use it
I start the hospital services and their infrastructure together with Docker Compose.
In GinDHO - Kubernetes
- What it does
Describe and orchestrate containerized service deployments.
- How it is used
Declare deployments, services, configuration and ingress routing in manifests.
- How I use it
I describe service deployments, configuration and routing in the project's Kubernetes manifests.
In GinDHO - GitHub Actions
- What it does
Automate repository checks and delivery tasks.
- How it is used
Define event-triggered workflows that run builds, tests and deployment steps on runners.
- How I use it
I automate repository checks with versioned CI workflows before delivery.
In GinDHO - Linux
- What it does
Provide the operating environment for application services.
- How it is used
Use the shell to manage processes, permissions, environment settings and operational checks.
- How I use it
I package the backend for Linux containers and use shell commands for startup and health checks.
In RoadGuardian - Vite
- What it does
Run a fast frontend development server and produce production assets.
- How it is used
Develop with hot updates and bundle the application with its framework integration.
- How I use it
I run and build the React Experience Shell with Vite.
In Mondo - Vercel
- What it does
Build and host web applications from a connected repository.
- How it is used
Connect GitHub, configure build settings and domains, and publish versioned deployments.
- How I use it
I publish the website from its GitHub-linked Next.js project on the company's domain.
In BAYSIVA
Open channel
