Sign in

API Development Lead, currently @ Vodafone GR. Past: Lead Dev @ Intrasoft Intl, and more. Crafting apps & web services since 2007.

It surprises me when some choose not to.

Male sitting in upscale office on laptop
Photo by Crew on Unsplash

First of all, let me begin with three clarifications:

  1. This article is not one of those “you will succeed if you do what you like” articles.
  2. It is not one of those “engineers are indispensable, managers are not” articles, either.
  3. Both of the above statements are false, by the way.

“So what‘s your routine”?

I was in a gathering a while back, having drinks with some old friends of mine. Among my friends, there was a new guy there, whom I had met for the first time. Let’s call him John. John is a software developer, and he seems to adore programming. And his…

We should talk more about those things

Photo by Hunters Race on Unsplash

Sometimes, I wish someone took the time to have a chat with my younger self and give me some advice acquired with experience and practice. But, unfortunately, I had to figure some things out on my own.

The following is an (undoubtedly non-exhaustive, and in no particular order) list of professional advice that I wish someone had given me before I began my professional journey.

Open up about what you are currently doing during your work.

Don’t miss the good help and advice from your colleagues

I had the habit of keeping the code from other’s eyes until I deemed it ready to be seen. Then, of course, I was always…

My new obsession is eating up my wallet fast — but I like it.

“Every human being has their drug,” my father once told me. “So it’s only a matter of time before they find out what this is.”

I thought I was immune to this — I’m well-above my thirties, and — apart from a hobby that became a profession — I never had a material hobby.

In 2020, I started making optimizations to my desk. Since I was locked in my house doing remote work, I had to make some changes to my daily work. …

A trip through popular 3D frameworks for creative purposes.

Photo by Kristen MacAdams on Unsplash

If you are like me, nothing is giving you more pleasure than to write or design software. The sheer amount of joy I take when coding something has led me to develop projects spanned across many software domains.

One of those domains is 3D graphics creation for Native Applications, desktop showcases, or the Web. I have never created any 3D games, but there are many times where I needed to create a 3D physics simulation or present a 3D scene in response to a stream of data received as input.

Something that no one had warned me about before I…

Building a simple app with this excellent alternative to Redux

For the past 6 years, React has been my go-to solution for developing web interfaces. Its concepts are simple to grasp, and I also love how it allows me to build my own stack around it to build the frontend interface I need specifically adapted to each use case.

That flexibility comes at a cost, however — there are so many choices to cover each aspect of an application that it’s impossible to start experimenting with all of them to figure out what is the most suitable technology for a website.

State Management solutions for React

Nowadays, frontend web applications behave more like desktop applications…

or — how to be one

Photo by Headway on Unsplash

Whether you realize it or not, you have certainly met some of them — or you may be one of them. I’m talking about people who believe to be sound software engineers, but their way of working leaves the rest of us a bit nervous, trying to find ways to avoid working with them.

It is true that some people indeed need time to develop professional skills and attitudes, and that’s normal. However, some will remain where they are in terms of skills forever — their bad focus and attitude habits will make sure of that. …

Effortlessly customising strapi’s file uploaded to your needs.

For the past two years, strapi has been my go-to choice when I needed to design restful APIs for content pre-packaged with a nice UI to perform data entry. Most of my clients’ content-oriented sites are build with strapi as the content source and different technologies for data retrieval (Quarkus or Nest.js).

One of the features that strapi comes out of the box with, is static file uploading. Strapi comes prepackaged with a module to allow file uploading to the local disk. If you are deploying in the cloud, however, you will most probably need to upload your static files.

The grandfather of the FPS genre is still alive today

The original doom cover… modernized

Even if you invest a small fraction of your time in gaming, you will surely have heard about Doom, released in 2016. The truth is that Doom is a game initially released in 1993 by ID software, and is considered to be the grandfather of the First Person Shooter Genre.

Let’s take a short trip into its history, its evolution throughout the years (yes, it has evolved) and its community. We will also look at some of the community’s creations and how they shaped today’s industry.

I remember playing this a long time ago when it first came out. I…

Working with extensive data and solving back-pressuring issues with the help of Node’s streams

I had the chance to work on a project involving some large files filled with data, and for many parts of the implementation, I had to use NodeJS for various reasons. One of the most common issues I was forced to tackle was how to download and parse a file containing a few millions of entries (around 500Mbytes) and then perform operations based on the content. Since the files were very big, I had to stream parts of the file in RAM and perform asynchronous operations in chunks.

I was stunned to see that so few resources existed on how…

What is it, why you should care, and how to apply it using Quarkus.

Photo by Shahadat Rahman on Unsplash

While working on a cluster comprised of microservices, you will most likely find yourself retrieving information from external providers (web services residing outside of your cluster, for example). Or you may have spotted some cases where your microservices are struggling to cope with a substantial spike in network traffic and that this struggle is propagated across all of your microservices.

What you have identified such technical issues, it’s time to think about fault tolerance mechanics, and how to apply them correctly for your use case.

But what is Fault Tolerance?

According to Wikipedia:

Fault tolerance is the property that enables…

Christos Sotiriou

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store