Hi there,
Welcome to my blog !

My name is Bartosz Konieczny and in a nutshell, I'm a:

Want to know more? Keep reading to discover the why/what/how of the blog!


I created the blog in 2014 with a few goals in mind. First of all, I wanted to keep all my notes and code snippets readable. Before the blog, I was maintaining my private knowledge base and well, its quality was not good. Very often I couldn't understand what the author (me from the past) wanted to say. By "opening" this knowledge, I wanted to force myself to write more understandable blog posts.

Some time after creating the blog, I found an interesting opinion (I can't retrieve the link anymore, sorry!), saying something like "if you can explain something to other people, it means you really understood it". That's the other reason for keeping this blog alive for several years right now.

Finally, I also wanted to give something back to the community. I remember when I started to learn data engineering back in 2015. There were a lot of blogs which helped me to learn the basics and go further on my own. I hope that somehow you are in the same position as me and need to shed some light on some concepts, and that the blog will help you in that!


When I started blogging, I mainly wrote about Java-related technologies, like Play Framework, Hibernate or Spring. It was my last breath with these technologies. I spent almost 6 years working with them and including the previous experience with PHP, I was solving web applications problems for nearly a decade! To change, initially I wanted to do the "sexiest job of the 21st century". In the beginning of this transition, I found that I had to learn Apache Spark MLib.

Unfortunately for "me at that time", before learning MLib, I had to learn Apache Spark SQL module. I didn't know it was more related to data engineering field. I had this data science title in mind. But after a few weeks spent on learning Apache Spark SQL, I saw how wonderful it was! Instead of continuing my data science exploration, I decided to switch to data engineering. And I had a chance. After a few months spent on exploring Apache Spark and Apache Kafka, and writing my very first pipelines with Scala, I got an opportunity to work on my first data engineering project! Lucky me, the project also involved cloud computing!

This project was my first real contact with data, cloud and distributed computing and believe me or not, after solving the first business problems, I knew that it was "the thing" I was looking for so badly!

And because I'm rather a curious person and knowing that I can't solve all data problems in my professional life, that's the reason why you can read here about data engineering and cloud computing.


In the first blog posts - the ones about the Java ecosystem - I was sharing code snippets but they were not very useful to support the textual content. Even worse, I didn't maintain them and hence, it was quite challenging to replay them by myself and other readers. That's why when I started to write about Apache Spark, I used the learning tests approach proposed by Robert C. Martin in his book "Clean Code". The learning tests illustrated much better the articles and thanks to the test assertions, I could easily replay them when needed to test other hypothesis and features.

However, I realized that using this single test-everything approach was limitary and was not convenient for some of the topics like streaming processing. That's why in 2020 I started to add more and more commented videos illustrating the described code snippets or features. And since I appreciate this method very much, I'm using it right now as often as possible.

Let's connect

I publish the blog posts regularly, twice a week, most often during the weekend. If you want to be aware of all the news related to the blog, you can follow me on Twitter, subscribe to the newsletter or like the blog on Facebook.

We can also connect on LinkedIn where every 2 weeks I publish a short summary of the published blog posts. You can also subscribe to my Github where you will find some code snippets used in the articles, or follow the YouTube channel.

If I can do anything for you, feel free to share it with me.

What else for you?

The blog is my side project, free of charge with - I hope - some valuable information for you! But writing takes time. Understanding the code or the concept, providing a demo or recording the video, I do all these in my spare time. Fortunately, I have unconditional support of my family! However I know I could to better on this field and that's why my long term goal is to get 1 or 2 extra days from the working week to work on the blog, and as a result, spend more time with the loved ones.

That's why aside from this free-of-charge blog, you can find my other commercial knowledge "products":

Why waitingforcode?

Let's end this page with the answer to the question "why waitingforcode.com ?" When I was thinking about the domain name for this blog, I was listening to my favorite playlist. Suddenly, a refrain repeating "waiting for" caught my attention. It was the fragment of Red Hot Chili Peppers song "By the way". Because "waiting for..." plays well with the leitmotif of this blog which is "learn theory and wait for the code proof", I decided to adopt it as the domain name.

Happy reading!