π Currently open to remote opportunities (contract / full-time) π Async-first communicator β I deliver through clear documentation and code. Open to voice/video when needed.
35+ years of software development | Cross-platform desktop apps (Swift / C# / C++) | Proven track record of rescuing failing projects
πΌ LinkedIn | π Portfolio | πΌ Resume (PDF)
- Complex debugging that others gave up on
- Failing projects that need rescue and stabilization
- Cross-platform consistency (macOS β Windows)
- Legacy system modernization
IMEIndicatorClock β macOS
IME status indicator + customizable desktop clock. Pure Swift/SwiftUI, 18+ languages, distributed via MacUpdate & Vector.
IMEIndicatorClockW β Windows
Windows port in C#/.NET 8. Feature parity with macOS version, MVVM architecture.
IME Settings Simulator β Web App
Full-stack settings preview app (React + Express + Supabase). Live Demo
GitHub Download Counter β Web App
GitHub Releases download stats viewer with parallel API calls. Live Demo
File Tab Opener β Cross-platform
Desktop utility that opens folder groups as tabs in a single Finder/Explorer window. Python/tkinter, 5-language support, 68 unit tests.
FileTabOpenerM β macOS
Native SwiftUI version of File Tab Opener. AX API + AppleScript hybrid for reliable Finder tab control, modern sidebar layout.
FileTabOpenerW β Windows
Native C++ Win32 version of File Tab Opener. UI Automation API for reliable Explorer tab control, dual layout (compact + sidebar), dark mode support, 5-language support.
Play IME Preset API β Backend
REST API for IME preset management. Play Framework 3.0 + Java 21 + Ebean ORM + Supabase PostgreSQL.
Play IME Preset Dashboard β Backend
Reactive REST API with SSE streaming. Play Framework 3.0 + Scala 3 + Slick + Pekko Streams. Same API, different paradigm.
Same database, multiple implementations β demonstrating language versatility:
graph TB
subgraph Frontend
SIM["IME Settings Simulator<br/><small>React + Vite</small>"]
end
subgraph "Backend (Java)"
API["play-ime-preset-api<br/><small>Play 3.0 + Java 21 + Ebean</small>"]
end
subgraph "Backend (Scala)"
DASH["play-ime-preset-dashboard<br/><small>Play 3.0 + Scala + Slick + Pekko Streams</small>"]
end
subgraph Database
DB[("Supabase PostgreSQL")]
end
subgraph "Desktop Apps"
MAC["IMEIndicatorClock<br/><small>Swift / SwiftUI</small>"]
WIN["IMEIndicatorClockW<br/><small>C# / .NET 8</small>"]
end
SIM --> API
SIM --> DASH
API --> DB
DASH --> DB
MAC -.->|"imports presets"| SIM
WIN -.->|"imports presets"| SIM
π© Email: obott9.dev@gmail.com πΌ LinkedIn: linkedin.com/in/hideki-obote-1b33b43a7 π§ Upwork: upwork.com/freelancers/~0146733eaa54bd44c8
If you find my projects useful, please consider supporting me!
Architecture design, multilingual localization, and documentation created with Claude AI.