Skip to content
Available

Manuel Uicab

Frontend Developer

"Code is the last step. I don't start writing until I understand what problem I'm solving — that's what allows me to build products from idea to launch."
Manuel Uicab

About

My brother opened the door. He's not a developer, but he was the one who introduced me to the world of computing — and from that moment, I knew I wanted to study systems engineering. At university, I found professors who talked about this craft with a passion that made you love it before fully understanding it.

I've spent 8 years building software, growing through what I was taught and what I taught myself. Today I'm the technical reference for frontend at my company, but what truly drives me is simpler than that: knowing that people use things I helped build. That's my measure of work well done.

I'm pragmatic by nature — I understand the problem before writing code, and that's what allows me to build things that last. I know the road ahead is long, and I walk it with intention. My direction is clear: keep growing until I'm part of the products and communities that inspire me today.

Projects

Automotive credit management system

Comprehensive automotive credit management platform with multi-actor workflows and digital signing.

Read case study

The problem

An automotive company managed its credit lines for dealerships manually and in a fragmented way. The process involved multiple actors — operators, legal representatives, advisors, administrators and validators — with no centralized system to control states, validate business rules, or guarantee traceability throughout the complete process.

What I built

I developed the frontend of a comprehensive credit management system that unifies the entire workflow — from the initial requisition to the digital signing of the contract. Four technical decisions defined the project:

State and actor control — I designed a permissions and state system that determines what each actor can see and do at every step of the process. A dealership operator never sees what an internal validator sees, and vice versa. The workflow does not advance if states are not correctly resolved.

Differentiated business rules — The validation, approval and requisition-generation logic differs for new-unit credits, pre-owned units and refinancing. Each type has its own set of rules implemented so the system applies them automatically based on context.

Digital signing with an external service — Signing happens on the external provider’s portal. On our side I implemented document generation and regeneration, submission to the service, receipt of signed documents via webhooks, and automatic assignment to the corresponding credit.

CRM integration — The system is connected at all times to the company’s CRM, synchronizing information about dealerships, credit lines and requisition states.

The result

A process that was previously manual, error-prone and untraceable became an end-to-end controlled digital workflow — with automatic validations, state auditing and integrated legal signing.

Auction system

Multi-audience system unifying admin panel and participant portal in a single platform.

Read case study

The problem

A company needed to digitize its asset auction process — vehicles, real estate and general goods — on a single platform that could serve completely different audiences: the administrative team managing the assets and the external participants bidding in the auctions.

What I built

I developed the frontend of a multi-audience system that unifies the public landing, the administrative panel and the participant portal under a single codebase. Two technical decisions defined the project:

Audience management — Instead of building separate applications, I implemented a session system with user typing and validators that determines which portal to render based on role. Simple on the inside, invisible to the user.

High-complexity UI with shared state — The main auction view was the most demanding challenge: a two-column layout where the left column shows an asset table with a footer control to switch between active auctions — replacing the entire table content — and the right column shows the detail of the selected asset. That detail is fully dynamic: its structure changes depending on whether the asset is a vehicle, a property or a general item. I designed the component architecture so that shared state between columns was predictable and changing asset type would not cause visual or data inconsistencies.

The result

A system that unifies two audiences with opposing needs in a single platform, with an administrative interface capable of handling multiple asset types and simultaneous auctions without losing visual or functional coherence.

Task manager rebuild

In progress

Full rebuild of an internal task manager — new architecture, new UI, new navigation.

Read case study

The problem

The existing version of the task management system had problems affecting both user experience and code maintainability. The interfaces were slow — pages showing the same information made individual queries for each view instead of a single global query. Navigation was poorly structured and the experience did not hold up against comparable tools on the market. Feedback from potential clients and internal users confirmed what the code already showed: it needed to be rebuilt, not patched.

What I’m building

After a diagnostic process with the design team — which included feedback sessions, internal usage and comparative analysis with similar applications — the decision was made to do a full redesign: new interface, new navigation and new architecture.

On the technical side I experimented with multiple approaches before making a decision. I evaluated architectures from the simplest to Atomic Design and Clean Architecture. The result was a custom architecture — a blend of Screaming Architecture and Vertical Slices — centered on features as the main unit of organization. Each feature is autonomous, coherent and easy to locate. SOLID, DRY and YAGNI principles guide every implementation decision.

This same architecture became the company’s internal standard for React projects — I designed and maintain it, and today it’s adopted by the entire frontend team.

Current state

In active development. Estimated launch: 2 months. The build process — including architecture decisions, discarded experiments and lessons learned — will be documented as technical content on the blog.

Stack

Frontend

React (main) Astro (learning) TypeScript JavaScript Tailwind CSS Zustand Context API

Backend

Node.js + Express NestJS Laravel / PHP .NET / C#

(adaptation, not technical decisions)

Databases

MySQL PostgreSQL SQL Server

Testing

Vitest Playwright

Tools

Git / GitHub GitHub Actions (CI/CD) Docker Postman Claude Code

As part of my work I've reviewed, proposed improvements, and fixed code in technologies outside my main stack — Angular, Vue, and others. I don't master them, but I don't stop when I find them either.

Experience

Innovaforce — October 2018 · Present

Frontend Technical Reference

I joined Innovaforce before finishing my degree, as a junior. Over time I became the technical reference for the frontend team — not because of a title, but because the work gradually asked for it.

Along the way I've built systems that are live in production: an automotive credit management platform with multiple actors and digital signing, a multi-audience asset auction system, and I'm currently leading a full rebuild of an internal task manager. Each project pushed me to make decisions beyond the code — architecture, standards, technical judgment.

I also support the team: when a complex problem shows up, I'm the first one sitting down to work through it with them.

Includes internship period as external staffing — 2018.

Shall we build something together?

I'm open to new opportunities — whether it's a freelance project, a position on a team, or a conversation about architecture and consulting. If you have something in mind, write to me.

hola@uicab.dev
Full-time employment Freelance projects Technical consulting