Spicing up your app’s performance - a simple recipe for GC tuning
The garbage collector is a complex piece of machinery that can be difficult to tune. Not surprisingly, many developers dread touching the GC. If you don’t give the GC just a little bit of care, your whole application might be running suboptimal. This blog post shows how we got two production applications to perform better by following simple tuning steps.
Coroutine Gotchas - Bridging the Gap between Coroutine and Non-Coroutine Worlds
Coroutines are a wonderful way of writing asynchronous, non-blocking code in Kotlin. Think of them as lightweight threads, because that’s exactly what they are. Lightweight threads aim to reduce context switching, a relatively expensive operation. Moreover, you can easily suspend and cancel them anytime. Sounds great, right?
At bol.com we like our teams to be autonomous when it comes to implementing solutions to help our customers. However if people are completely free to do whatever they want to reach a team goal we might end up in the bottom right corner of the picture due to lack of direction. We like to be in the upper right corner where there’s both freedom and alignment. The other parts of the diagram are of course less desirable for our software engineers and data scientists.
Forecasting demand at bol.com during the COVID-19 pandemic
The COVID-19 pandemic has affected millions of people around the world and in very different ways. While governments and health organisations seek to find solutions to this global humanitarian crisis, online retailers have been put to the test of how well they can serve their customers’ needs during these challenging times. Being part of bol.com’s Forecasting Team brought these challenges closer to home, and not only because of the working from home situation.
In a series of videos, we would like to showcase how Data Science is helping us at bol, our partners, and our customers.
Hear the way the DS craft is utilized within the company in various parts of the company by the corresponding product teams/owner themselves!
They know best the impact and the improvements of incorporating the discipline in their own products.
How to prevent common performance defects with the jPinpoint PMD rules
Prevention is better than cure - a fundamental principle of health care that also applies to modern software development. The later a bug surfaces, the more effort it takes to repair. From our own experience we know that this especially applies to performance bugs.