RSSAmplifier

Blog

Jeff Doolittle

Software Architect. Strategic Business Leader. I help make good software professionals great!

jeffdoolittle.comRSS feed ↗63 posts

Latest posts

Adapting Constraints Without Losing Coherence

Healthy systems adapt constraints deliberately, tightening, relaxing, or retiring them as context changes without losing coherence.

Constraints on Teams and Decision-Making

Team structure, ownership boundaries, and decision rights are real design constraints that shape whether a system can remain coherent.

Constraints as Interfaces

Constraints become useful when they take concrete form as interfaces, contracts, boundaries, and operational commitments that teams can design against.

A Taxonomy of Constraints

A useful taxonomy helps architects distinguish business, financial, temporal, regulatory, operational, technical, organizational, and interface constraints before they jump to solutions.

What Makes a Constraint Good?

Good constraints clarify design, protect coherence, and create a viable space for exploration without collapsing into arbitrary mandates.

Leadership, Influence, and AI on The Persuasion Lab

Insights on persuasion, negotiation, influence and working effectively with AI.

Less Managing, More Leading with Motivational Interviewing

Motivational Interviewing gives transformational leaders a practical way to build trust, fight for clarity, and empower people without slipping into command-and-control management.

Techlandia Podcast Appearance

I joined Techlandia for a conversation on software architecture, leadership, and building better systems.

The Architect and the AI: Migrating from Jekyll to Astro with GitHub Copilot

How I migrated my personal site from a deprecated Ruby-based framework to a modern Astro stack — through conversation, not code.

From Dormant to Redesigned: Two Hours with GitHub Copilot

How I used GitHub Copilot to completely redesign my personal site in about two hours — and what that reveals about AI-assisted development.

Multi-Model AI with Philip Kiely

How do you build AI-native software that goes beyond a simple ChatGPT wrapper?

Programmers as Code Health Guardians with Artie Shevchenko

What is the role of human programmers in the age of AI, and why does code health matter more than ever?

Balancing Coupling in Software Design with Vlad Khononov

How do you balance coupling in software design to manage complexity and build resilient systems?

MassTransit with Chris Patterson

What is a message bus and when do you need one?

Software Quality with Steve Smith

How do you foster a culture of quality in a software team?

Leaders and Software Engineers with Chuck Weindorf

How do you cultivate a positive, innovative software engineering culture?

The Role of the Software Architect with Ori Saporta

Highlighting what is often missed or overlooked

Los Cabos 2024

"It sounds so sweet with the sun sinking low" - James Taylor

Geospatial Technologies with John Frandsen

Learn about the challenges and opportunities of location-aware applications

Software Engineering Values with Jonathan Crossland

An organization is a collaboration system

Drawbridge Down + Missing It

Fulfilling a dream

Back ends for Front ends with Jens Neuse

Leverage the power of composition to reduce the integration burden of front-end teams

Software as an Engineering Discipline with Chad Michel

The software industry awaits its transformation to a true engineering discipline

Unleash the Power of Technical Empathy

Good abstractions put the hard work where it belongs: on the implementer, not the integrator.

Dataware with Dan DeMers

Dataware platforms leverage an operational data fabric to liberate data from apps and other silos and connect it together in real-time data networks.

Platform Engineering with Luca Galante

Platform engineering is the discipline of designing and building toolchains and workflows that enable self-service capabilities for software engineering organizations

Ditching Hourly: From Web Dev to Software Architect

Learn a bit about my career journey and passion for good system design

Event Modeling with Adam Dymitruk

Learn how to leverage the event modeling approach to discovering requirements and designing software systems.

Software Engineering in Physics Research with Ryan Magee

Find out how scientists use software as a critical component of their research.

GraphQL with Tanmai Gopal

Learn about what makes GraphQL unique and how it compares to other API design methodologies.

A Philosophy of Software Design with John Ousterhout

Managing complexity in software system design.

Humans as Value Creators: The Unfiltered Build Podcast

Humans thrive as value creators.

Cross Platform UI on Software Engineering Radio

Learn about the challenges and opportunities of cross platform applications.

Mindfulness

Let if flow through you

The Tao of Software Architecture: An Introduction

Perspectives for clarity, responsibility, and value creation.

Complexity in Engineering: The Engineering Career Coach Podcast

Contain complexity before it contains you!

Design Before Technology

A good design requires adoption of and adherence to critical constraints. No great work of art, literature, architecture or industry ever came into existence without critical constraints.

Dapr Distributed Application Runtime on Software Engineering Radio

The Dapr Distributed Application Runtime empowers you to leverage industry best practices and focus on your application’s logic.

Infrastructure as Code on Software Engineering Radio

Learn how to apply and good engineering practices like reversibility and automation to your Dev Ops and resource provisioning processes with Infrastructure as Code.

Managing Technical Debt on Software Engineering Radio

Technical debt affects every software system and project while managing it effectively remains an elusive goal for many software companies and teams.

Liberating Constraints

Good constraints provide the freedom to fully explore a problem or solution space.

The Fallacies of Distributed Computing on Software Engineering Radio

For decades the Fallacies of Distributed computing have helped software thinkers to contend with the promises and pitfalls of distributed systems.

Immutable Architecture Book Club

Discover how mathematics, logic, immutability and other concepts can give you an edge when designing and running distributed systems.

REST *Still* Wrecks Microservices! Spokane .NET User Group Presentation

My latest efforts to help you avoid the Pit of Despair!

The Programmer's Brain on Software Engineering Radio

Felienne joined me on Software Engineering Radio for a conversation about her recently published book, The Programmer's Brain.

Train Surfer

Ride the rails!

The Five factor Model of Cultural Alignment

A lack of cultural alignment leads to negative outcomes for teams and organizations. It often goes unnoticed or neglected while risks ramp up and the ramifications become more costly and challenging to remedy.

Exploring Requirements

Improve your skills at discovering, defining, and distilling requirements.

Software Architecture as Complexity Containment

Ultimately, just one fundamental metric matters when evaluating the competence of software architects: the ability to identify, assess and ultimately contain complexity.

The Art of Immutable Architecture with Michael L. Perry

A Software Engineering Radio episode with Michael L. Perry on his recently published book.