Leanpub Header

Skip to main content

The Ultimate Software Engineering Interview Library Bundle

Six question-and-answer interview references covering React and TypeScript, Angular and TypeScript, Python and Django, Java and Spring Boot, C# and .NET, and Modern C++ and the STL, each explaining the mechanisms and trade-offs behind its answers.

Bought separately

$179.94

Minimum price

$99.99

$129.99

You pay

Author earns

$

Also available for 3 book credits with a Reader Membership

These books have a total suggested price of $179.94. Get them now for only $99.99!
About

About

About the Bundle

This bundle collects all six books of the Interview Compendium series in one library. Each is a structured question-and-answer reference for one software engineering ecosystem, written for developers who already work in it and want to explain how it behaves rather than recite definitions. The answers go past the definition to the mechanism and the trade-off, with code listings alongside them, so readers can reason through questions they have not seen before.

Two books cover the frontend. The React and TypeScript Interview Compendium contains more than a thousand questions on the rendering model, hooks, state, routing, server state, performance, testing, and frontend security, and closes with senior design scenarios. The Angular and TypeScript Interview Compendium treats Angular and TypeScript as one discipline, from components, dependency injection, RxJS, and signals to forms, routing, change detection, server-side rendering, and architecture for large teams.

Three books cover backend platforms. The Java and Spring Boot Interview Compendium has more than five hundred questions on the language from Java 8 to 21, concurrency and the JVM, and Spring, JPA, testing, and security. The C# and .NET Interview Compendium – Second Edition runs from C# 14 and .NET 10 language features through data structures and algorithms, design patterns, the CLR, distributed system design, ASP.NET Core, and Azure. The Python and Django Interview Compendium covers the Python runtime, typing, testing, and concurrency, then the Django ORM, Django REST Framework, security, scaling, and deployment.

The Modern C++ and STL Interview Compendium is the largest of the six, with more than nine hundred questions across twenty-four chapters on ownership and RAII, value categories, templates, the STL, concurrency and the memory model, performance, build systems and sanitizers, modernization, and where C++ fits in games, high-performance computing, systems, and embedded work.

The library suits mid-level and senior developers preparing for interview loops on more than one stack, and engineers moving between ecosystems. It spans six ecosystems, not every kind of technical interview, and none of the books is a first tutorial. Each can be read in order as a study plan or consulted by topic before a specific interview.

Books

About the Books

The React and TypeScript Interview Compendium

The React and TypeScript Interview Compendium

Interview Questions and Answers for React and TypeScript Developers

React and TypeScript interviews reward precise mental models more than API trivia. Interviewers want to hear what React does when a component runs, who owns a piece of state, where a type stops protecting you, and what you would measure before you optimized anything.

The React and TypeScript Interview Compendium is a structured reference for developers who already know the basics and want sharper answers for mid-level and senior interviews. It contains more than a thousand questions across fifteen chapters, each tied to the reasoning an interviewer is listening for.

The book moves from the React rendering model and TypeScript for React developers, through components, state, effects, hooks, and forms, to context, routing, server state, styling, performance, testing, and frontend security, deployment, and observability. It closes with senior scenarios: a method for turning a vague design prompt into a bounded answer, four capstone designs, and a way to troubleshoot production problems.

Most chapters pair a weak answer with a strong one, then give each question an outline of a good answer, a note on what the interviewer is testing, and the mistake candidates most often make. Code walkthroughs, tradeoff discussions, debugging scenarios, exercises with solution sketches, and a review checklist complete each chapter.

The book teaches concepts rather than one ecosystem. It explains the underlying problem first, such as cache identity, cancellation, or scope, and treats any specific library as one way to solve it, so the reasoning still holds when your team's tools change.

The Python and Django Interview Compendium

The Python and Django Interview Compendium

Interview Questions and Answers for Python and Django Developers

The Python and Django Interview Compendium is a question-and-answer reference for backend developers preparing for Python and Django interviews, and for anyone who wants to explain how the language and the framework behave rather than only use them. It contains more than two hundred questions across fifteen chapters, and each answer goes past the definition to the mechanism behind it and the trade-off it carries, so that readers can reason about a question they have not seen before instead of reciting a memorized reply. Almost every answer is paired with a code listing.

The material is split roughly evenly between the two subjects. The first eight chapters cover Python itself: its history and runtime model, fundamentals and the data model, functions, decorators, and closures, collections, iterators, and generators, object-oriented Python with dataclasses and protocols, exceptions, context managers, and packaging, typing, testing, and code quality, and concurrency with threads, processes, and asyncio. The last seven chapters cover Django: project structure and settings, models, the ORM, and migrations, views, forms, and the admin, Django REST Framework, authentication and security, caching, performance, and scaling, and deployment, observability, and production troubleshooting. The Django chapters keep returning to the Python mechanisms they are built on.

The book is practical rather than tutorial. In the Python chapters the listings are mostly self-contained scripts, and in the Django chapters they are focused excerpts, such as models, views, serializers, and settings, that assume a Django project around them. Chapters mix core concepts with scenario questions on topics such as detecting and fixing N+1 queries, running migrations safely on a live database, choosing between threads, processes, and asyncio, hardening a Django deployment, and debugging a slow request in production, and many answers end with a note on a common pitfall or a senior-level follow-up.

Readers come away able to explain how identity, mutability, hashing, closures, generators, and the GIL actually behave, to choose between concurrency models and state what each choice costs, and to write typed, tested Python. On the Django side they should be able to trace a request through middleware and views, reason about lazy QuerySets and query optimization, design REST APIs with sensible serializers, permissions, and throttling, and discuss authentication, caching, background tasks, and deployment in terms of trade-offs. The book covers Python and Django only; it does not teach other web frameworks or data-science libraries.

It is written for developers who already build with Python or Django, from mid-level engineers preparing for senior interview loops to developers moving into Django from another stack, and it is not a first tutorial. The chapters can be read in order or consulted by topic, which makes the book useful both as a study plan and as a reference before a technical interview.

The Modern C++ and STL Interview Compendium

The Modern C++ and STL Interview Compendium

Interview Questions and Answers for Modern C++ Developers

The Modern C++ and STL Interview Compendium is a question-and-answer reference for developers preparing for C++ interviews, and for anyone who wants to explain what modern C++ does and what it costs rather than only use it. It contains more than nine hundred questions across twenty-four chapters, and each answer goes past the definition to the mechanism behind it and the trade-off it carries, so that readers can reason about a question they have not seen before instead of reciting a memorized reply.

The core of the book, Chapters 2 through 14, covers language fundamentals, memory management and RAII, pointers, references, and value categories, object-oriented C++, templates, STL containers and iterators, algorithms and ranges, strings and regular expressions, exceptions and error handling, concurrency, metaprogramming, design patterns, and performance and low-level optimization. Chapter 1 is a short orientation to the language's standards, from C++98 through the C++26 cycle. Chapters 15 through 20 turn to engineering practice and reference: build systems and linking, testing and debugging, standard-library utilities, migration and modernization, a set of decision guides, and a deeper STL reference. The last four chapters look at where C++ earns its place, in games and high-performance computing, parallelism and accelerators, systems and distributed engineering, and embedded and real-time work, and they ask as often when not to use C++ as when to use it.

Most chapters open with core questions, continue with questions labeled Beginner, Intermediate, or Advanced, and close with senior-level scenarios: what is wrong with a piece of code, which option to choose and why, and how to debug a specific failure. In Chapters 2 through 14 the listings are mostly complete programs that can be compiled and changed, while the later chapters lean on decision tables and shorter fragments. The book covers the standards from C++11 through C++23 and treats C++26 as a direction rather than a portable default.

Readers come away able to say who owns an object and how long a borrowed reference stays valid, to explain move semantics and value categories, to choose among containers and algorithms on locality and invalidation as well as complexity, and to reason about the memory model, data races, and safe shutdown. They should also be able to design a benchmark that measures what it claims, interpret a sanitizer report, explain how ABI boundaries affect a shared library, and describe how to modernize a legacy codebase in stages.

It is written for developers who already work in C++, from mid-level engineers preparing for senior interviews to developers arriving from managed languages, and it is not a first tutorial. The chapters can be read in order or consulted by topic, which makes the book useful both as a study plan and as a reference before a technical interview.

The Java and Spring Boot Interview Compendium

The Java and Spring Boot Interview Compendium

Interview Questions and Answers for Java and Spring Boot Developers

The Java and Spring Boot Interview Compendium is a question-and-answer reference for backend developers preparing for Java and Spring Boot interviews, and for anyone who wants to explain the platform rather than only use it. It contains more than five hundred questions across fifteen chapters, and each answer goes past the definition to the mechanism behind it and the trade-off it carries, so that readers can reason about a question they have not seen before instead of reciting a memorized reply. Almost every answer is paired with a Java code listing.

The material is roughly two-thirds Java and one-third Spring. It begins with how the language evolved from Java 8 to Java 21, then works through fundamentals and object-oriented programming, collections and data structures, generics, lambdas, and streams, exception handling and annotations, concurrency, JVM internals and performance tuning, design patterns, and object-oriented design. The second half turns to Spring: the IoC container, dependency injection, and proxies; Spring Boot and REST APIs; persistence with JPA and Hibernate; testing with JUnit 5, Mockito, and Spring Boot test slices; and Spring Security, architecture, and deployment. The two halves are connected throughout, so the Spring chapters keep returning to the Java mechanisms they are built on.

The book is practical rather than tutorial. In the Java chapters the listings are, with few exceptions, complete programs with their own main method, and in the Spring chapters they are focused excerpts written against the real Spring, JPA, JUnit, and Spring Security APIs. Chapters mix core concepts with production scenarios such as diagnosing a memory or CPU problem, migrating a Java 8 and Spring Boot 2 service to Java 21 and Spring Boot 3, designing idempotent APIs, and deploying without downtime, and nearly every chapter ends with a section of coding challenges. Along the way the book builds a hash map, an LRU cache, a rate limiter, a connection pool, and a circuit breaker by hand.

Readers come away able to explain how equality, immutability, generics, the Java Memory Model, and garbage collection actually behave, to choose between collections and concurrency tools and state what each choice costs, and to use thread dumps, heap dumps, and GC logs to narrow down a problem. On the Spring side they should be able to describe what the container, its proxies, and auto-configuration do on their behalf, design REST APIs and persistence layers with pitfalls such as N+1 queries and lost updates in view, test at the right level, and discuss security, architecture, resilience, and deployment in terms of trade-offs.

It is written for developers who already work in Java, from mid-level engineers preparing for senior interview loops to Spring developers refreshing the platform beneath the framework, and it is not a first tutorial. The chapters can be read in order or consulted by topic, which makes the book useful both as a study plan and as a reference before a technical interview.

The Angular and TypeScript Interview Compendium

The Angular and TypeScript Interview Compendium

Interview Questions and Answers for Angular and TypeScript Developers

The Angular and TypeScript Interview Compendium is a question-and-answer reference for developers preparing for Angular and TypeScript interviews, and for anyone who wants to explain the modern Angular stack rather than only use it. Instead of walking through a sample application, it is organized around the questions interviewers actually ask, and each answer goes past the definition to the mechanism behind it, the tradeoff it carries, and how a strong candidate would frame it out loud.

Angular and TypeScript are treated as one discipline rather than two topics bolted together. The book opens with Angular's evolution and three chapters on the TypeScript language — fundamentals and narrowing, generics and advanced types, and runtime boundaries, modules, and tsconfig policy — and returns to the connection later with a chapter on how typed contracts shape components, forms, HTTP services, routes, and dependency injection.

Across six parts, the Angular material moves from workspace structure, components, data binding, directives, and dependency injection, through RxJS, signals, state management, and forms, to HTTP, routing and guards, and authentication and frontend security. It then turns to what keeps an application healthy in production — change detection and performance, testing, debugging and diagnostics, server-side rendering and hydration — and closes with architecture decision-making, scalable structure for large teams, and TypeScript code-reading scenarios. The emphasis is on modern Angular, including standalone components, signals, built-in control flow, functional guards and interceptors, and typed forms, with older NgModule- and RxJS-era patterns explained where they still appear in real codebases.

The reading experience is practical rather than tutorial. Every chapter ends with key takeaways, most include a section on common anti-patterns, and many include interview scenarios that describe what a strong answer covers. More than three hundred code listings illustrate recommended patterns and, in many chapters, the mistakes they replace.

Readers come away able to explain why Angular changed and how to migrate an aging codebase in stages, say where TypeScript's guarantees end, choose among component state, signals, RxJS, service state, and NgRx and defend the choice, and discuss testing, performance, security, and architecture in terms of tradeoffs rather than slogans. It is written for mid-level to senior developers who already have hands-on Angular and TypeScript experience, not as a first tutorial, and it works both as a front-to-back preparation course and as a chapter-by-chapter reference before a specific interview or design review.

The C# and .NET Interview Compendium – Second Edition

The C# and .NET Interview Compendium – Second Edition

Interview Questions and Answers for C# and .NET Developers

**The C# and .NET Interview Compendium – Second Edition** is a large, structured question-and-answer reference built specifically for technical interview preparation in the C# and .NET ecosystem. Rather than teaching the language from scratch, it assumes working professional familiarity with C# and organizes the knowledge an interviewer is likely to probe — from language mechanics through system design — into clear, direct answers that explain not just *what* something is, but *why* it works that way and what the alternatives cost.

The book progresses deliberately across fifteen chapters rather than presenting an unordered topic list. It opens with the evolution of the .NET platform itself, current through .NET 10 and C# 14, and C# language fundamentals in depth. It then builds through the core computer-science material most interviews treat as a baseline — data structures (arrays through graphs, with real traversal and shortest-path algorithms) and algorithms (sorting, searching, and dynamic programming worked in full) — before moving into object-oriented design, SOLID principles, clean-code practice, and a complete catalog of 23 classic design patterns with working C# implementations. The remaining chapters address production-level concerns: memory management and performance, SQL Server/T-SQL and ORM usage, C# and CLR internals, distributed system design and architecture, concurrency and multithreading, testing and test automation, building and securing Web APIs in ASP.NET Core, deploying and operating on Azure, and defending an application against common security vulnerabilities.

Readers should expect a genuinely wide skill-level range within one book: some material revisits fundamentals precisely enough to be useful to a developer who has never had to explain *how* a `Dictionary` works internally, while other sections — advanced graph algorithms, distributed system design, Azure architecture — sit comfortably at senior or staff level. This breadth is intentional: the compendium is meant to serve as one reference across an entire interview-preparation journey, not a single difficulty band. Every major section pairs its explanation with a runnable code example, so the material can be read alongside real code rather than as abstract prose.

The compendium works both as a sequential preparation course and as a standing reference. Read front to back, it functions as a structured, multi-week study path. Used topic by topic, each chapter stands independently, so a reader with an interview focused on system design, Web API security, or a specific data-structure topic can go directly to the relevant chapter. This dual use — study guide and lookup reference — is the book's core practical value: it is meant to be revisited, not read once and shelved.

The Leanpub 60 Day 100% Happiness Guarantee

Within 60 days of purchase you can get a 100% refund on any Leanpub purchase, in two clicks.

See full terms...

Earn $8 on a $10 Purchase, and $16 on a $20 Purchase

We pay 80% royalties on purchases of $7.99 or more, and 80% royalties minus a 50 cent flat fee on purchases between $0.99 and $7.98. You earn $8 on a $10 sale, and $16 on a $20 sale. So, if we sell 5000 non-refunded copies of your book for $20, you'll earn $80,000.

(Yes, some authors have already earned much more than that on Leanpub.)

Learn more about writing on Leanpub

Free Updates. DRM Free.

If you buy a Leanpub book, you get free updates for as long as the author updates the book! Many authors use Leanpub to publish their books in-progress, while they are writing them. All readers get free updates, regardless of when they bought the book or how much they paid (including free).

Most Leanpub books are available in PDF (for computers) and EPUB (for phones, tablets and Kindle). The formats that a book includes are shown at the top right corner of this page.

Finally, Leanpub books don't have any DRM copy-protection nonsense, so you can easily read them on any supported device.

Learn more about Leanpub's ebook formats and where to read them

Write and Publish on Leanpub

You can use Leanpub to easily write, publish and sell in-progress and completed ebooks and online courses!

Leanpub is a powerful platform for serious authors, combining a simple, elegant writing and publishing workflow with a store focused on selling in-progress ebooks.

Leanpub is a magical typewriter for authors: just write in plain text, and to publish your ebook, just click a button. (Or, if you are producing your ebook your own way, you can even upload your own PDF and/or EPUB files and then publish with one click!) It really is that easy.

Learn more about writing on Leanpub