Рубріки: Книжки

10 книг для програмістів, щоб прокачати технічні та софт-скіли

Анастасія Пономарьова

Ми зібрали в одну добірку літературу як для новачків в IT, так і досвідчених програмістів, яка допоможе підтягнути (або повторити) базу, розширити знання з математики та ML, навчить проходити інтерв’ю та «виживати» в офісі.

Новачкам

Computer Science Distilled: Learn the Art of Solving Computational Problems (Wladston Ferreira Filho)

Короткий і простий посібник з комп’ютерних наук, який покроково вчить основ, необхідних ефективного програмування комп’ютерів. Після вступу в дискретну математику у ньому представлені загальні алгоритми і структури даних. Також тут викладаються принципи, за якими працюють комп’ютери та мови програмування.

Grokking Algorithms: An Illustrated Guide for Programmers and Other Curious People (Aditya Bhargava)

Цей ілюстрований посібник навчить застосовувати поширені алгоритми до практичних завдань, з якими програмісти стикаються щодня. Ви почнете з сортування та пошуку, поступово завдання ускладнюватимуться — потрібно буде вирішувати завдання на стиснення даних та штучний інтелект. Всередині також знайдете приклади застосування алгоритмів, діаграми та повністю анотовані зразки коду на Python.

Street Coder: The rules to break and how to break them (Sedat Kapanoglu)

Керівництво для початківців із гумором розповідає, як ефективно виконувати свою роботу, розставляти пріоритети, приймати швидкі рішення, а також пояснює, які правила написання коду слід порушувати. У книзі розбирають:

  • типи даних, алгоритми та структури даних для швидкої розробки програмного забезпечення;
  • використання «поганих» практик із користю;
  • тестування;
  • як спокійно приймати проколи у своєму коді та «подружитися» з помилками;
  • оптимізацію коду, асинхронне програмування, розпаралелювання та рефакторинг.

Досвідченим

Designing Data-Intensive Applications: The Big Ideas Behind Reliable, Scalable, and Maintainable Systems 1st Edition (Martin Kleppmann)

Сьогодні дані перебувають у центрі багатьох проблем під час проектування систем — необхідно вирішити складні питання, такі як масштабованість, узгодженість, надійність, ефективність та ремонтопридатність. Інформація з цієї книги допоможе вам зорієнтуватися у світі даних, вивчивши плюси та мінуси різних технологій їх обробки та зберігання за допомогою інструментів.

Програмне забезпечення постійно змінюється, але основні принципи залишаються незмінними. Автор розповідає, як застосовувати ці ідеї на практиці та як повною мірою використовувати дані у сучасних застосунках.

Data-Driven Science and Engineering: Machine Learning, Dynamical Systems, and Control 1st Edition (Steven L. Brunton)

Цей підручник поєднує машинне навчання, інженерну математику та математичну фізику для інтеграції моделювання та управління динамічними системами із сучасними методами науки про дані. Тут висвітлюється багато останніх досягнень у галузі наукових обчислень — вони дозволяють застосовувати методи, засновані на даних, до різноманітних складних систем.

Build Your Own Programming Language: A programmer’s guide to designing compilers, interpreters, and DSLs for solving modern computing problems (Clinton L. Jeffery)

Автор книги — творець мови програмування Unicon. Він вважає, що найкращий спосіб скоротити час розробки та усунути болючі точки в області вашого проекту — створити власну мову програмування. У книзі розповідається, як створювати синтаксичні аналізатори, генератори коду, програми читання файлів, аналізатори та інтерпретатори. Також є керівництво, як створити альтернативу фреймворкам та бібліотекам для вирішення проблем, пов’язаних із предметною областю.

Проходження інтерв’ю

System Design Interview — An insider’s guide (Alex Xu)

Інтерв’ю з системного проектування — найскладніший етап. Щоб полегшити розробникам його проходження, автор створив серію посібників (це перша частина). Тут представлена ​​стратегія проходження співбесіди та база знань для вирішення широкого кола питань щодо проектування систем. Книга включає безліч реальних прикладів, що ілюструють систематичний підхід, з докладним описом кроків.

Cracking the Coding Interview: 189 Programming Questions and Solutions 6th Edition (Gayle Laakmann McDowell)

Інженер-програміст, який також займався відбором співробітників до компанії, поділився досвідом проходження інтерв’ю (навіть тих, коли тебе просять одразу ж вигадати блискучий алгоритм, а потім написати бездоганний код на дошці). Книга допоможе вам потренуватися перед співбесідою, навчить розкривати підказки та приховані деталі у питаннях, виходити із скрутного становища, повторити основні концепції розробки.

Софт-скіли

Engineers Survival Guide: Advice, tactics, and tricks After a decade of working at Facebook, Snapchat, and Microsoft (Merih Taze)

Відійдемо від теорії до реального життя інженера, де щодня потрібно взаємодіяти з людьми, зображати впевненість, переконувати інших у своїй правоті, намагатися не потонути в роботі (але й не показати себе «слабаком», який просить передати частину роботи колегам) і якось просуватися кар’єрними сходами. Книга стане «електронним наставником» у цих та інших питаннях: усередині ви знайдете зведення порад, тактик та прийомів від досвідчених інженерів.

Critical Thinking & Logic Mastery – 3 Books In 1: How To Make Smarter Decisions, Conquer Logical Fallacies And Sharpen Your Thinking  (Thinknetic)

Більшості людей не вистачає критичного мислення, бо система освіти йому не вчить. Саме через відсутність критичного мислення більшість людей ніколи не реалізують свій потенціал — через велику кількість помилкових переконань вони роблять те, що шкодить їм, і не роблять того, що принесло б велику користь. Цю тезу можна «натягнути» як на побут, так і на роботу програміста.

У комплект цієї книги входять:

  • Коротко про критичне мислення: як стати незалежним мислителем та приймати розумні рішення.
  • Подолайте логічні помилки: 28 крихт знань, які допоможуть розвинути ваші навички міркування.
  • Звичка критично мислити: потужні практики, які змінять вашу думку та загострять ваше мислення.

Останні статті

ЄС запускає «тимчасове рішення» для перевірки віку інтернет-користувачів

За підтримки Європейської комісії представлено бета-версію мобільного додатку для перевірки віку користувачів онлайн-платформ та відвідувачів…

30.05.2025

Gemini тепер може аналізувати зміст відеофайлів в Google Drive

У Google Drive інтегровані нові функції LLM-моделі Gemini, які надають користувачам більше інформації про збережені…

30.05.2025

CEO Anthropic: штучний інтелект може знищити до 50% позицій джунів

Генеральний директор Anthropic Даріо Амодей вважає, що штучний інтелект незабаром може скоротити 50% офісних робочих…

30.05.2025

На Stack Overflow з’являться платні експерти, які допомагатимуть у вирішенні проблем з кодом

На фоні значного падіння трафіку та запитів користувачів, причиною чого є зростання популярності чат-ботів, сайт…

30.05.2025

Mistral випустив Codestral Embed — інструмент для автодоповнення, редагування та пояснення коду

Французький стартап Mistral AI представив Codestral Embed — свою першу модель, орієнтовану виключно на роботу…

30.05.2025

DeepSeek стверджує, що її оновлена ​​модель R1 краще справляється з програмуванням

Китайський стартап DeepSeek заявив, що його оновлена LLM-​​модель R1 може виконувати математичні обчислення, програмування та…

29.05.2025