Books

Books that I certainly recommend for reading

Core software engineering

Code Complete: A Practical Handbook of Software Construction

Shop

If i could recommend to read only a single book in entire life, that would be this one. It is very all encompasing book covering a lot of aspects of software development. Some of them in more than enough capacity. Some of them is showing only briefly and redirecting to where to learn them further. With this book u will have much clear picture that there is still a lot to learn ahead. It has plenty of recommendations what to read next.

Despite it being written in 2004 year as second edition, it still remains relevant for 98%+ of its text. With reading its material you will learn reusable skills that will remain persistent through your full career. it will help you to write more cleaner, more readable and maintainable code in any programming language. It will help you to understand possible goals in development to aim for, and what you could be missing to code with more efficiency.

Unit Testing Principles, Practices, and Patterns

Shop

This book teaches theory behind unit testing. For which goals to aim for, how to escape pitifals. It will explain you importance of unit testing and what kind of testing exists. This book is important to weaponize your skills to an average commercial level development.

Test Driven Development: By Example

Shop

This book teaches practice behind unit testing. On a specific example it walks you through how to have unit testing as part of your development cycle at every moment. It teaches you feeling how much gap between tests is allowed in your working code.

Clean Architecture: A Craftsman's Guide

Shop

This book helps to have a global look onto code design of a single application. It helped me in achieving a necessary view for designing libraries.

Systems Analysis and Design

Shop

The book makes walk through steps of Software Development Lifecycle. From getting approved draft, gathering requirements for its functional and technical requirements, to working with user usage case scenarios, designing database, infrastructure and application development. You can save a ton of time, with refactoring the design of application before a single code line was written.


DevOps

Docker Deep Dive

Shop

Structured learning of docker. Important thing for any DevOps engineer, Backend developer or any other job role dealing with web applications and their related ecosystem of databases and other stuff. Docker is helping to document as a code your web application building and freeze entire everything needed for its running. Containers became standard for immutable deployments, and with learning docker you will make your app compatible with modern ecosystem and get ability for easier rollback to previous version.

The Kubernetes Book

Shop

In case u need jump start in learning kubernetes this book is for you. From same author as Docker Deep Dive. a structured dive into k8s.

Terraform up and runnning

Shop

This book teaches you instrument to automate all actions of dealing with cloud providers, like AWS / GCP / Azure. Without terraform or pulumi it is not very recommended diving into them, for a reason of a high complexity to tune all things. Infrastructure as a code changes things and helps to utilize the power of such cloud providers in a comfortable way.

P.S. this book is AWS oriented, but its material will be useful for you for any cloud provider. Also recommending learning terraform first instead of kubernetes, as it is covering more necessary things first, from setting up servers, to configuring networks, iam permissions, security groups to managed databases and other gazillion of moden cloud services.

Articles