Scrum-ban applied
This is a story about a Team working in Scrum that wanted to turn to Kanban and ended up, deliberately, working in something resembling Scrum-ban. Scrum-ban basics can be found in Wikipedia. We did not...
View ArticleComparison of WebDriver-based solutions for test automation
Today, in an age of great popularity of test automation, we can observe a growing number of different frameworks which allow us to write scripts and programs that simulate human actions performed on...
View ArticleThere is more to logging than meets the eye
In this article I will show you that if you want to implement good logging into your application then you should have a strong knowledge of logging API, spend some time considering what and when to log...
View ArticleMini rant: gambling at work
I certainly do not recommend that you play poker or blackjack at work. However, there are situations where both you as an individual and your company as a whole must gamble. And the stakes are often...
View ArticleReal-time Web Application with Websockets and Vert.x
At Allegro, you can sell items at a fixed price (buy now) or at auction. Auctions are still a popular sales format, especially in categories such as antiques and art or clothing. So far, buyers...
View ArticleAgile Teams — where to start?
Whether you are forming a new agile team or mixing people in an already existing team you start somewhat afresh. In an existing team the balance and group dynamics changes, in a new team people are...
View ArticleLet your tests tell a story
In the team that develops Allegro Recommendation Platform we weren’t happy with our integration tests. Long setup and assertions blocks resulted in a low signal—to—noise ratio and poor readability....
View ArticleMini rant: V for Viable
Building a Minimum Viable Product (MVP) is a method of developing new products by validating hypotheses using feedback from real users as soon as possible. This is supposed to reduce risk and to ensure...
View ArticleMicroservices and macro mistakes
Microservices architecture has been given a lot of attention in recent years. You can find many articles defining what it is and explaining the difference between microservices and monolithic...
View ArticleThe great adventure of migrating Allegro infrastructure to new Data Center - DC5
Moving Allegro’s services and infrastructure from its main Data Center (DC) was considered a huge endeavour fraught with high risk from the very start. This particular Data Center, known as DC2, was...
View ArticleBooks you should read: The Pragmatic Programmer
Some books on IT topics become outdated right after they are published while others stand the test of time. One of the latter is The Pragmatic Programmer. From Journeyman to Master by Andrew Hunt and...
View ArticleIntegrating Android project with Codecov
If you always search for ways to increase code quality and would like to encourage everyone in your project to keep high test code coverage all the time, then Codecov may be another step in your...
View ArticleManaging Frontend in the Microservices Architecture
Microservices are now the mainstream approach for scalable systems architecture. There is little controversy when we are talking about designing backend services. Well-behaved backend microservice...
View ArticleProfessional approach pays off
This is a story about how professional approach to coding can save you a lot of troubles. It is a story about passion for coding and how it makes our products great. It is a story about carrying out an...
View ArticleManaging environment inspired by Spotify
Curiosity drives progress. There are already tens of presentations about Spotify on the Internet but we wanted to see how the work looks like there with our own eyes. Here are some thoughts after our...
View ArticleMinimum Viable Product – already a cliché or a misunderstood concept?
In the beginning I would like to stress that this is not yet another article about Minimum Viable Product (MVP) mechanics. For theory and examples of its use in practice, please refer to the great...
View ArticleWriting a very fast cache service with millions of entries in Go
Recently our team has been tasked to write a very fast cache service. The goal was pretty clear but possible to achieve in many ways. Finally we decided to try something new and implement the service...
View ArticleMeet Retrofit2
In this post I will introduce to you a recently released version of a well known library for consuming RESTful services — Retrofit2. Even though it is mainly targeted at Android platform it works very...
View ArticleKotlin null safety and its performance considerations -- part 1
Kotlin may seem like a new kid on the block – itʼs been officially released only in February. Its history however dates a few years back and itʼs mature and stable enough to be used for developing...
View ArticleThe iOS bug chase
This article tells a story of chasing an iOS bug – a bug hidden so deep that it required many different skills and debugging on different levels to identify it. I think every native mobile app...
View Article