Rhussel
Combo.

Software developer Metro Manila, PH

Java backends.
Mobile experiences.
Cloud delivery.

I build Spring Boot APIs and React Native apps, with a focus on data integrity, offline synchronization, and cloud deployment.

Open to developer opportunities
  • Java
  • Spring Boot
  • React Native
  • AWS
  • Azure
  • Docker

Selected work

My contribution, the system,
and the decisions behind it.

BuzzSave

Personal finance platform · Thesis project

Connecting mobile expense capture to dependable finance APIs.

  • Java 21
  • Spring Boot
  • MySQL
  • Docker
  • AWS
1st Runner-Up (2026)2nd Runner-Up (2025)UMak Infotechnolympics

My contribution

  • Built Java 21 and Spring Boot REST APIs for expenses, budgets, and portfolios with MySQL.
  • Used database transactions, idempotent requests, and stale-data validation for budget updates.
  • Implemented on-device receipt OCR and offline expense queues that synchronize after reconnection.
  • Deployed APIs on AWS EC2 with RDS and S3, hosted Python classification models on Azure VMs, and created a multi-stage Docker build.
BuzzSave

A recorded expense.
A consistent budget.

The app in front. The engineering behind it.

  1. Capture & queueOn-device OCR and offline records
  2. Spring Boot APIsREST synchronization and validation
  3. MySQLExpense and budget persistence
Current BuzzSave dashboard showing an illustrative budget and demo transactions
Actual app screen · Demo dataSimplified workflow alongside a dashboard captured from current app components.

When a budget request arrives twice

A retry should not create a second plan. A preview should not silently overwrite financial inputs that have changed.

First apply
Save the plan, applied result, and request hash in a transaction.
Identical retry
Return the saved result for the same recommendation and amounts.
Inputs changed
Reject the stale recommendation and require a fresh preview.
Inspect the implementation & test cases

The apply operation locks the user’s budget updates, checks a saved request hash for retries, and revalidates the preview’s financial context before writing.

if (snapshot.getAppliedPlanId() != null) {
    if (!requestHash.equals(snapshot.getAppliedRequestHash()))
        throw conflict("This recommendation was already applied with different amounts");
    return applied(snapshot, recommendation, true);
}

// Later, after loading the current financial context:
if (!json.hash(context).equals(snapshot.getInputHash()))
    throw conflict("Financial inputs or the target plan changed; generate a new preview");

Selected excerpt from BudgetPlannerService.apply; surrounding validation omitted for readability.

Integration-test coverage
  • Concurrent identical applies return the same plan.
  • Changed spending history or target plans produce a conflict.
  • Overwrites require confirmation and edited allocations respect constraints.
  • Another user cannot access or apply the recommendation.

Cases present in BudgetPlannerApiIntegrationTest.java. This describes test coverage, not a live test run.

Discuss the implementation

S-Space Hub

Client project Dormitel management platform

A commercial dormitel’s tenant and administrator workflows, connected by one backend.

  • Java 17
  • Spring Boot
  • JWT
  • MySQL
  • k6
Client projectBuilt for a commercial dormitel

Java / Spring Boot backend for tenant and administrator workflows.

My contribution

  • Built the Java 17 and Spring Boot backend with JWT authentication and MySQL for a commercial dormitel client.
  • Deployed the backend on AWS EC2, with Amazon RDS for MySQL persistence and S3 for object storage.
  • Integrated Gemini for maintenance-ticket processing and used k6 to load-test tenant and administrator API workflows.

Two sides of home.
One shared backend.

Tenant appAdministrator app
Spring Boot REST APIs

JWT authentication

MySQLPersistenceObject storageFiles & imagesGemini APIMaintenance tickets
Conceptual architecture summaryNo tenant, payment, or service-ticket records are displayed.

Testing the workflows, not just one endpoint

Tenant and administrator requests exercise different paths through the same service. Latency and errors both matter.

The test scripts cover login followed by tenant profile, bills, tickets, and announcements, alongside administrator dashboard and management requests.

Inspect a saved load-test result

A saved run on 12 May 2026 used a custom Node.js load script against a Render service with Aiven MySQL. This is a separate environment from the AWS deployment described above.

Selected results from the saved test report
ScenarioRequestsp95 latencyErrors
1 tenant352,638 ms0%
1 administrator305,809 ms0%
10 tenants3505,933 ms0%

Zero request errors did not mean the latency targets passed: the administrator baseline and normal-load scenario exceeded the report’s thresholds. These measurements describe that test environment and run, not current performance.

Source: load_test_report_2026-05-11T17-23-21.md. Separate k6 scripts are also part of the project; the figures above come from the custom Node.js run.

GroceReel

AI recipe and grocery discovery · Frontend developer

From recipe inspiration to a practical grocery plan.

  • TypeScript
  • React Native
  • Expo Router
  • AsyncStorage
Discuss GroceReel
Top 15 NCR Regional QualifierDICT Philippine Startup Challenge XI, 2026

Selected from 108 startup entries, representing the University of Makati.

My contribution

  • Built the TypeScript and React Native frontend prototype, with Expo Router navigation and shared state.
  • Implemented portion scaling, ingredient-swap cost calculations, and pantry-aware shopping lists.
  • Added AsyncStorage persistence and validated state restoration for shopping and pantry state.

From inspiration
to ingredients.

Recipe discovery, portion scaling,
and a pantry that stays with you.

Actual GroceReel frontend prototype showing recipe discovery with sample recipesActual GroceReel prototype showing ingredient swaps and portion calculations with sample prices
Actual frontend prototype screensSample recipes and prices. Select a screen to view it full size.
Prototype scope

A presentation MVP using sample recipes, prices, and store groupings. TikTok links open a labeled sample. Backend services, authentication, checkout, live inventory, cross-device sync, and deployed AI extraction are outside this prototype.

An engineer’s curiosity.
A support specialist’s
perspective.

Based in Metro Manila, Philippines

I care about what happens
after the code ships.

My experience in enterprise IT support taught me to help people through the moments when technology gets in their way. At Stefanini, I supported enterprise IT services and progressed from L1 support to an L2 / Subject Matter Expert role.

That experience informs how I build: protect the data, consider the failure cases, and make the next person’s job easier. Today, I bring that approach to Java backends, mobile interfaces, and cloud deployments.

University of Makati

BS Computer Science
Major in Application Development

2023 — Expected August 2027

The tools behind the work

Backend & data
Java, Spring Boot, Spring Security, REST APIs, JWT, JPA / Hibernate, MySQL, SQL
Mobile & web
TypeScript, React Native, Expo, React, Google ML Kit
Cloud & delivery
AWS EC2, RDS, S3, Lambda, VPC, WAF, Azure VMs, Docker, Git, k6
Applied intelligence
Python, XGBoost, Gemini API

AWS Certified
Cloud Practitioner

Issued February 2025
Valid through February 2028

Experience that
shapes how I build.

Enterprise IT support, automation,
and hands-on incident investigation.

Stefanini

North America and APAC

August 2024 — September 2025

IT Support Specialist L2 /
Subject Matter Expert

July — September 2025

Automated ticket documentation and support notifications using Power Automate and API integrations with human review. Managed Active Directory, Microsoft Entra ID, and Microsoft 365 access while investigating DNS, TCP/IP, and server incidents.

IT Support Specialist L1

August 2024 — July 2025

Supported Windows, macOS, Microsoft 365, and network services in an enterprise environment serving 11,000+ global users. Managed Exchange Online permissions and mail-flow rules, and documented recurring fixes in Cherwell.

Let’s build
something useful.

Open to developer opportunities

Looking for a developer who thinks through the system and the people using it? I’d love to hear about your team.

Email Me