computer engineering graduate · sines, pt

Welcome, I'm Diogo Tavares
and this is my Personal Portfolio

I'm a Computer Engineering graduate who learned how to create software from the ground up. I really enjoy actually understanding what's underneath all the abstraction.

Layer 01 — Hardware & Logic
Low level programming
RISC-V AssemblyLogisimBoolean Logic
Layer 02 — Systems & Networking
Sockets, threads and OS's
CTCP/UDPpthreadsLinux
Layer 03 — Backend & Data
Learning to build services that hold up
Java / SpringPostgreSQLPythonDocker
Layer 04 — Web & Full-Stack
What I'm working on and learning today
JavaScriptTypeScriptReactPHP
01 → 04 — three years, one never-ending learning journey
Profile

About me

Final-year Computer Engineering student at the University of Évora, specializing in software development and web applications. I'm ready to implement the multiple engineering principles i learned throughout my studies to build practical, efficient solutions — and motivated to keep growing within the global tech industry.

DegreeBSc Computer Engineering
UniversityUniversity of Évora
Timeline2023 — 2026
Based inSines, Portugal
LanguagesPortuguese (native), English
Currently learningReact & TypeScript
capabilities

Core competencies

What four years of coursework actually turned into.

Systems & Architecture

Low-level programming

RISC-V assembly, process lifecycle, and memory management on C/Linux.

Networking

Sockets & concurrency

TCP/UDP programming, I/O multiplexing, POSIX threads, custom application-layer protocols.

Mobile

Android architecture

Decentralized networking simulation, UI/UX prototyping, device state management.

Full-Stack

REST APIs & front-ends

Designing scalable backend APIs and consuming them through dynamic interfaces.

Algorithms

Graphs & complexity

Network flow algorithms, graph theory, and time/space complexity optimization.

Databases

Relational modeling

Schema design, relational algebra, and complex SQL query optimization.

Digital Systems

Circuit & state design

State machine design, Boolean algebra optimization with Karnaugh maps.

Linux

Systems administration

Environment setup, dual-boot configuration, partitioning, bash scripting.

experience

Software Engineering Internship

CIDEHUS — Interdisciplinary Centre for History, Cultures and Societies

University of Évora
Software Engineering Intern
FULL-STACK Designed and implemented dynamic, modular web interfaces in PHP, using AJAX/JavaScript for asynchronous data fetching on the portal's front-end.
DATABASE Wrote complex PostgreSQL queries for efficient server-side filtering, pagination, and structural integrity on public-facing endpoints.
AUTOMATION Built Python scripts using Regex for parsing and text normalization (including Windows-1252 → UTF-8 encoding fixes), migrating historical text into structured JSON.
DEVOPS Orchestrated multi-service local environments with Docker and Docker Compose across databases, CMS engines, and back-end services.
GIT Managed branching, history tracking, and rollback across collaborative and individual development cycles.
selected work

Projects

From a four-year coursework repository — each one links straight to the code.

Backend

Eventastic

Modular event management system with registration logic and scalable architecture.

Java · Spring Boot
View repo →
Web App

Room Rent

Full-stack student housing web platform with a responsive front-end and RESTful API integration.

JavaScript · HTML/CSS
View code →
Mobile App

Opportunistic Messenger

Native Android prototype for decentralized opportunistic network communication with dynamic node-state management.

Kotlin · Android SDK
View code →
Networking

Real-Time Chat UDP/TCP

Client-server messaging app: UDP for low-latency transmission, TCP for reliable file transfer, concurrency via pthreads and select().

C
View code →
Hardware

Digital Traffic Controller

Digital logic circuit simulated in Logisim, with algorithmic state machine control optimized via Karnaugh maps and D-type flip-flops.

Logisim · Boolean Logic
View code →
Algorithms

EDA 2 Collection

Data structures and algorithms repository: Edmonds-Karp max flow, dynamic programming, and BFS graph traversals.

C
View code →
Algorithmic Agent

Battleship OCaml Agent

Autonomous Battleship-playing agent using a deterministic attack strategy.

OCaml
View code →
Data Science

Brain Tumor Prediction

ML models (Decision Trees, SVM) trained on Kaggle datasets for automated medical diagnosis.

Python · Scikit-Learn
View code →
Low Level

Image De-noising

Low-level image processing: mean/median noise-reduction filters implemented directly in assembly.

RISC-V Assembly
View code →
Logic & Games

Guru & Ouri

Game logic implementations with custom dictionaries and state persistence.

Java · C
View code →