A/B testing of geodata in booking.com – slides

I presented this talk on the ItNonStop conference in Wrocław, on November 18th, 2017.

I explained what A/B testing is and how do we in Booking.com apply it to our location-related information, such as location of museums, landmarks, beach, shopping malls, or historical areas.

Continue reading “A/B testing of geodata in booking.com – slides”

Top Questions Every Candidate Should Ask on An Interview

How to understand if this company is a good fit for you? Why, ask them questions, of course!

I’ve been on both sides of interviewing for a while now. As a candidate – for 9 years, and as an interviewer – for 90 interviews. (What a beautiful round number!)

So I decided to write down questions which I usually ask the company when considering their position.

Continue reading “Top Questions Every Candidate Should Ask on An Interview”

What’s Common Between Opera Houses And Software Projects, or 10 Reasons Software Developers Go Overtime

What’s common between software and opera houses? Building of both often goes overtime. Read on to know why and what should you do about it, as a client or as a developer.

Many software projects go overtime. Software developers get blamed for that, laughed at, scorned at.

But guess what: it’s not only software developers.

Many building projects also go overtime, and most noticeably of all, perhaps, opera houses and concert halls.

Continue reading “What’s Common Between Opera Houses And Software Projects, or 10 Reasons Software Developers Go Overtime”

How I Hired Freelancers Who Went Way Over The Deadline

You know how the software developers are always mocked because they don’t comply with the time limits? Read this article about my experience of hiring a team of freelancers who went way over the deadline.

Not so long ago I hired a team of freelancers to work on a project of mine.

Everything started as it usually starts. I found several teams, some through friends and some – through a website. I met with team leaders, we discussed my requirements, we agreed on time and on a budget. I picked the team that looked the most reliable to me, they rolled up their sleeves and started to work.

Continue reading “How I Hired Freelancers Who Went Way Over The Deadline”

Modularization and dependency management: three steps to better code

If you ask me, what’s a single most important thing in writing good code, I’d reply: “Modularization and Dependency Management”.

Well, actually, that’s two things. Sorry about that! But they are two sides of the same coin, and you can’t have one without the other, if you want to your code to be nice and clean.

Continue reading “Modularization and dependency management: three steps to better code”

Prioritization for Perfectionists, or: How I Learned to Stop Worrying and Love the Non-Perfection

Are you a perfectionist? That kind of a person that can never say “I’m done”, “it’s ready” or “let’s ship it”? The one who can’t release the new feature unless it’s polished and perfect?

Continue reading “Prioritization for Perfectionists, or: How I Learned to Stop Worrying and Love the Non-Perfection”

Word Cloud: 300 000 users and their reviews

Since the first time when I managed to get users for my WordCloud app, some time has passed. Now it has 300 000 users – three hundred thousand users in three months.

The number amazes me. It seems almost unbelievable! I honestly never imagined having more than 10 000 users. It’s incredible.

Daily downloads graph - currently the average is 4000 downloads per day.
Daily downloads graph – currently the average is 4000 downloads per day.

And users are not just using the app silently. Oh, no! They leave reviews, they have problems, and they complain about everything. But sometimes – more often than not – they make compliments, and share their work, and they are grateful. And this is the most interesting and rewarding part of working on something!

Here I want to share some nice and interesting things users asked me or shared with me.

Continue reading “Word Cloud: 300 000 users and their reviews”

How we checked road graph correctness

How to make the roads better?
What about roads on a map?
Read to learn what graph (and non-graph) algorithms we implemented to make the roads good.

One particularly nasty and cold day, in the middle of February, our users, cartographers, came to visit us, developers. And they looked worried.

We offered them hot tea and chocolate candy. By gentle nudging and careful questioning we managed to understand what was bothering them.

They wanted the roads to be good.

Continue reading “How we checked road graph correctness”

The most interesting thing is “why”, not “what”

When I read an article or a book about architecture, framework, approach, or tool – I focus on “why” it was built or applied one way or another. Not “what” they did, not “how exactly” they applied it – but “why”. Read here to know “why” I think it’s important.

What interests you when you read an article or a book about an architecture of some big system, or about new frameworks, or design patterns, or some new fancy tools?

To me, the most interesting thing is why they did it like they describe.

Continue reading “The most interesting thing is “why”, not “what””