I'm a backend software engineer building production-grade systems in Java and Spring Boot β with a strong focus on security, reliability, and thoughtful system design.
- π Just shipped Insighta Labs+ β GitHub OAuth + PKCE, JWT lifecycle management, role-based access, CLI tool published to npm, web portal on Netlify, backend on Google Cloud Run
- π¬ Shipped Cinema Booking App β full payment lifecycle with Paystack webhooks, HMAC verification, idempotency, and seat lock scheduling
- π° Shipped Budget App β Spring Security, JWT, BCrypt, 20+ integration tests, deployed on Render
- π Design before code β always start with diagrams, failure modes, and security considerations
- π€ Open to backend engineering roles β especially fintech, payments, and AI infrastructure
|
Secure multi-interface intelligence query platform. GitHub OAuth + PKCE end to end, JWT lifecycle management with refresh token rotation, role-based access (ADMIN/ANALYST), rate limiting, request logging, and CSV export. Three interfaces, one backend: REST API + globally installable CLI (npm) + React web portal (Netlify) |
Production-grade booking system with a full payment lifecycle. HMAC SHA512 webhook verification, idempotency controls, booking state machine (PENDING β AWAITING_PAYMENT β CONFIRMED / EXPIRED / FAILED), scheduler-based seat locking, and payment reconciliation sweeper. |
|
Full-stack budget management system. Spring Security + JWT, BCrypt password hashing, global exception handling, ownership checks on all edit/delete endpoints, 20+ integration tests. Dockerized and deployed on Render with a React frontend. |
Django REST API for payments and invoicing. Supports email notifications, MySQL persistence, webhook handling, and environment-based configuration. |
π See all projects β github.com/444notdotun?tab=repositories
1. Bad path before happy path β think about failure before success.
2. Security lens on everything β userId from JWT, never from request headers.
3. Understand the problem before touching the keyboard.
4. Readable code > clever code. The next person reading it might be you.
5. Ship small, iterate fast, learn constantly.
6. Great software is 20% code, 80% decisions.
I'm always open to interesting conversations, collaborations, or just talking tech.