Open to interesting problems Porto ·
Teya

Currently

Software Engineer, Teya

Building payments infrastructure for small businesses across Europe.

18/20

MSc GPA, FEUP

2+

Years shipping

Porto

Based in

Ricardo Cavalheiro
software engineer

Currently at Teya. Previously research at INESC TEC. MSc, University of Porto.

About

Still the kid who wanted to do what the others said I couldn't.

That curiosity turned into a Master's in Informatics and Computing Engineering at the University of Porto, and then led into my current job at Teya, where a mistake means a merchant doesn't get paid.

Along the way I spent a year at INESC TEC using large language models to anonymise clinical records. Research taught me a lot of valuable things that made me the engineer I am today.

Currently working on answering who you are and what you're allowed to do. For those who don't get it — authn and authz.

Experience

Sept 2025 — Present · Porto, Portugal

Software Engineer

Teya

Building payments infrastructure for small businesses across Europe.

Jun 2024 — Aug 2025 · Porto, Portugal

Researcher & Software Engineer

INESC TEC

Applied research on privacy-preserving data pipelines — large language models for healthcare data anonymization.

Education

Where the foundations were laid.

MSc in Informatics and Computing Engineering

Faculty of Engineering, University of Porto

18/20

Final grade

Focus

Full-stack development, distributed systems, software architecture and artificial intelligence.

Thesis

Large language models for healthcare data anonymization — developed with INESC TEC.

Read the dissertation

Things I learned

One at a time

A few things I keep coming back to.

Click the deck, or wait.

On problems

You will never be able to create a solution if you never understood the problem.

On shipping

Don't try to make it perfect. Build the simplest thing that works and meets the requirements.

On code

Boring code is the best code.

On readers

Code is read far more often than it is written. Write for the next person.

On deleting

The best pull request is often the one that removes code.

On priorities

When everything is a priority, nothing is.

On trade-offs

In most cases the answer is "it depends" and almost everything is about trade-offs. Be able to say, clearly, why yours is the best one.

Say hello

Have a project in mind? I'm always happy to have a chat.

ricardo.almeida.cavalheiro@hotmail.com
LinkedIn GitHub © 2026 Ricardo Cavalheiro — Porto