Resources

A curated collection of books, videos, courses, and other educational resources that have shaped my understanding of software engineering, leadership, and professional development.

Books

Software Engineering & Architecture

Algorithms, 4th Edition
by Robert Sedgewick & Kevin Wayne
Essential text on data structures and algorithms analysis

Design Patterns: Elements of Reusable Object-Oriented Software
by Gang of Four (Gamma, Helm, Johnson, Vlissides)
The seminal work on software design patterns

99 Bottles of OOP
by Sandi Metz
Object-oriented programming and refactoring techniques

Advent of the Algorithm
by David Berlinski
History of algorithmic thinking and computer science origins

Leadership & Management

High Output Management
by Andy Grove
System for achieving lasting success in management

The Coaching Habit
by Michael Bungay Stanier
Seven essential questions for better leadership and coaching

Extreme Ownership
by Jocko Willink and Leif Babin
Leadership principles from Navy SEALs on taking responsibility

Crucial Conversations
by Kerry Patterson, Joseph Grenny, Ron McMillan, Al Switzler
Communication under high stakes, differing opinions, and strong emotions

Management
by Peter Drucker
Foundational management principles and practices

Personal Development

Deep Work
by Cal Newport
Professional activities in distraction-free concentration that create value

Ultralearning
by Scott Young
Strategies for learning hard things quickly and effectively

The Subtle Art of Not Giving a F*ck
by Mark Manson
Philosophy on focusing on what truly matters

DevOps & Cloud

Ansible for DevOps
by Jeff Geerling
Comprehensive guide to infrastructure automation with Ansible

Continuous Delivery
by Jez Humble and David Farley
Practices for reliable software releases

AI & Machine Learning

AI Engineering
by Chip Huyen
Building applications with foundation models

Online Courses

Programming & Development

React for Beginners
by Wes Bos
Thorough introduction to React for production applications

Advanced React
by Wes Bos
GraphQL, React, and React Testing

ES6 for Everyone
by Wes Bos
Comprehensive overview of ES6 JavaScript features

Algorithms Part 1
by Robert Sedgewick & Kevin Wayne (Princeton University)
Data structures and algorithms fundamentals

Cloud & DevOps

AWS Lambda
by A Cloud Guru
Serverless computing with AWS Lambda

AWS Certified Developer Associate
AWS certification preparation and cloud development practices

Test Driven Rails
by Upcase (thoughtbot)
Rails testing methodologies and best practices

Videos & Talks

Architecture & Design

Architecture—the Lost Years
by Robert C. Martin (Uncle Bob)
Clean Architecture principles and software design

Language in Context
by Eric Evans
Domain-Driven Design and ubiquitous language

Sandi Metz Collection

All the Little Things
Object-oriented design principles

Get a Whiff of This
Code smells and refactoring

Nothing is Something
Null object pattern and design

What Does OO Afford
Object-oriented programming benefits

Personal Development

The Power of Vulnerability
by Brené Brown
How vulnerability enables connection and authenticity

Listening to Shame
by Brené Brown
Understanding and dealing with shame

Business & Startups

pmarca Guide to Startups
by Marc Andreessen
Product/market fit and startup success factors

Educational Websites

InfoQ
Enterprise software development community and resources

Farnam Street
Decision making, mental models, and critical thinking

Test Double
Software consulting and development best practices

A* Algorithm Tutorial
by Amit Patel
Pathfinding algorithm explanation and implementation


This collection represents resources that have significantly contributed to my professional development as a software engineer and technical leader. Each resource offers practical insights that can be applied to real-world software development challenges.