How I got fired and learned the importance of communication and play time

When I came to the office one late autumn morning in 2005, I have been shocked to find out that – without any warning signs whatsoever – I hd been fired. That day I have learned the importance of communication. Their criticism was justified but the thing is, nobody bothered to tell me anything duringContinue reading “How I got fired and learned the importance of communication and play time”

A Costly Failure to Design for Performance and Robustness

I have learned that it is costly to not prioritise expressing one’s design concerns and ideas early. As a result, we have a shopping cart that is noticeably slow, goes down whenever the backend experiences problems, and is a potential performance bottleneck. Let’s have a look at the problem, the actual and my ideal designs,Continue reading “A Costly Failure to Design for Performance and Robustness”

Troubleshooting And Improving HTTPS/TLS Connection Performance

Our team has struggled with slow calls to the back-end, resulting in unpleasant, user-perceivable delays. While a direct (HTTP) call to a backend REST service took around 50ms, our median time was around 300ms (while using HTTPS and a proxy between us and the service). We have just decreased that time to median of 80msContinue reading “Troubleshooting And Improving HTTPS/TLS Connection Performance”

Upgrade or not to upgrade dependencies? The eternal dilemma

Cross-posted from TeliaSonera Tech blog. Handling dependencies is one of important challenges in any software project – and especially in the fast-moving JavaScript world. Our Nettbutikk team just had a heated discussion about handling upgrades of our dependencies that continuous our learning journey lined with failures (or rather “experiments that generated new knowledge” :-)). FailedContinue reading “Upgrade or not to upgrade dependencies? The eternal dilemma”

The Invisible Benefits Of Pair-Programming: Avoiding Wasteful Coding Excursions

There has been recently an article about how bad, expensive, and wasteful pair-programming is, since you need double as many developers. It used lines of code (LoC) produced per hour as the main metric. As many have commented, LoC is not the best measure, actually just the opposite, as I want to demonstrate on myContinue reading “The Invisible Benefits Of Pair-Programming: Avoiding Wasteful Coding Excursions”

Ignore requirements to gain flexibility, value, insights! The power of why

I would like to share an eye-opening experience I have recently made. I have learned that if we do not just passively accept the requirements given to us but carefuly analyse the reasons behind them (and the reasons behind the reasons), we gain incredible power and flexibility. By understanding the real value behind it andContinue reading “Ignore requirements to gain flexibility, value, insights! The power of why”