Full-Stack Developer · Lisbon, Portugal

Building enterprise web apps
with React & .NET

Hi, I'm Ruben Cipriano — a Lisbon-based software developer shipping scalable React, Next.js and C#/.NET applications for banking, public-sector and enterprise clients.

Who I am

About Me

I'm a full-stack software developer based in Lisbon, Portugal, with 4+ years of experience on web applications for public-sector, banking, insurance and enterprise clients. I work across the stack — React, Next.js, Angular and TypeScript on the front end; C#/.NET and Node.js on the back end, with REST and SOAP APIs. These days I'm part of the team building Portugal's national registry services platform, where most of my work is on payments, billing documents and the concurrency and security fixes around them, and where I also help interns and junior developers get up to speed. Before that I worked on production support for an e-procurement platform and on banking and insurance integrations.

I care about clear, accessible interfaces and steady delivery: secure authentication (Keycloak / OAuth2 / OIDC), automated tests with Jest and NUnit, and CI/CD with Azure DevOps, Jenkins, Docker and Kubernetes. I enjoy turning complex requirements into software that is well tested and easy for the next person to maintain.

4+
Years of experience
5
Companies
50+
Technologies
What I use

Skillset

The core stack I work with day to day — from React, Next.js and TypeScript on the front end to C#/.NET and Node.js on the back end.

TypeScript

TypeScript

My primary language

Next.js

Next.js

React framework

React

React

UI library

Angular

Angular

SPA framework

C#

C#

.NET back-end

SQL Server

SQL Server

Relational database

Node.js

Node.js

JavaScript runtime

Git

Git

Version control

Spoken Languages

Portuguese flag
Portuguese
Native
English flag
English
C1 · Professional working proficiency
Spanish flag
Spanish
Basic to intermediate
Where I've worked

Working Experience

My professional journey, starting back in 2020.

Full-Stack Developer
Growmate / Accenture · client: IRN

Consultant (via Growmate / Accenture) in the team building Portugal's national registry services platform (IRN), which covers citizen, company, property and vehicle registry services. Work mostly on the React / Next.js front ends of the public, reserved and staff service areas and on the shared service-flow components, with C#/.NET changes in the backend-for-frontend and request services.

  • Worked mainly on the payment step of the online and in-person service flows: Multibanco references, MB WAY, card, card terminal (TPA), cheque, cash and credit notes, along with exemptions, urgency fees, cost-rule pricing and the rejection of requests left unpaid.
  • Built and fixed the billing-data forms and the accounting documents attached to each request (receipts, collection documents, debit and credit notes, proofs of request), including the .NET endpoints that serve them through the backend-for-frontend services.
  • Implemented optimistic concurrency for request forms and payments (a version token, allowed state transitions, one active payment per method) to prevent conflicting edits and duplicate payments when the same request is open in more than one place.
  • Worked through items from the platform's security-improvement backlog: Node.js, Next.js and next-auth upgrades for published CVEs, a patched image-processing library, sanitised error messages, safer session checks and upload validation.
  • Contributed to the public, reserved and staff areas, including the staff sign-in, profile and request list, profile-based context switching, and the shared React service-step components every service renders through, built on the AMA Agora design system.
  • Worked on multi-party requests (nominating a representative, blocking actions for represented parties, participant details) and composite requests, and moved remaining front-end calls behind the backend-for-frontend services.
  • Also: GDPR-compliant analytics (Matomo) and cookie consent, Keycloak-based authentication, Redis-backed sessions, environment configuration for the Docker / Kubernetes deployments, Jest tests, code reviews for teammates, and helping interns and junior developers get up to speed in an Agile/Scrum team.
  • Use Claude Code day to day, with project-specific agents and commands that link OpenProject work items to GitLab merge requests and help with specifications, impact analysis and deployment preparation.
C# 12 .NET 8 React 19 Next.js 15 TypeScript 5 Tailwind CSS 3.4 SCSS AMA Agora Design System Keycloak OAuth2 / OIDC next-auth 4 Kafka Redis PostgreSQL REST APIs CQRS Entity Framework Core 9 Node.js 22 Docker Kubernetes Jenkins CI/CD Git Jest 30 Claude Code Agile / Scrum
Oriente, Lisbon, Portugal - Hybrid location flagOriente, Lisbon, Portugal - Hybrid

May, 2025 - Present

1 year & 4 months
Full-Stack Developer
Neotalent Conclusion · client: VORTAL

Consultant (via Neotalent Conclusion) on VORTAL's e-procurement platform, in the second-line operations team that investigates and fixes production issues.

  • Investigated, fixed and tested production issues across C#/ASP.NET services and React interfaces on a public-procurement platform that needs to stay available.
  • Delivered smaller full-stack features, from SQL Server data access to the React interface, and refactored legacy modules where it helped performance or maintainability.
  • Maintained Azure DevOps CI/CD pipelines and worked with the operations and infrastructure teams on incident response and SLA commitments.
C# ASP.NET React TypeScript JavaScript SQL Server REST APIs Azure DevOps Docker CI/CD Git NUnit Jest Agile / Scrum
Lisbon, Portugal - Hybrid location flagLisbon, Portugal - Hybrid

Jun, 2024 - May, 2025

11 months
Back-End Developer
VIA Consulting S.A. · client: Ageas Seguros (Millennium BCP, ActivoBank, SIBS, VISA)

Back-end developer on banking and insurance integrations for financial-sector clients: Ageas Seguros, Millennium BCP, ActivoBank, SIBS and VISA.

  • Took over a Millennium BCP and Ageas integration project that had stalled, reworked its C#/Java service layer (REST and SOAP) and took it to production.
  • Developed online pet insurance for Millennium BCP, integrated into the bank's existing mobile app architecture, which went live for customers.
  • Built batch programs for VISA to automate report generation, and file-processing tools for SIBS to extract and analyse large financial files.
  • Automated the detection and processing of financial files (movements, transfers) with Rundeck jobs persisting to MySQL / SQL Server; wrote NUnit tests and delivered through Git, SVN and Azure DevOps CI/CD, following financial data-security requirements.
C# Java REST APIs SOAP SQL Server MySQL Rundeck Azure DevOps CI/CD Git SVN NUnit Unit Testing Functional Testing Agile / Scrum
Lisbon, Portugal - Remote location flagLisbon, Portugal - Remote

Jan, 2023 - Jun, 2024

1 year & 5 months
Front-End Developer — Intern
Emvenci Business Services

Front-end intern modernising a legacy platform UI into a new Angular design system built on Atomic Design principles.

  • Rebuilt UI components in Angular + TypeScript + SCSS following Atomic Design for reuse and visual consistency.
  • Fixed bugs and improved front-end maintainability and scalability through a structured component architecture.
  • Collaborated with the development team in a Git + CI/CD workflow to ship UI improvements.
TypeScript Angular SCSS HTML CSS AWS Git CI/CD
Lisbon, Portugal - On-site location flagLisbon, Portugal - On-site

Mar, 2022 - Aug, 2022

5 months
Software Developer — Intern
Arquiconsult

Full-stack intern building a back-office application and its mobile-facing APIs, working across C#/ASP.NET Core and the front end.

  • Built a back-office application with C#, ASP.NET Core and Entity Framework, including Razor Pages UI.
  • Developed APIs consumed by a Xamarin mobile client and supported the mobile team on the cross-platform app.
  • Integrated the Google Maps API (with jQuery) to map parks and trees, persisting to a SQL Server database.
C# ASP.NET Core Entity Framework Razor Pages Xamarin SQL Server JavaScript jQuery Git
Odivelas, Lisbon, Portugal - On-site location flagOdivelas, Lisbon, Portugal - On-site

Mar, 2020 - Aug, 2020

5 months
Things I've built

Projects

A selection of things I've built. More on my GitHub.

OpenHours — Team Time Tracking

A multi-user, self-hosted time-logging app built on top of OpenProject. Teams log hours against projects and tasks; entries are drafted locally and synced to OpenProject, with a policy-aware calendar, weekly targets and per-user stats. In production use at IRN.

React 18TypeScript 5.7Vite 6Tailwind CSS 3.4Fastify 5PostgreSQLRedisOpenProject API

Income Planner — Portugal

A Portuguese income & tax planner that compares working as an employee, freelancer or company (Lda.) side by side with current tax rules — including Coverflex benefits, IRS Jovem, break-even, salary/dividend optimisation and investment projections. Exports to PDF and Excel.

Svelte 5Vite 6PocketBase 0.27Zod 4ChartsGoogle OAuth

Our Weddings — Wedding Site Platform

A multi-tenant platform where each couple gets their own wedding site under its own slug: an invitation with a QR code, RSVP collection, a shared photo gallery with chunked uploads, and a live guest quiz. Admin panel per site, transactional email, scheduled backups and a maintenance mode, with hCaptcha on the public forms.

Next.js 16React 19TypeScript 5Tailwind CSS 4Auth.jsGo 1.26GinGORMPostgreSQLJWThCaptchaDocker

Discord Music Bot + Dashboard

A multi-guild, MEE6-style Discord bot: play and queue music from YouTube, set up Twitch live notifications and manage feature modules — all configured through a web dashboard with Discord sign-in.

Next.js 15React 19TypeScript 5.7discord.js 14Node.jsSQLiteDocker

ZeroDown

A homepage for my personal brand and self-hosted homelab, with live service status. Built with Node.js, Express and TypeScript.

Node.jsExpressTypeScript

Developer Portfolio

This portfolio site — a server-rendered Angular 20 app with a light/dark theme, prerendering for SEO, and data-driven sections. Built with Bootstrap and custom SCSS.

Angular 20TypeScript 5.8SCSSBootstrap 5.3SSR
Background

Education

My academic background and certifications.

Education
Licenciatura (BSc) coursework — Computer Software Engineering
2023 – 2024
ISEL — Instituto Superior de Engenharia de Lisboa · Lisbon, Portugal

Advanced programming, algorithms and mathematics coursework at Lisbon's engineering institute, applied to building better-performing applications. Attended alongside full-time work; not completed.

Education
CTeSP — Web & Mobile Application Development
2020 – 2022
ISTEC · Lisbon, Portugal

Higher professional technical course (EQF level 5) covering web and mobile development, UI/UX design principles, usability patterns and structured design patterns, alongside analytical thinking and problem-solving in team-based projects.

Education
Technician in Management & Programming of Computer Systems
2017 – 2020
INETE — Instituto de Educação Técnica · Lisbon, Portugal

Professional secondary education (EQF level 4) in software systems management and programming. Final classification: 15/20.

View diploma