Learning

I combine formal training with daily practice. Everything I learn ends up in a project: it is the only way it sticks.

Education

Second year · In progress

Higher Degree in Multiplatform Application Development

Vocational training · Spain

The base everything else rests on: object-oriented programming, databases, data access and application development in Java and Kotlin.

JavaKotlinBases de datosPOO

In progress

Python Developer

Mate Academy

The syllabus runs from fundamentals and object-oriented programming through SQL, Django and Django REST Framework, FastAPI with SQLAlchemy, asynchronous programming and algorithms. There is a certificate per completed module and code review on every submission.

PythonDjangoSQLFastAPI

What I am on right now

Consolidating

Java

My main language. Right now on collections, concurrency and solid object-oriented design practice.

Going deeper

Spring Boot

Where most of my hours go. Dependency injection, service layers and repositories, and understanding what the framework does underneath.

Going deeper

Hibernate / JPA

Mapping entities and relations without losing sight of the SQL that ends up running.

Going deeper

Kotlin

Null safety, extension functions and coroutines. Writing the same thing in both teaches a lot about each.

Consolidating

Databases

Relational modelling, queries, and why one query turns into a hundred.

Exploring

Security

Authentication, access control and the usual OWASP Top 10 suspects.

Where I practise

TryHackMe

Offensive and defensive security in controlled labs: reconnaissance, exploiting known flaws and learning how they get closed.

LeetCode

Algorithms and data structures, regularly. It keeps me sharp and gets me thinking about cost before writing.

Claude Code

A daily support tool: understanding unfamiliar code, pressure-testing design decisions and reviewing what I write before trusting it.

Languages

SpanishNative

EnglishProfessional technical · B1-B2