Hey there, I'm

DIOGO SILVA

Scroll down

Something about myself

I am Diogo Silva, a 32 years old Portuguese Software Engineer. I have studied in Computer and Telematics Engineering at the University of Aveiro and I am an enthusiastic for technology. Every time that I get some free time, I just make sure to spend that time exploring something new. I think it is important to keep up with the technology.

Lately I have grown a passion for complex and different software architecture, I like to understand how they were built and thought. The kind of patterns used, how is the data managed, which frameworks and libraries are being used, how is the integration done with external tools, etc.

Along with my studies, I have had a research scholarship twice, one in the IEETA (Institute of Electronics and Informatics Engineering of Aveiro) for one year and the other one in ATNoG (Aveiro Telecommunications and Networking Group) inside of Telecommunications Institute for another year. That gave me the chance of being introduced to the researching area in my campus where I could learn a bit more and get some experience. I do not regret getting involved in those scholarships, since I had the opportunity to interact with professionals of my area and work with them.

Story about my journey

Experience

Satcom International
Senior Software Development Engineer, October 2022 - Current
Full Remote from Lausanne, Switzerland
Worked in several fronts across the Loxy project:
  • Replaced an old authentication system with Keycloak:
    • Fully configurated frontend and backend to communicate with the IAM;
    • Featured with multi-tenancy and custom login flow to select the tenant;
    • Internal IDP with custom OpenID connect to deal with particular requirements rather than just social logins;
    • Automatic migration of the users and tenants.
  • Created a service for geocoding services from different providers:
    • Used S2 Geometry to optimize workflow;
    • Ability to swap providers for each tenant.
  • Responsible for the communication between hardware and software team;
  • Optimized most of the low-level flow related with storing and retrieval of positions, such as reporting;
  • Contributed to several aspects in the company workflow, such as: process to deal with new features / requests from clients; process to deal with incoming bug reports; suggestion of tooling for several scenarios;
  • Participated in the technical interview for recruiting developers;
Tech Stack: Java 11 / 17, Spring Boot, Spring WebFlux, Redis, Kafka, PostgreSQL, Kubernetes, Keycloak / Zitadel, Git
SOPHiA Genetics
Senior Software Development Engineer, July 2022 - October 2022
Software Development Engineer II, January 2022 - July 2022
Software Development Engineer I, January 2021 - December 2021
Lausanne, Switzerland
Worked across multiple projects:
  • The main project is part of changing the current architecture from monolith (which is the second projct) to microservices, where I am responsible for maintaining and developing some of these microservices (started creating them from zero);
  • The secondary project is the one the products mainly used that we are responsible to maintain.
Tech Stack: (Main project) Java, Micronaut, GraphQL, Kafka, Kubernetes, Gitlab CI/CD, Reckoner, Git (Secondary project) Java, Spring, JavaFX, Tomcat, Bamboo, Docker, Git
AKKA Technologies
Software Engineer, April 2018 - December 2020
Wolfsburg, Germany
Developed 3 software solutions for 2 different clients for Volkswagen AG:
  • On the main project, provided oversight to five-person team, discussed roadblocks and promoted use of good practices. The project was developed with Spring and Angular and deployed under OpenStack;
  • GUI used to control devices over CAN with MATLAB integration using C++ and QT;
  • Small project using Python and QT to control devices over UART.
Tech Stack: (Main project) Java, Spring, Angular, MySQL, MongoDB, Docker, OpenStack, Shell, DNS, Tomcat, Jenkins, Git; (Side projects) C++, QT, MATLAB, Boost, Python, CAN, UART, Git
VLC Media Player
Google Summer of Code Student, June 2017 - August 2017
Remote
This work had the aim of integrating libcloudstorage into VLC. The library libcloudstorage provides access to files located in cloud storage services, such as Google Drive or Dropbox. That said, the user is able to access any media directly from cloud services (as long as libcloudstorage supports it) and reproduce it using VLC. Most of the code developed was written in C/C++. Google Summer of Code is not considered a job or an internship, it is a 3-month program that brings Open Source organizations closer to university students interested in collaborating.
Feel free to check more details about this work in the following link: summerofcode.withgoogle.com/projects/#5357504761430016
Tech Stack: C/C++, Cloud Storage APIs, HTTP request / server internal implementation
Instituto de Telecomunicações
Research Scholarship, April 2015 - March 2016
IT, Aveiro, Portugal
an IoT solution to collect data in an agriculture field and send it to a specific server. The solution consisted of configuring several Libelium boards responsible for collecting sensorial data and send it to a Raspberry. That raspberry was equipped with XBee radio to communicate with the Libelium boards and it was also responsible for publishing the received data to a remote server using MQTT protocol. It also included a configuration / image processing of an infrared camera to scan the agriculture field with a drone to collect data from time-to-time. During this work, a system to display the data was also implemented using AngularJS (front-end) and Django (services).
Tech Stack: Python, C/C++, OpenCV, LoRa, XBee, Raspberry, Libelium, MQTT, Django, AngularJS
Instituto de Electrónica e Telecomunicações de Aveiro
Research Scholarship, April 2014 - March 2015
IEETA, Aveiro, Portugal
Worked on medical image representation (import raw data) and improved voice recognition (provided by Web Speech API Specification) with a system that allowed to have specific recognition profiles for different doctors. This system was done with Django on the backend and AngularJS on the frontend.
Tech Stack: Python, AngularJS, Web Speech API, Django

Education

Computer and Telematics Engineering
Bachelor and Master's degree, September 2013 - December 2017
University of Aveiro, Portugal
Changing to this course was definitely one of my best decisions in my path, I deeply enjoyed each of the classes that I had through the entire course. This course aims to offer a solid training in a wide range of options in the technologies of computing, information and telecommunications which have assumed a dominant role. That wide range of options includes computer archicture, telecommunications, computer vision, data analysis, services, security, distributed systems and so on. Along with the course, I got invited for some research scholarships which helped even more that knowledge that I was obtaining each year.
Electronic Engineering and Telecommunications
Bachelor and Master's degree, September 2010 - October 2013
University of Aveiro, Portugal
After I finished high school, I decided to pursue a broad area in electronics. During the first year we had the typical classes that are common across engineering courses, such as physics, maths, algebra, and programming. In the second year, we started getting more involved into electronics with circuit analysis, electromagnetic fields, telecommunications and computer architecture. Even though I was managing to pass the classes, I noticed that I was enjoying much more software related classes rather than hardware. So after the 3rd year in this course, I changed to Computer and Telematics Engineering. Even though I had almost the equivalent to the bachelor, I felt it was pointless considering that I had another course in the same department that I really enjoyed.

Some of my doings

I have included a list of what I have been doing, such as volunteering, works and competitions in which I have participated.
These were the ones that I decided to highlight and add a small description to it, feel free to take a look. I still have a big interest for anything that is related to any of the topics below.


image

Flexible Distributed Blackboard

image

Cloudstorage Integration

image

Real-Time Tower Defense

image

Car Detection and Tracking

image

TORCS Bot

image

Maze Solver Robotics

image

Line Follower Robotics

image

Mentoring Program (PT-UA)

image

Security IECDS

image

GNS3 Cisco ISP

image

CiberRato Online Project

image

GNS3 Cisco Company

image

Database Event Manager

image

Distributed System

image

Google Hashcode

image

Custom Filesystem

image

Chess OpenGL

image

MicroRato Robotics

image

IEEExtreme

image

Bison and Flex

image

Let Me Control Project

image

Campus4US

image

Tetris Kinect

image

CNC PmatE

Get in touch!