Szymon Stepniak

Groovista, Upwork's Top Rated freelancer, Toruń Java User Group founder, open source contributor, Stack Overflow addict, bedroom guitar player. I walk through e.printStackTrace() so you don't have to.

Hi there! I'm Szymon Stepniak, the author of this blog.

Here are a few facts about me:

  • I have been working as a software developer since 2007
  • I live in Toruń, Poland
  • I'm a freelancer since 2014
  • I'm a founder of Toruń Java User Group
  • I have been running this blog since 2017
  • I create YouTube videos
  • I collected 28,023 reputation points on Stack Overflow
  • My type of personality is "Assertive Logistician" (ISTJ-A)
  • I'm an avid book reader

Who am I?

I'm a pragmatic problem solver. I have been working inside the Java and Groovy ecosystem since 2012, but I don't identify myself from a specific programming language, framework, or other technology perspectives. I prefer to choose the right tool to solve a particular problem instead. Sometimes you may find me coding in Java, Groovy, Bash, or even Haskell. Back in September 2014, I decided to make a career shift, and I became a full-time freelancer. It was one of the most important decisions I made career-wise. It opened new opportunities, like working (remotely) with startups around the globe or eventually joining Upwork.com in April 2017 to lead the continuous delivery transformation at the organization level.

Even though I'm 74% introvert, I believe in the power of community collaboration. That is why I started Toruń Java User Group in February 2014 - a community that keeps connecting and growing up to this day. Aside from this blog, I also run a YouTube channel where I publish video tutorials on a weekly basis. You can also find me on Stack Overflow, where I regularly try to answer questions tagged with groovy or jenkins-pipeline, to name just these two.

What is my blog about?

I use this blog to publish problem-solution types of articles to both - share my experience and knowledge with you and improve my learning skills by synthesizing thoughts. Whenever I sit down to write a new blog post, I start with "why?" question, and then I try to explain, step-by-step, how to solve this specific problem. My goal is not only to give you the answer but also to make all I can to clarify:

  • what is the root cause,
  • what potentially may go wrong,
  • how to prevent the problem from happening again,
  • and what we can learn more from this experience.

Here you can find a cloud of topics I already wrote about:

affiliate annotation async benchmark blog blogging book career cicd conference curl devops docker git github gr8conf graalvm grape groovy groovy-3 haskell http java java-8 jenkins jenkins-pipeline jmh json junit learning maven metaprogramming micronaut native-image non-blocking programming ratpack reactive-programming reading recursion report rest review rxjava sdkman session spock stackoverflow string unit-test

Let's stay in touch!

I will be more than happy to hear your feedback!

Feel free to reach out at any time. My e-mail address is [email protected].

If you use Twitter, please say "Hi!", so know that someone read this page up to this point

If you use LinkedIn, we can connect there as well. Just let me know that you're coming from the blog, so I know that you are not a random person that connects with everyone.

I also encourage you to subscribe to my newsletter so that we can connect via e-mail. I send only (bi-)weekly newsletter with interesting updates and news. No spam, I promise. You can unsubscribe at any time if you don't get any value from it.