David José Araújo Ferreira
Software Engineer
ABOUT ME
Passionate and deeply focused, I thrive in the ever-evolving world of technology. With a degree in Computer and Telematics Engineering from the University of Aveiro, I've expanded my horizons across various tech domains.
In 2022, I contributed to the FireTech project through an Undergraduate Student Research Scholarship, focusing on microcontroller network communication for wildfire detection. This experience solidified my commitment to leveraging technology for societal good.
Currently pursuing a Master's in Cybersecurity, I've secured a Graduate Research Scholarship in Cloud Native SDN controller development. Beyond academia, I channel my creativity into developing innovative systems and applications, drawing inspiration from real-world experiences as a volunteer firefighter.
TECHNOLOGIES
Go Python Java Javascript C Dart C# Rust Zig Bash MySQL MSSQL P4 Flutter VueJs ReactJs Git Linux Vagrant Kubernetes GNS3 Firebase Visual Studio Jira Database Architecture Networking (RIP, OSPF, BGP, MSBGP) TCP/IP Suite Distributed Systems Software Defined Networks
EXPERIENCE
Instituto de Telecomunicações - Scholarship for Undergraduate Researcher for the FireTec Project
NOV 2022 - JUN 2023
Instituto de Telecomunicações - Scholarship for Graduate Researcher for the Cloud Native SDN Controller Project
AGO 2023 - PRESENT
EDUCATION
Department of Electronics, Telecommunications, and Informatics, University of Aveiro - Integrated Masters in Computer and Telematics Engineering
BACHELOR’S DEGREE
SEP 2018 - JUN 2023
Department of Electronics, Telecommunications, and Informatics, University of Aveiro - Masters in Cybersecurity
MASTER’s DEGREE
SEP 2023 - PRESENT
PROJECTS
P4Sentry - Software Defined Networks monitoring system
OCT 2022 - PRESENT GITHUB REPOSITORY
- Build with P4, Grafana, Prometheus, Redis, MongoDB, and React.
- The goal was to develop a monitoring system capable of consulting network devices themselves and retrieving metrics specified by the user. This system needed to possess a dashboard for ease of configuration and metric visualization.
- Final grade: 19/20
SensorMesh - P2P distributed database feeder using IPFS
FEB 2023 - PRESENT GITHUB REPOSITORY
- Build with OrbitDB, IPFS, and Go.
- SensorMesh allows you to direct output from serial devices and internal services into a distributed peer-to-peer database on IPFS. SensorMesh is built as a layer of abstraction and service compatibility for OrbitDB. It is built in Go and uses the go-orbit-db module developed by the folks at Berty.
E-CHAP Authentication Mechanism - Source code development in Python
JAN 2022 - FEB 2022 GITHUB REPOSITORY
- College project for the subject of Security of Organization.
- In this project, we were asked to deliver an application that combines the advantageous characteristics of both a password manager as well as provides an E-CHAP authentication protocol that can communicate with any service that allows it.
- Final grade: 20/20
Deterministic RSA key generation - Deterministic RSA key generation. Implementation of a pseudo-random number generator and RSA key generator
NOV 2023 - JAN 2024 GITHUB REPOSITORY
- College project for the subject of Applied Cryptography.
- This project required the student to develop a pseudo-random number generator, provided a set of parameters. This can then be used to provide pseudo-random value to an RSA key generator, also created by the user.
- Final grade: 18/20
Enhanced DES - Implementation of a DES variant known as E-DES
OCT 2023 - NOV 2023 GITHUB REPOSITORY
- College project for the subject of Applied Cryptography.
- This project intends to take the underlying technologies of DES, like S-Boxes, where a complex, but deterministic method of shuffling them and encrypting data with these is possible by simply providing a password.
- Final grade: 17/20
MusicTrackSlicer - Distributed music processing using multiple workers communicating via MQTT.
MAY 2023 - JUN 2023 GITHUB REPOSITORY
- College project for the subject of Distributed Systems.
- A central server exposes a client GUI where a user can upload a music file, the server then splits the audio into segments of smaller size and publishes them to the MQTT channel. The workers subscribed to the channel, picked up the tracks, sliced them into the different instrument tracks and returned them to the server. The server then re-assembles the multiple slices and thus returns to the user the same music, but each instrument is now in an individual file.
- Final grade: 18.5/20
VOLUNTEERING
Secretary, Iniciativa Liberal Nucleus in Anadia - Liberal Political Party
SEP 2021 - PRESENT
Firefighter, Bombeiros Voluntários de Oliveira de Bairro - Disaster and Humanitarian Relief
NOV 2021 - PRESENT
Firefighter, Bombeiros Voluntários de Anadia - Disaster and Humanitarian Relief
NOV 2017 - OCT 2021
LANGUAGES
Portuguese
Native speaker
English
Fluent / Full professional proficiency