name: Wilfredo Rujel
location: Lima, Peru
company: SAP
role: Senior Software Engineer
interests:
- Building scalable web applications
- Competitive programming & algorithms
- Open source contributions
currently:
- Writing technical blog posts at wrujel.com/blog
- Building developer tools & side projects|
leetcode-ui Personal LeetCode progress dashboard built with Astro 7, React 19, and Tailwi... ⭐ 0 • 🍴 0 • |
portfolio Personal developer portfolio built with Next.js 16, TypeScript, and Tailwind ... ⭐ 0 • 🍴 0 • |
|
blog A developer blog built with Next.js 16, featuring file-based MDX content powe... ⭐ 0 • 🍴 0 • |
webpage-gpt This is a fully responsive web page, built with React and deployed on Vercel. ⭐ 0 • 🍴 0 • |
|
admin-dashboard-next Admin Dashboard built with Next 16, React 19, Tailwind CSS v4, and TypeScript. ⭐ 0 • 🍴 0 • |
django-crud-react This project is a simple REST API with Django and React. ⭐ 2 • 🍴 0 • |
![]() |
Cancellation Patterns in TypeScript: Taming AbortController Why most async TypeScript code ignores cancellation entirely, and how to build c… |
📅 Aug 8, 2026engineering⏱ 4 min read |
![]() |
Multi-Region Database Failover: What Actually Breaks in Production Multi-region failover looks simple on an architecture diagram — the reality invo… |
📅 Aug 8, 2026architecture⏱ 5 min read |
![]() |
TypeScript Template Literal Types: Building Expressive, Type-Safe APIs Use TypeScript template literal types to encode event names, route patterns, and… |
📅 Aug 8, 2026engineering⏱ 4 min read |
![]() |
Soft Deletes: The Feature That Costs More Than It Saves Soft deletes look like a simple safety net, but they silently corrupt your schem… |
📅 Aug 1, 2026backend⏱ 5 min read |
![]() |
Evolving Event Schemas Without Breaking Consumers How to add fields, rename properties, and restructure events in async systems wi… |
📅 Jul 25, 2026architecture⏱ 4 min read |
3921 problems solved | 6 languages | 72 topics | 57% avg acceptance
| Difficulty | Solved | Progress |
|---|---|---|
| 🟢 Easy | 944/944 | ████████████████████ 100.0% |
| 🟡 Medium | 2048/2050 | ████████████████████ 99.9% |
| 🔴 Hard | 929/930 | ████████████████████ 99.9% |
| Language | Problems | Share |
|---|---|---|
| 3456 | 88% | |
| 235 | 6% | |
| 103 | 3% | |
| 67 | 2% | |
| 56 | 1% |










