Software Engineering Books

Download PDF Books
Refactoring : Improving the Design of Existing Code
Refactoring : Improving the Design of Existing Code
Martin Fowler

"Whenever you read [Refactoring], it's time to read it again. And if you haven't read it yet, please do before writing a...

Python Crash Course
Python Crash Course
Eric Matthes

Second edition of the best-selling Python book in the world. A fast-paced, no-nonsense guide to programming in Python. U...

Clean Architecture : A Craftsman's Guide to Software Structure and Design
Clean Architecture : A Craftsman's Guide to Software Structure and Design
Robert C. Martin

Practical Software Architecture Solutions from the Legendary Robert C. Martin ("Uncle Bob") By applying universal rule...

Designing Data-intensive Applications
Designing Data-intensive Applications
Martin Kleppmann

Data is at the center of many challenges in system design today. Difficult issues need to be figured out, such as scalab...

The Clean Coder : A Code of Conduct for Professional Programmers
The Clean Coder : A Code of Conduct for Professional Programmers
Robert C. Martin

Programmers who endure and succeed amidst swirling uncertainty and nonstop pressure share a common attribute: They care ...

Code Complete by Steve McConnell
Code Complete by Steve McConnell
Steve McConnell

Annotation Widely considered one of the best practical guides to programming, Steve McConnell's original CODE COMPLETE h...

Working Effectively with Legacy Code
Working Effectively with Legacy Code
Michael C. Feathers

This book provides programmers with the ability to cost effectively handlecommon legacy code problems without having to ...

Test Driven Development : By Example
Test Driven Development : By Example
Kent Beck

Clean code that works--now. This is the seeming contradiction that lies behind much of the pain of programming. Test-dri...

The Mythical Man-month
The Mythical Man-month
Frederick Phillips Brooks

Few books on software project management have been as influential and timeless as The Mythical Man-Month. With a blend o...

Design Patterns : Elements of Reusable Object-Oriented Software
Design Patterns : Elements of Reusable Object-Oriented Software
Ralph Johnson

Capturing a wealth of experience about the design of object-oriented software, four top-notch designers present a catalo...