В частности, в январе 2013 года, когда все закрутилось и стало расти в геометрической прогрессии, нам пришлось перестроить всю систему, потому что она становилась все более запутанной. В частности, мы распределили все сервисы, чтобы в случае падения одного из сервисов не рухнула вся система.
В общем, мы убили кучу времени на то, чтобы перестроить код и перепланировать всю архитектуру. И вот тогда в наше поле зрения и попал Go, потому что это очень быстрый, новый язык, в котором много интересного. Думаю, это большая редкость — иметь идеальную тестовую площадку для таких вещей. А когда у тебя тысячи серверов, рассредоточенных по всему миру, Go очень естественно ложится в эту распределенную систему.
По сути, мы прошли через все муки роста, наша работа не ограничивалась созданием новых фишек и допиливанием продукта. Например, планирование выглядело следующим образом: мы оценивали свои масштабы, умножали их на десять и уже на эту цифру опирались, работая со своей архитектурой. И почти каждый раз, когда мы практиковали это «упражнение», Go вписывался идеально. К тому же люди, которым интересен Go, как правило, очень хорошие разработчики, и им интересны те проблемы, над которыми работаем мы. Благодаря этому мы смогли набрать большую команду отличных инженеров, готовую как поддерживать существующие продукты, так и делать новые.