about me
I've been programming since my early teens and I can't really stop :(
Since then, I've been using and enjoying Linux, which also made me love working on a terminal. Of course, I also root for well-built GUIs that provide value and ease of use to the entire team.
I've worked in software development (mostly web and desktop) and in devops roles, so I would be in my comfort zone working on these. However, what I'm really interested into, is taking on new challenges and working with awesome, skilled teams where I have a lot to learn and a lot to give! I believe in establishing a good company culture where knowledge sharing is the norm; and not using knowledge as a status symbol.
I'm Greek so I like sand even if it's coarse and rough and irritating and it gets everywhere. Also, souvlaki.
Gray is my favorite color because it reminds me that nothing is black or white; but mostly because I have a goofy gray cat.
Skills
Cloud experience
Libs / Frameworks
People
Editors
Experience
- Multi-cloud and multi-account network redesign and implementation using Transit Gateways and transitive routing, automated fully through IaC using best practices that vastly simplified the life of every employee, saving precious engineering time.
- Reimplementation of existing Terraform modules for AWS and creation of new ones, making setup and configuration of new environments a breeze, giving to the company the ability to make Agile decisions based on the needed infrastructure.
- Full implementation of PCI-DSS requirements at infrastructure level (encryption at rest / in transit, logging, alarms, policies etc) using IaC using all the required AWS services, ensuring successful audit results.
- Completely dynamic CI implementation for fast and iterative Terraform module development, making writing new modules and testing new technologies a fast and worry-free experience.
- Implement CI/CD processes using Gitlab CE and EE, including static code analysis, testing, image building and deployment using Ansible, empowering the developers to take full ownership of their projects.
- Automate the deployment and configuration / user management of the company's Bastion using idempotent Ansible, a key component to the security of our production systems.
- Create, administer and maintain various CentOS environments in AWS and Azure using Terraform, Jenkins and Docker Swarm.
- Implement and take ownership of serverless functions in AWS and Azure related to cost savings and production workloads in Python and Node.js.
- Build and maintain an HIDS using Wazuh, automating the Wazuh agent installation and configuration, including POC on Kubernetes deployment.
- Lead the developer team, managing people and developing software using test-driven development (TDD).
- Design and build a complex, horizontally scalable RESTful API using Node.js.
- Implement the main custom application-level algorithms for the resource availability, agnostic of resource type and resource characteristics.
- Build a RESTful API using Nest.js for analytics purposes and the booking assistant, the application which end-users book from as well as the largest part of the dashboard, using React.js.
- Transition the deployment to Kubernetes, with a staging and a production environment, IaC in GCP and a complex CI/CD pipeline within 2 months, cutting operational costs by over 40 percent and facilitating a faster, fully-automatic and less error prone release cycle, freeing valuable developer time.
- Full-stack implementation of multiple live-update systems based on WebSockets.
- Facilitate our Agile methodology as a Scrum Master, obtaining a deep understanding on the Agile culture and why there are certain practices around it.
- Unit, integration and e2e testing (using cypress), working with Node.js, Redis, MongoDB and PostgreSQL in the backend.
- Frontend development using React.js, Next.js and jQuery in the frontend.
- Modernized the processes of the company: from doing manual data entry and manual comparison using different and inconsistent excel files, the users could now do data entry in a friendly and dynamic web interface which I built. The app was fed all the excel files and could do powerful comparisons of the aggregations of the data between different years, and of course allowed entry of new data. The application freed several man-hours per day and as of September 2021 the application is still being used daily. The frontend was built in jQuery and the backend used CakePHP and MySQL.
- Generic IT support on Windows-based users.
Projects
Wallch![more information](info.svg)
A first C++ GUI experiment that made its way into the official Ubuntu repositories (2010); a wallpaper changer. A big learning project for a lot of things around building software. Built along with a classmate. C++ / Qt.
MalvaGallery![more information](info.svg)
A simple website built with CakePHP for my artist uncle. A learning project for web development which also features users and paintings management. PHP / CakePHP, MySQL.
University Department E-class![more information](info.svg)
An open e-class clone (https://www.openeclass.org/en/); a university project. Co-created along with another university student. PHP / CakePHP, MySQL.
NotiSIM![more information](info.svg)
NotiSIM will send an SMS message to a number of your preference when it detects that your SIM card has changed. That way you can easily get the phone number of the newly inserted SIM card, in case your phone is stolen. The application supports white-listing any number of SIM cards, so 2 or more people can use the same phone with different SIM cards. Note that the application runs only on boot for detecting SIM changes and thus it does not run constantly, draining your battery. Java, Android.
MacroPolo![more information](info.svg)
A python module that can be used in order to automate high-level processes (macros) Python 2 / Qt.
Anem![more information](info.svg)
A graph generator that combined the powers of C++, ImageMagick and rrdtool to generate graphs regarding the power output, wind direction and wind speed of wind turbines. This side-project is dating back to 2013 and it wasn't intended for production use but it ended up being used for years by Petrogaz (https://www.petrogaz.gr/en/). Sadly the project got discontinued. C++ / Qt.
python-digitalocean-ssh
A CLI-only python project aimed to make DO VMs easily accessible via ssh at any time. Python 3.
Awards
Bosch XDK Ideation Jam Winner
Aug 2016Our team's project was deemed to be the best on using Bosch's XDK in an internet of things application: https://bit.ly/2YZZ3xr
Awarded by BoschPapers
Cyber-Physical Microservices: An IoT-based Framework for Manufacturing Systems
Conference: 1st IEEE International Conference on Industrial Cyber-Physical Systems (ICPS 2018), Saint Petersburg, Russia, May 15-18, 2018.
Volunteering
- Helping users at the Ubuntu Forums
- Helping users at Ask Ubuntu
- Reporting posts at the Ubuntu Forums for their better functionality
- Bug Reporting at Launchpad and Gnome Bugzilla - testing beta applications
- Providing Assistance on IRC Chatrooms
- Proposing Ideas at Ubuntu Brainstorm
- Developing scripts and helpful programs for the Ubuntu Community
- Contributing at community wiki (https://bit.ly/3f0zGRI)
- Various open source contributions, like in terser (official webpack minifier) and CakePHP
- Team activities
- Creative learning
Made it till here? Here's my gray goofy cat!
![My goofy cat](goofy-cat.jpeg)
This website and my CV have both been built based on cv.json