...

пятница, 26 января 2018 г.

Что читают инженеры GridGain. Книги для тех, кто интересуется In-Memory Computing

Не так давно у нас в корпоративном чате развернулась баталия по поводу бумажных книг и книг вообще. Оказалось, что, несмотря на популярность блогов и обучающих видео, любителей полистать хорошую книгу на читалке, или даже в бумаге, у нас достаточно много. Тем более, к некоторым книгам хочется иногда возвращаться, чтобы уложить всё в голове или поискать решение конкретной задачи.

Мы даже составили небольшой список книг, которые нам очень нравятся. Ну и еще это подсказка для собеседований по нашим свеженьким вакансиям, конечно. Не в смысле запомнить пару названий, а в смысле прочитать, разумеется.
Новое


Effective Java (3rd Edition) by Joshua Bloch (2018)
Эта книга до нас еще не дошла в бумажном виде, потому что появилась в продаже только 6 января. Но мы уже заказали её в корпоративную библиотеку. Если вы успеваете за год прочитать только одну книгу про Java, то лучше всего эту.


Designing Data-Intensive Applications by Martin Kleppmann (2017)
Наш чемпион по частоте упоминаний в списке прочитанного (или запланированного к прочтению). Масштабируемость, консистентность, отказоустойчивость, реляционные базы данных, документные, графовые… Книга помогает уложить все эти понятия по полочкам и выбрать нужные инструменты для работы.


Site Reliability Engineering: How Google Runs Production Systems by Google (2016)
Сборник статей от гугловской команды Site Reliability. Вы точно знаете, что у них это: а) действительно большое, б) работает. Скорее всего, мало кто будет читать сборник от корки до корки, но несколько очень полезных статей тут каждый может найти.

Проверенная классика


Systems Performance: Enterprise and the Cloud by Brendan Gregg (2013)
Книга архитектора из Netfix достаточно подробная для новичка и при этом достаточно глубокая, чтобы возвращаться к ней, когда у опытного разработчика возникает затруднение в организации взаимодействии базы данных с ОС или оборудованием.


The Art of Software Testing 3rd edition by Myers and others (2013)
Книга про подход к тестированию. Автор логично предполагает, что человек — слишком целеориентированное (или ленивое) существо, чтобы всерьез ломать продукт, который ему нужно создать. Книга содержит простые примеры подхода к процессу тестирования, написана лёгким языком. По мнению коллег из Q&A несколько ортодоксальна, но имеет смысл прочувствовать предложенный подход, а потом попытаться сделать чуточку больше, чтобы помочь разработчикам своими тестами.


Distributed Algorithms: An Intuitive Approach (MIT Press) by Wan Fokkink (2013)
Книга для погружения в распределенные вычисления. Скорее всего, она займёт место на вашей полке рядом с Корменом или Кнутом — небольшой, но фундаментальный обзор алгоритмов в распределённых сетях. В 2017 книга вышла на русском языке.


The Art of Multiprocessor Programming, Revised Reprint by Maurice Herlihy and Nir Shavit (2012)
Лучшая книга для понимания concurrency. Потому что, во-первых, очень понятно написана, а во-вторых, много примеров алгоритмов.


SQL Performance Explained by Markus Winand (2012)
Книга выросла из постов в блоге, и это до сих пор одна из самых кратких и понятных работ по теме. Описываются принципы, применимые практически к любой SQL-базе.


Introduction to Algorithms, 3rd Edition (MIT Press) by Thomas H. Cormen (Author) and others (2009)
Лучшая книга для погружения в тему, практически энциклопедия. В 2016 вышла на русском языке.


Domain Driven Design by Eric Evans (2008)
Книга о самых общих подходах к проектированию и разработке крупных систем. От применения сформулированных в книге принципов может выиграть практически любой проект.


Java Concurrency in Practice by Brian Goetz and others (2006)
Если есть желание разобраться в том, что такое Java concurrency, начать нужно именно с этой книги.

А вы читаете бумажные книги? Кое-что из списка (и именно в бумажном виде) мы планируем разыграть в этом году на наших митапах в Москве и Петербурге.

Let's block ads! (Why?)

Комментариев нет:

Отправить комментарий