What have Demons and flaky Tests in common? I think a lot. Demons haunt you while you are living your life. They also corrupting the soul of their targets. Ok, maybe I exaggerated just a bit. Still if you think more deeply about this comparison, there is a grain of truth in it. Corrupting Tests are haunting you while you do your work: Just imagine following scenario: You modify some code and wait for the tests to finish and then out of a sudden there are test fails. Yikes. Ok, alright. Probably you did some mistakes while refactoring or you...
[Read More]
How We Made Our Spring Boot Applications More Robust with Redis Cache and Spring AOP
Do you know that feeling? You have a webservice dependency which is not having the best uptime? My team at work certainly has, and thought that it was time for a change. This whole article is written as a tutorial. You can find the code on the GitHub Repository. Status Quo and Evolution: Quick Chart of the Interaction from Frontend to Backend As depicted in this chart, we are having an Android and an iOS app which access our backend services. Exemplary for our total backend, I have drawn one service. As you can see it is already using Redis...
[Read More]
The 4 Most Important Things Every Programmer Should Be Aware of
A lot of things you need to know as a Software developer depend on the technologies you work with. This should be a general article and therefore it shouldn’t get into too much detail about language or technology specific things. Depending on what you are currently working on or with, there might be quite some different factors. But let’s talk about the general points which I found helpful in the past: Knowledge of a Low Level Language with Manual Memory Allocation I have done this during my apprenticeship: I learned C. Yes, C without ++. There we learned a lot...
[Read More]
Year++ - A Software Engineer’s New Year’s Resolutions
The time between Christmas and New Year’s Eve is always a time for me which I use to reflect a lot upon myself. It is a tranquil time of the year where I reason about the good, the bad and the ugly of the last year and what I want to achieve in the next year. So what is better than writing an own list of New Year’s Resolutions. 2018: The ugly: To make it short: I did not look after my physical health. My weekends were often spent thinking about production and whether it will break because of external...
[Read More]
Why I passed on a 55% higher salary
Not sure if I am writing this article for the broader public or only myself. I guess at least this could be a fun read for myself in about a year or so. During the last few months I got a few suggestive comments from a few people that they are actively hiring. Due to the company having salaries defined in a collective agreement, I was quite aware of what kind of money we were talking back then. Between the years I now got an actual offer from an old colleague of mine which I ran into just before Christmas....
[Read More]
Why Runtime Dependencies are *****ing you over and over again
... and why you are to blame
Preword: This article is about failing runtime dependencies mostly in form of external (Web)API calls.
During the last weeks at work, I had to learn this the hard way:
Dependencies are screwing you over and over again.
You may ask “why?” and for the reasons causing my bitter sentiment. In
[Read More]
Code Review Best Practices
At work, we are using Code Reviews. Everybody knows what a Code Review is, everybody does them (at least I hope you all do).
If you spent some time to talk with people about Code Reviews, everybody has its own opinion on
[Read More]
Best Text Editor For Programming
Over the last years I often switched Text Editors. I think this choice is really much personal and can change over time. In this article I want to showcase the Best Text Editors for Programming
[Read More]