yoin
CV as PDF
Selected works · 2025 — 2026

Alberto Valverde · software engineer · Quito

Apps, games and websites that leave something behind.

In Japanese, 余韻 is the resonance that lingers after a sound has faded — the echo of a bell nobody is ringing any more. It's what I want from everything I make, whether it's an app, a game or a website: something that stays with you after you close it.

— Alberto Valverde, yoin labs

Open to freelance, full-time roles and collaborationQuito, Ecuador · remote

Index

Three apps · three games · three websites · all made solo

I. Apps

Focus Tycoon Study timer & app blocker · iPhone On the App Store ShiftStub Shift calendar & paycheck estimator · iPhone On the App Store Balance Forward Checkbook register · iPhone Coming to the App Store

II. Games

Hatch Realms Cozy idle game · iPhone Coming to the App Store Handle With Scare Cozy post-office tycoon · iPhone In development After Hours Arcade-to-casino tycoon · Mac & browser In development

III. Websites

focustycoon.app Product site · Astro · Cloudflare Live shiftstub.com Product site · Astro Live yoinlabs.com This site, with Balance Forward's pages Live

I. Apps

Three iPhone apps, from idea to store.

Each one made end to end: the research, every screen, the code, the icon, the store listing and its own website.

I. Apps — No. 01Study timer & app blocker · iPhone · On the App Store

Focus Tycoon

Focus Tycoon app icon

Study without the scroll. A focus timer and app blocker where your focused minutes build a railway world — and a blocked app asks you for a breath instead of slamming a door.

“A gate, not a wall.”

The idea behind the Turnstile
Platform
iPhone · iOS 16+
Released
July 2026
Price
Free · Pro US$4.99 a month or US$29.99 a year
Languages
English & Spanish
Built with
Expo, React Native and TypeScript, with Swift extensions for Screen Time, widgets and Live Activities · SQLite · Supabase · RevenueCat
A pixel-art railway station at night, Halt No. 7, with a train at the platform
fig. 1Your focused minutes, built into a station.
A dark focus timer showing 00:44 remaining in a focus block
fig. 2A focus block in the dark Arcade Console theme.
Turnstile settings: what the gate does, window gates, pass length and effort
fig. 3The Turnstile: what happens when you open a blocked app.

The problem

Blocking apps usually feels like fighting your own phone, so you switch it off by Thursday. And streaks that reset to zero turn one bad day into failure.

The approach

Open a blocked app and you meet a turnstile: hold still or breathe a few cycles and it opens for a few minutes. You can always turn back, and turning back earns you something. Consistency is measured over two weeks, so a missed day nudges it instead of wiping it out.

What's inside

Five hubs — focus, fitness, calm, sleep and habits — in one app, with Live Activities, Siri shortcuts and 22 themes, each with a high-contrast variant. App blocking is free for everyone.

Try it

The Turnstile, as a blocked app shows it

Open an app you set aside and instead of a wall you get this: a breath, then your call. Turning back is always one tap away.

A working sketch, in the app's own words. On a phone, iOS draws it over the app you tried to open.

This stop is gated

You set this window aside. One breath, then you decide.

Download on the App Store ↗ focustycoon.app ↗

I. Apps — No. 02Shift calendar & paycheck estimator · iPhone · On the App Store

ShiftStub

ShiftStub app icon

Know your next check before it lands. A shift calendar and paycheck estimator for US hourly workers — overtime, the hospital 8/80, night and weekend differentials, unpaid breaks — with the math shown line by line.

“The number is never wrong, and the data is never lost.”

The design brief
Platform
iPhone
Released
September 2026
Price
Free · Pro US$4.99 a month, US$29.99 a year or US$49.99 once
Built with
A TypeScript pay engine with no dependencies · Expo · React Native · SQLite
Tests
2,590 automated tests
Your pay: an estimated next check of $3,051.45 with paid hours, overtime and regular hours
fig. 4Your pay: the next check, before it lands.
The math: regular, overtime, weekend and night differential lines adding up to the gross
fig. 5The math, line by line — good enough to hand to payroll.
A month calendar painted with day, night and swing shifts
fig. 6A rotation painted onto the calendar in a few taps.

The problem

Every rival tracks hours; almost none can compute what decides whether a check is right. Their one-star reviews say the same two things: the math was wrong, or my data disappeared.

The approach

The pay engine was specified and tested before a single screen was designed. It runs both overtime methods employers use, so you can match your own check and also see what the federal method says.

The promise

No account, no ads, no auto-charging trial. Your shifts stay on your phone, and nothing free will ever move behind the paywall.

Try it

Same engine, other rules

Pick the rules you work under. Each ledger is one of the worked examples in ShiftStub's pay spec, computed line by line.

Computed by the ShiftStub website's engine and checked against the spec's own answers. No number here was typed in by hand.

The rules you work under

S1 · Hospital nurse · $36.00/hr · bi-weekly

Overtime over 40 hours a week at time and a half, plus a night and a weekend differential.

Regular71.5 hrs × $36.00
$2,574.00
Overtime6.5 hrs × $54.00 (1.5 × $36.00)
$351.00
Night diff34.5 hrs × $2.10
$72.45
Weekend diff36.0 hrs × $1.50
$54.00

Gross for the period$3,051.45

78.0 paid hours · 71.5 at straight time · 6.5 at a premium

Seven shifts, 78.0 paid hours. Week 1 ran to 46.5 hours, so 6.5 of them are overtime; week 2 came in at 31.5 and adds none.

Figured the federal regular-rate way, the differentials count toward the overtime rate and the same fortnight comes to $3,057.27 — $5.82 more. ShiftStub runs both, so you can match your own check.

S3 · Nurse in California · $55.00/hr

Over 8 hours in a day is time and a half. Over 12 in a day is double time.

Regular32.0 hrs × $55.00
$1,760.00
Overtime12.0 hrs × $82.50 (1.5 × $55.00)
$990.00
Double time2.0 hrs × $110.00 (2 × $55.00)
$220.00

Gross for the period$2,970.00

46.0 paid hours · 32.0 at straight time · 14.0 at a premium

The week totals 46 hours, but the daily rule already paid those hours — so the weekly rule adds nothing. No hour is counted twice.

S6b · Eight-hour nurse on 8/80 · $36.00/hr

Overtime over 8 in a day OR over 80 in the 14-day period — whichever gives more, and never both for the same hour.

Regular80.0 hrs × $36.00
$2,880.00
Overtime2.0 hrs × $54.00 (1.5 × $36.00)
$108.00

Gross for the period$2,988.00

82.0 paid hours · 80.0 at straight time · 2.0 at a premium

The daily test gives 2 hours. The period test gives 2 hours. They tie, and the hour that is both is still one hour — a naive calculator pays 4 here.

S7 · Firefighter, 24 on / 48 off · $22.00/hr

A 21-day work period with a 159-hour overtime threshold, instead of a weekly one.

Regular159.0 hrs × $22.00
$3,498.00
Overtime9.0 hrs × $33.00 (1.5 × $22.00)
$297.00

Gross for the period$3,795.00

168.0 paid hours · 159.0 at straight time · 9.0 at a premium

Seven 24-hour shifts is 168 hours in the period. Nine of them are over the threshold.

Download on the App Store ↗ shiftstub.com ↗

I. Apps — No. 03Checkbook register · iPhone · Coming to the App Store

Balance Forward

Balance Forward app icon

Know what is really yours. A private checkbook register for iPhone — balanced against your paper statement to the penny, with no bank connection and nothing leaving the phone.

“Balanced means zero. Not close — zero.”

From the App Store listing
Platform
iPhone · iOS 16+
Status
Submitted to Apple, October 2026
Price
Free for one checkbook · US$19.99 lifetime unlock
Privacy
Data Not Collected
Built with
Swift and SwiftUI, on a separate money engine with 844 tests
The register: a cleared balance and a yours balance above a list of entries
fig. 7The register. Two balances, and each one explains itself.
Reconciling a statement until the difference reads $0.00 and it shows Balanced
fig. 8Reconcile: tick it off until the difference reads $0.00.
History: five entries, twenty-seven changes recorded, nothing has ever been removed
fig. 9History: every change recorded, nothing ever removed.

History that can't vanish

Every change is written down as a new line. Delete an entry and it stays in the register with a line through it, so you can always see what happened.

Two balances

What the bank has cleared, and what you really have once outstanding checks come through — side by side, and each one explains its own math.

Backups are files

Dated backups land in a folder you can open yourself. No account, no password, no sign-in — it works in airplane mode.

Try it

Balance a statement

Tick what the bank's statement lists until the difference reads $0.00. Stuck? Ask why — the app names the entry you missed.

Sample data, in whole cents. The difference and the hint follow the app's own rules.

Bank statement · 1–30 Sep
Opening balance$1,234.56
5 SepCheck 101−44.00
12 SepCheck 102−138.72
14 SepGreen Grocer−82.45
15 SepRidgeway Payroll+1,212.40
22 SepCorner Store−12.50
Ending balance$2,169.29

Money out

Money in

Difference$934.73

0 of 6 items ticked

You have ticked $934.73 less than the statement says.

It does not balance yet. The app can tell you where to look.

See the app page → Privacy Support

II. Games

Three games: one nearly out, two on the workbench.

A cozy idle game on its way to the App Store, and two tycoons still being built.

New friend! A tortoise hatches and gets a home in the Earth realm
fig. 10A new friend comes home.
The Twilight realm: mushroom houses and their creatures around a purple egg, with a Hold button to hatch it
fig. 11The Twilight realm, every home at level 40.

II. Games — No. 01Cozy idle game · iPhone · Coming to the App Store

Hatch Realms

Hatch Realms app icon

Five quiet realms are waiting for friends. Hatch eggs, welcome new friends home and watch your little world come back to life.

Platform
iPhone
Status
Coming to the App Store
Inside
40 friends to hatch, five illustrated realms, homes from level 1 to 100, 60 adventures and a Star Festival
Promise
No ads, no purchases, no account, no internet
For everyone
Text up to 200%, high contrast, reduced motion and simple controls
Built with
Godot 4 and 2D art · about 24,900 automated checks

See the game page → Privacy Support

Still on the workbench

Two tycoons in development

An isometric village of post-office buildings and roads early in a game

Handle With Scare

Cozy tycoon · iPhone · In development

Run a magical post office whose parcels misbehave, and grow it with machinery, crew, routes and research. The next update, Night Dispatch, turns the depot into a night dispatch desk.

Built with
SwiftUI and SceneKit, with the game rules in a separate Swift package (195 tests)
An isometric neon arcade: hoop and skee-roll machines, two air-hockey tables and customers playing

After Hours

Idle tycoon · Mac & browser · In development

Start with $20, one battered basketball machine and a rented garage, and grow it into a mega casino resort with a hotel and live shows. You run the business; the customers play.

Built with
Godot 4.7, with the business rules tested on their own (710 tests)

III. Websites

Sites built by hand, for things that ship.

Every app gets its own site: a product page, support, a privacy policy and terms — written, designed and deployed by me.

focustycoon.app: Study without the scroll, beside two app screens
fig. 12focustycoon.app — Astro on Cloudflare Pages, with a serverless waitlist on Supabase and Turnstile. Light and dark follow the app's own two palettes.
shiftstub.com: Know your next check before it lands, beside a pay summary card
fig. 13shiftstub.com — Static Astro with no third-party scripts, and live demos that recompute the pay engine's own worked examples.
The Balance Forward product page: Know what is really yours, beside the register screen
fig. 14yoinlabs.com/balance-forward — Product, support, privacy and terms pages for Balance Forward, hosted on this site.
And this page

Plain HTML, CSS and a few lines of JavaScript. No build step, in English and Spanish, deployed on Cloudflare Pages — and it prints as a CV.

IV. Studio

One person, every layer.

I'm Alberto Valverde, a software engineer (UDLA) with a master's in applied Artificial Intelligence, working from Quito, Ecuador. I make apps, games and websites alone, on purpose: I research the problem, design every screen, write the code, draw the icon, write the store listing and press submit.

By day I'm a Solutions & Operations Specialist at Mondo Tracking in Miami: fleet telematics and ELD support, IT operations, and the n8n automations that keep support scaling. By night, yoin labs.

Tools I reach for

  • Native appsSwift · SwiftUI · SceneKit
  • Cross-platform appsExpo · React Native · TypeScript
  • GamesGodot 4 · SceneKit
  • WebAstro · HTML · CSS · Cloudflare
  • Data & paymentsSQLite · Supabase · RevenueCat
  • Automation & AIn8n · Microsoft 365
  • DesignFigma

How things get made

Four habits, whatever the medium

Start from the complaints

Read the one-star reviews of everything that already exists. ShiftStub began as the same complaint, written at every rival.

Case in pointShiftStub's brief — the number is never wrong, the data is never lost — is the two things its rivals' one-star reviews keep saying, turned around.

Prove the core first

The part that must never be wrong is specified and tested before any screen: a pay engine, a money engine, a game's rules.

Case in pointBefore ShiftStub launched, an audit of its own pay engine caught it showing a night nurse $1,548.00 for a $1,440.00 week. It was fixed before release.

Design every state

Empty, error and largest-text states included, then checked with VoiceOver, Dynamic Type and Reduce Motion.

Case in pointHatch Realms is checked at 320 and 390 points wide, with text at 100% and 200%. The last review caught a Close button wrapping on the smallest screen.

Ship what's true

Every number on a store page can be checked in the code. Launch day starts the work; it doesn't end it.

Case in pointFocus Tycoon's fact sheet has one rule at the top: never round up. Old docs claimed 250+ exercises; the app has 180, so 180 is what gets published.

Curriculum

Experience and education

2025 — now

Founder & independent developer — yoin labsDesigned, built and shipped Focus Tycoon and ShiftStub to the App Store. Balance Forward is submitted to Apple, Hatch Realms is next, and two more games are in development. Each product has its own website.

Remote
2024 — now

Solutions & Operations Specialist — Mondo Tracking LLCFleet telematics and ELD: technical support, implementations, IT operations (Microsoft 365 and Entra ID), digital presence and SEO, CRM, and internal n8n automations that keep support scaling.

Miami, FL
2023

IT Support Manager — Universidad de Las AméricasManaged tickets escalated to the university helpdesk and coordinated external providers across HCM, MM, FI, SD, CO, Employee Central and Recruiting/Onboarding modules.

Quito, EC
2022 — 2023

Information Systems Intern — Universidad de Las AméricasTechnical support and maintenance of university systems, documenting support procedures.

Quito, EC

Education

MSc Artificial Intelligence (applied)Universidad de Las Américas · 2025 — 2026

Software EngineeringUniversidad de Las Américas · 2020 — 2025

Computer ScienceUniversidad Latina de Costa Rica · 2023 — 2024

Certifications & awards

EF SET 68/100English, C1 Advanced

Agile Foundations · Preliminary English Test

Second place, Ingenials contestTwice

Details

Spanish and English, bilingualLanguages

Quito, EcuadorBased · working remote

Freelance, full-time, collaborationOpen to

Download the CV as PDF Two pages, in the language you're reading

Correspondence

Let's make something that resonates.

Freelance, a full-time role, or an idea that deserves to exist. I read and answer everything.

[email protected]

CV as PDF

LinkedIn ↗ GitHub ↗ App Store ↗