Не так давно у нас в корпоративном чате развернулась баталия по поводу бумажных книг и книг вообще. Оказалось, что, несмотря на популярность блогов и обучающих видео, любителей полистать хорошую книгу на читалке, или даже в бумаге, у нас достаточно много. Тем более, к некоторым книгам хочется иногда возвращаться, чтобы уложить всё в голове или поискать решение конкретной задачи.
![](https://habrastorage.org/r/w1560/webt/_w/yw/wq/_wywwqmsnlz1mibibrbf803puhg.png)
Мы даже составили небольшой список книг, которые нам очень нравятся. Ну и еще это подсказка для собеседований по нашим свеженьким вакансиям, конечно. Не в смысле запомнить пару названий, а в смысле прочитать, разумеется.
Новое
![](https://habrastorage.org/r/w780q1/webt/xk/xc/27/xkxc279bojtaeuoz9gecjy-r370.jpeg)
Effective Java (3rd Edition) by Joshua Bloch (2018)
Эта книга до нас еще не дошла в бумажном виде, потому что появилась в продаже только 6 января. Но мы уже заказали её в корпоративную библиотеку. Если вы успеваете за год прочитать только одну книгу про Java, то лучше всего эту.
![](https://habrastorage.org/r/w780q1/webt/ay/lu/sf/aylusfrslcjzsucu6sanrh9sp9y.jpeg)
Designing Data-Intensive Applications by Martin Kleppmann (2017)
Наш чемпион по частоте упоминаний в списке прочитанного (или запланированного к прочтению). Масштабируемость, консистентность, отказоустойчивость, реляционные базы данных, документные, графовые… Книга помогает уложить все эти понятия по полочкам и выбрать нужные инструменты для работы. Уже в январе-феврале выйдет русское издание.
Site Reliability Engineering: How Google Runs Production Systems by Google (2016)
Сборник статей от гугловской команды Site Reliability. Вы точно знаете, что у них это: а) действительно большое, б) работает. Скорее всего, мало кто будет читать сборник от корки до корки, но несколько очень полезных статей тут каждый может найти. В августе книга выйдет на русском языке (спасибо за инфу ph_piter).
Проверенная классика
![](https://habrastorage.org/r/w1560/webt/_i/fm/zb/_ifmzb3a3rlchmzw_7hqxjrbapg.png)
Systems Performance: Enterprise and the Cloud by Brendan Gregg (2013)
Книга архитектора из Netfix достаточно подробная для новичка и при этом достаточно глубокая, чтобы возвращаться к ней, когда у опытного разработчика возникает затруднение в организации взаимодействии базы данных с ОС или оборудованием.
![](https://habrastorage.org/r/w780q1/webt/nl/2f/mm/nl2fmmpz3-95norgjv9tyxbwpcs.jpeg)
The Art of Software Testing 3rd edition by Myers and others (2013)
Книга про подход к тестированию. Автор логично предполагает, что человек — слишком целеориентированное (или ленивое) существо, чтобы всерьез ломать продукт, который ему нужно создать. Книга содержит простые примеры подхода к процессу тестирования, написана лёгким языком. По мнению коллег из Q&A несколько ортодоксальна, но имеет смысл прочувствовать предложенный подход, а потом попытаться сделать чуточку больше, чтобы помочь разработчикам своими тестами.
![](https://habrastorage.org/r/w780q1/webt/dk/2h/rs/dk2hrsw--dmk5j9ftsuq49oawsm.jpeg)
Distributed Algorithms: An Intuitive Approach (MIT Press) by Wan Fokkink (2013)
Книга для погружения в распределенные вычисления. Скорее всего, она займёт место на вашей полке рядом с Корменом или Кнутом — небольшой, но фундаментальный обзор алгоритмов в распределённых сетях. В 2017 книга вышла на русском языке.
![](https://habrastorage.org/r/w1560/webt/xw/s1/z1/xws1z1wzc8w5w_uajnnn6roofvs.png)
The Art of Multiprocessor Programming, Revised Reprint by Maurice Herlihy and Nir Shavit (2012)
Лучшая книга для понимания concurrency. Потому что, во-первых, очень понятно написана, а во-вторых, много примеров алгоритмов.
![](https://habrastorage.org/r/w1560/webt/u0/gp/69/u0gp691qm1zusiycbyoghgh1oe8.png)
SQL Performance Explained by Markus Winand (2012)
Книга выросла из постов в блоге, и это до сих пор одна из самых кратких и понятных работ по теме. Описываются принципы, применимые практически к любой SQL-базе.
![](https://habrastorage.org/r/w1560/webt/d1/c8/uu/d1c8uuynbgeaccmycmvceq5u36o.png)
Introduction to Algorithms, 3rd Edition (MIT Press) by Thomas H. Cormen (Author) and others (2009)
Лучшая книга для погружения в тему, практически энциклопедия. В 2016 вышла на русском языке.
![](https://habrastorage.org/r/w1560/webt/o5/kw/-x/o5kw-xefsc3jnxisvtuq3rglvly.png)
Domain Driven Design by Eric Evans (2008)
Книга о самых общих подходах к проектированию и разработке крупных систем. От применения сформулированных в книге принципов может выиграть практически любой проект.
![](https://habrastorage.org/r/w780q1/webt/u1/pt/5h/u1pt5hxknfnw34tlb9mr6q6nhfc.jpeg)
Java Concurrency in Practice by Brian Goetz and others (2006)
Если есть желание разобраться в том, что такое Java concurrency, начать нужно именно с этой книги.
А вы читаете бумажные книги? Кое-что из списка (и именно в бумажном виде) мы планируем разыграть в этом году на наших митапах в Москве и Петербурге.
![](https://habrastorage.org/webt/_w/yw/wq/_wywwqmsnlz1mibibrbf803puhg.png)
Мы даже составили небольшой список книг, которые нам очень нравятся. Ну и еще это подсказка для собеседований по нашим свеженьким вакансиям, конечно. Не в смысле запомнить пару названий, а в смысле прочитать, разумеется.
Новое
![](https://habrastorage.org/webt/xk/xc/27/xkxc279bojtaeuoz9gecjy-r370.jpeg)
Effective Java (3rd Edition) by Joshua Bloch (2018)
Эта книга до нас еще не дошла в бумажном виде, потому что появилась в продаже только 6 января. Но мы уже заказали её в корпоративную библиотеку. Если вы успеваете за год прочитать только одну книгу про Java, то лучше всего эту.
![](https://habrastorage.org/webt/ay/lu/sf/aylusfrslcjzsucu6sanrh9sp9y.jpeg)
Designing Data-Intensive Applications by Martin Kleppmann (2017)
Наш чемпион по частоте упоминаний в списке прочитанного (или запланированного к прочтению). Масштабируемость, консистентность, отказоустойчивость, реляционные базы данных, документные, графовые… Книга помогает уложить все эти понятия по полочкам и выбрать нужные инструменты для работы. Уже в январе-феврале выйдет русское издание.
![](https://habrastorage.org/webt/ht/wy/ox/htwyoxtmb9c4c--ehpmyg597b5g.jpeg)
Site Reliability Engineering: How Google Runs Production Systems by Google (2016)
Сборник статей от гугловской команды Site Reliability. Вы точно знаете, что у них это: а) действительно большое, б) работает. Скорее всего, мало кто будет читать сборник от корки до корки, но несколько очень полезных статей тут каждый может найти. В августе книга выйдет на русском языке (спасибо за инфу ph_piter).
Проверенная классика
![](https://habrastorage.org/webt/_i/fm/zb/_ifmzb3a3rlchmzw_7hqxjrbapg.png)
Systems Performance: Enterprise and the Cloud by Brendan Gregg (2013)
Книга архитектора из Netfix достаточно подробная для новичка и при этом достаточно глубокая, чтобы возвращаться к ней, когда у опытного разработчика возникает затруднение в организации взаимодействии базы данных с ОС или оборудованием.
![](https://habrastorage.org/webt/nl/2f/mm/nl2fmmpz3-95norgjv9tyxbwpcs.jpeg)
The Art of Software Testing 3rd edition by Myers and others (2013)
Книга про подход к тестированию. Автор логично предполагает, что человек — слишком целеориентированное (или ленивое) существо, чтобы всерьез ломать продукт, который ему нужно создать. Книга содержит простые примеры подхода к процессу тестирования, написана лёгким языком. По мнению коллег из Q&A несколько ортодоксальна, но имеет смысл прочувствовать предложенный подход, а потом попытаться сделать чуточку больше, чтобы помочь разработчикам своими тестами.
![](https://habrastorage.org/webt/dk/2h/rs/dk2hrsw--dmk5j9ftsuq49oawsm.jpeg)
Distributed Algorithms: An Intuitive Approach (MIT Press) by Wan Fokkink (2013)
Книга для погружения в распределенные вычисления. Скорее всего, она займёт место на вашей полке рядом с Корменом или Кнутом — небольшой, но фундаментальный обзор алгоритмов в распределённых сетях. В 2017 книга вышла на русском языке.
![](https://habrastorage.org/webt/xw/s1/z1/xws1z1wzc8w5w_uajnnn6roofvs.png)
The Art of Multiprocessor Programming, Revised Reprint by Maurice Herlihy and Nir Shavit (2012)
Лучшая книга для понимания concurrency. Потому что, во-первых, очень понятно написана, а во-вторых, много примеров алгоритмов.
![](https://habrastorage.org/webt/u0/gp/69/u0gp691qm1zusiycbyoghgh1oe8.png)
SQL Performance Explained by Markus Winand (2012)
Книга выросла из постов в блоге, и это до сих пор одна из самых кратких и понятных работ по теме. Описываются принципы, применимые практически к любой SQL-базе.
![](https://habrastorage.org/webt/d1/c8/uu/d1c8uuynbgeaccmycmvceq5u36o.png)
Introduction to Algorithms, 3rd Edition (MIT Press) by Thomas H. Cormen (Author) and others (2009)
Лучшая книга для погружения в тему, практически энциклопедия. В 2016 вышла на русском языке.
![](https://habrastorage.org/webt/o5/kw/-x/o5kw-xefsc3jnxisvtuq3rglvly.png)
Domain Driven Design by Eric Evans (2008)
Книга о самых общих подходах к проектированию и разработке крупных систем. От применения сформулированных в книге принципов может выиграть практически любой проект.
![](https://habrastorage.org/webt/u1/pt/5h/u1pt5hxknfnw34tlb9mr6q6nhfc.jpeg)
Java Concurrency in Practice by Brian Goetz and others (2006)
Если есть желание разобраться в том, что такое Java concurrency, начать нужно именно с этой книги.
А вы читаете бумажные книги? Кое-что из списка (и именно в бумажном виде) мы планируем разыграть в этом году на наших митапах в Москве и Петербурге.