About Me

I am a Full-Stack Software Engineer with four years of experience in web development for a SaaS Engineering Application. I have a Master’s degree in Electrical and Computer Engineering, and I am proficient in PHP, JavaScript, Laravel, Vue.js, Three.js, C++, Python, Django and Tensorflow. I am passionate about Software Engineering, Hardware Engineering and Deep Learning, and I have done several creative and technical projects. I am interested in exploring new domains and technologies, where I can apply my skills and knowledge to solve complex and impactful problems.

Projects Involved



3 Example Images of The Cloud Software's 3D Visualization Mechanism Showing Several Complex Vessels' Animation Scenes

vClavis

vClavis is a cloud based software for the design and analysis of pressure vessels (a powerful tool for designing pressure vessels with a very broad field of application). This software is a competitor to other similar software solutions such as VVD and PVElite.

As the lead developer of the web application for Pressure Vessel Analysis & Design, I have achieved the following:

  • Head a project and help with the onboarding of new members

  • Develop core functionalities for software requiring complex algorithmic procedures and strong problem-solving skills

  • Extensive experience in the usage of Laravel Framework in PHP and Vue in Javascript

  • Work with database communication using MySQL and Laravel's ORM

  • Experience using unit and feature testing for verification in PHP

  • Utilize Docker to automate environment of PDF LaTeX report extraction.

  • Implemented the three-dimensional visualization mechanism of this project using the Library Three.js in Javascript


3D Drive

3D Drive is a simple 3D Game that implements a Simulation of a Vehicle with basic steering and driveshaft physics developed in Javascript using the graphics library Three.js

Some features I have worked on in this project are:

  • Implementation of Ackerman steering for determination of the vehicle’s wheels’ angular position and proper animation of the vehicle rotation around an axis

  • Simulation of conservation of angular momentum between connection of engine and driveshaft using an additionally implemented clutch connection and a gearbox

  • Random map generation with simplified buildings and roads

Image of the Game's Gameplay

Links: Demo, Github


Preview of the system's operation with how the device is turned on, how the readings are transfered to the front-end with websockets and a test on increasing the sensor's pressure reading in real time. In this demonstration the IoT device (TTGO T-Display ESP32) is connected to the same network the Server runs locally with WiFi

Preview of the system's operation with: how the device is turned on, how the readings are transfered to the front-end with websockets and a test on increasing the sensor's pressure reading in real time. In this demonstration the IoT device (TTGO T-Display ESP32) is connected to the same network the Server runs locally with WiFi.

Remote Farming Management

Remote Farming Management is a system for the remote control of IoT devices and the monitoring of sensors intergrated on the IoT devices. The Backend and Frontend are implemented in Laravel and VueJS and the device's code in C++ and Arduino.

Some features I have worked on in this project are:

  • Implemented front-end for remotely switching on-off an IoT device and the visualisation of analog sensor readings

  • Developed API for the communication of the device with a server

  • Utilised websockets for real-time updates of IoT device analog sensor readings

  • Worked with scheduled events such as an automatic IoT device turn-off after a specified amount of time

 

My Diploma Thesis

Image of the Procedure from which a Spectrogram is Extracted

Image of the Spectrogram's final form which is inputed to the 2D Convolutional Neural Network

Image of the form of the Multi-Input Multi-Output 2D Convolutional Neural Network

Soil Property Prediction Using 2D Convolutional Neural Networks and Deep Learning Techniques

Artificial Intelligence is becoming more and more a part of our daily life, offering convenient alternatives totime consuming and human resource demanding processes, or providing a helping hand for their conduction. An area of appliance for artificial intelligence that is rapidly growing is soil spectroscopy, aiming tominimize the work that is required to determine the characteristics of variant soil matters. A mechanism that could predict these soil characteristics accurately using only the spectral signature of specific soil is certain to provide a considerable option over tremendous amount of work. This diploma thesis regards a procedure of soil property prediction as an extend of existing implementations on the matter, using two-dimensional convolutional neural networks. Due to the complexity that arises with the application of models of such architecture, it is attempted to increase the efficiency of the whole prediction model, by minimizing parameters that affect the size of the neural network while maintaining it's performance as high as implementable. The implementation is done in Python using the libraries Tensorflow - Keras. The conducted tests are made with the help of the Aristotle University of Thessaloniki's High Performance Computing cluster.

In my diploma thesis I have:

  • Worked with a dataset of 18000 samples

  • Used Python with the machine learning Tensorflow Library in combination with the Keras API for deep learning

  • Preprocessed data using the Savitzky-Golay filter

  • Extracted features of interest for training the models using spectrogram

  • Optimised parameters of various deep learning models

  • Experimented with multiple-inputs/multiple-outputs models