Skip to content

enribd/choose-your-own-it-readventure

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

Choose your own IT readventure! πŸ“š πŸŒ„ πŸ’»

If you are a stubborn learner, eat books for breakfast, and want to discover new concepts or hunt new skills related to the IT world, I can assure you that you are in the right nook of the Internet. Prepare yourself to be amazed by a choose-your-own-adventure journey in the IT world. Hopefully, it will take you to interesting places thanks to the power and the fun of reading.

Finally, make sure you don’t forget about putting your newly acquired skills to the test, remember that practice makes the master!

Starting your adventure is as easy as picking the set of skills that you want to learn or improve, check out the learning paths and choose your starting point. There are paths focused on a particular technology or skill, and more generic ones, but both are useful and can be combined depending of your goal.

⚠️ A minimum previous knowledge is required to start some of these adventures. Various of them have been assembled to enlarge or acquire expertise in topics considered, until certain point, advanced. If you are new to the IT world or if you want to follow a learning path of high difficulty my recommendation is that, before adventuring, you read first about the basics and foundational concepts of that particular topic.

You can keep browsing this repo or use the web version πŸš€.

🏁 Start your adventure, choose your learning path wisely

  • 10 learning paths πŸŽ“

    • 1 cicd CI/CD 🚧: Automation is key to improve quality and shorten software releases. Read all about continuous integration and delivery principles, master the tools and learn the bases that will make you be more effective and efficient.
    • 3 event-driven-architecture Event Driven Architecture (EDA) 🚧: Asynchronous communication between services is possible using events. There is a lot to learn here, the main challenge is changing the way you think about communication patterns.
    • 4 golang Golang β˜‘οΈ: A modern general purpose programming language born to make easier developing things like APIs, command line applications, cloud native applications, and concurrency patterns.
    • 1 iac Infrastructure as Code (IaC) πŸ†•: Automate the cloud infrastructure deployment with code, make it reusable, deliver faster, more secure and have a backup of all the work you did, as code.
    • 8 kubernetes Kubernetes β˜‘οΈ: Run containers at scale and unlock the power of building microservice platforms thanks to the Kubernetes orchestrator.
    • 3 microservices Microservices 🚧: Study the pinnacle of distributed systems architectures, learn its tenets, and foremost, when and how to implement it.
    • 7 software-architecture Software Architecture 🚧: Building software is not only about writing code, to design great platforms you should learn to think about extensibility, efficiency, easy integration, resilience, flexibility, and much more.
    • 4 sre Site Reliability Engineering (SRE) πŸ†•: SRE is about making productive system to stay up, to make update cycles simpler and more frequent, to identify and resolve problems and, of course, automating things to make the life easier.
    • 6 system-design System Design β˜‘οΈ: Acquire the skill needed to design and build systems, no matter if simple or complex. Learn how to identify the elements needed to create systems, to resolve scalability problems, detect possible points of failure, when to use an API, where to place a cache, when to use a NoSql database, and more.
    • 2 team-management Team Management πŸ†•: Building team is no easy feat, doing it to be efficient to deliver quality products and services blazinlig fast is really hard. Roll up your sleeves and discover what makes a good team.
  • 36 books πŸ“š , discover them all in the πŸ“œ book index.

  • 65 authors βœ’οΈ , discover them all in the πŸ“œ author index.

πŸ“› Badges

Badges indicates some aspects of the learning paths or books, like status, difficulty, rating, and more!

πŸŽ“ Learning path badges

These badges show the current status of the learning path:

Badge Level
πŸ”œ Coming soon!
🚧 In construction
πŸ†• Just released!
β˜‘οΈ Have fund and enjoy!

πŸ“š Books badges

All books have some badges associated to describe some aspect of them:

  • You will read each book with the same amount of energy needed to fight these opponents, from lower to higher difficulty (these are totally subjective):
Badge Level
🐜 Petty ant
πŸ₯ Naive chick
πŸ• Brave dog
πŸ… Fierce tiger
πŸ‰ Mighty dragon
  • Reading progress:
Badge Meaning
πŸ“— Read
πŸ“˜ To be read soon
πŸ“™ Not read and I don't know when I will
  • My book rating and recommendation level from lower to higher:
Badge Level
πŸ†— Nice
πŸ†™ Good
πŸ†’ Very Good
πŸ” Excellent

Note: there are just four levels because all books mentioned are good reads, bad books don't belong here πŸ‘Ž.

  • Other badges:
Badge Meaning
πŸ”„ The book it's somewhat 'old' and I think it would be great to have a new edition to refresh the content
πŸ”– Recommended read no matter the learning path

πŸ‘½About me

I am a professional Cloud and Platform Engineer, DevOps practitioner, and Architect in construction. Also I develop things in my free time just for the fun of learning how not to do things. My main interests are the cloud, microservice architectures, EDA, serverless, system design, Kubernetes, and Golang.

This repo is conceived as a journal of my personal journey and a learning path to guide others who, like me, find in reading the best way to acquire deep knowledge in certain topics. I will put together a list that categorizes all the books I've read as well as those that I intend to read, or those that I consider of some importance in the IT field. The list is subjective, it will reflect my interests or the way I've decided to explore topics (most likely in a chaotic way).

If you think some books may fit better in other categories, or the category names are not accurate enough or have suggestions about possible improvements just let me know and I will gladly consider your comments.

Of course, there will be books broadly considered a must-read that I have not listed, that's either because they don't fit in my career or simply because I don't know of their existence, in any case let me know!

Thanks for stopping by, enjoy! πŸ‘

πŸ“— Books Read (21 πŸ“š)

Cover Info Learning Paths
cover Accelerate: Building and Scaling High Performing Technology Organizations
Nicole Forsgren
Published in 2018
288 pages
πŸ• πŸ“— πŸ†’
cover Building Event-Driven Microservices: Building Event-Driven Microservices
Adam Bellemare
Published in 2020
321 pages
πŸ• πŸ“— πŸ†™
cover Building Microservices: Designing Fine-Grained Systems
Sam Newman
Published in 2022
616 pages
πŸ• πŸ“— πŸ” πŸ”–
cover Building an Event-Driven Data Mesh: Patterns for Designing & Building Event-Driven Architectures
Adam Bellemare
Published in 2023
275 pages
πŸ… πŸ“— πŸ†—
cover Cloud Native Go: Cloud Native Go
Matthew A. Titmus
Published in 2021
433 pages
πŸ‰ πŸ“— πŸ”
cover Design Patterns for Cloud Native Applications: Patterns in Practice Using APIs, Data, Events and Streams
Kasun Indrasiri, Sriskandarajah Suhothayan
Published in 2021
311 pages
πŸ• πŸ“— πŸ”
cover Designing Microservices Platforms with NATS: A modern approach to designing and implementing scalable microservices platforms with NATS messaging
Chanaka Fernando
Published in 2021
356 pages
πŸ• πŸ“— πŸ†—
cover Foundations of Scalable Systems: Designing Distributed Architectures
Ian Gorton
Published in 2022
320 pages
πŸ• πŸ“— πŸ†—
cover Knative in Action
Jacques Chester
Published in 2021
272 pages
πŸ… πŸ“— πŸ†—
cover Kubernetes: Up & Running
Brendan Burns, Joe Beda, Kelsey Hightower
Published in 2022
326 pages
πŸ₯ πŸ“— πŸ†’
cover Kubernetes Patterns: Reusable Elements for Designing Cloud Native Applications
Bilgin Ibryam, Roland Huss
Published in 2023 (2nd edition)
300 pages
πŸ₯ πŸ“— πŸ†’ πŸ”œ
cover Learning GitHub Actions: Automation and Integration of CI/CD with GitHub
Brent Laster
Published in 2023
375 pages
πŸ₯ πŸ“— πŸ†’
cover Let's Go: Let's Go
Alex Edwards
Published in 2019
305 pages
πŸ• πŸ“— πŸ”
cover Let's Go Further!: Let's Go Further!
Alex Edwards
Published in 2021
582 pages
πŸ… πŸ“— πŸ”
cover Monolith to Microservices: Evolutionary Patterns to Transform Your Monolith
Sam Newman
Published in 2019
270 pages
πŸ• πŸ“—
cover Production Kubernetes: Production Kubernetes
Josh Rosso, Rich Lander, Alex Brand, John Harris
Published in 2021
506 pages
πŸ… πŸ“— πŸ”
cover Site Reliability Engineering: How Google Runs Production Systems
Betsy Beyer, Chris Jones, Jennifer Petoff, Niall Myrphy
Published in 2017
552 pages
πŸ• πŸ“— πŸ†™
cover System Design Interview: An insider's guide
Alex Xu
Published in 2020
309 pages
πŸ… πŸ“—
cover System Design Interview volume 2: An insider's guide
Alex Xu
Published in 2022
424 pages
πŸ… πŸ“—
cover Team Topologies: Team Topologies
Matthew Skelton, Manuel Pais
Published in 2019
240 pages
πŸ₯ πŸ“— πŸ†™

πŸ“Œ Worthy metions


Last modified 2024-03-25

⬆ back to top