Results for Software Leaders

Great software teams consistently deliver market success, technical success, and personal success for team members and their organizations.

For over 20 years, I’ve helped software organizations achieve success by unlocking business agility and technical excellence.

Hire Me

Picture of James Shore


Jim was there every step of the way... [Agile] has helped us to focus, to improve our throughput, and to strengthen our company culture. We have Jim Shore to thank for that.

Tod H., CEO

Product Leaders

Make smarter, more frequent bets: Increase the pace of delivery, align development with business goals, and engage customers.

Our investment with Jim was money well spent... I would highly recommend him to anyone who is looking at remaking his or her software development organization.

Jim G., Chief Product Officer

Engineering Leaders

Increase development capacity: Reduce time spent on defects and maintenance, eliminate release delays, and improve morale.

In my 40+ years working in the industry, I have worked with many consultants. I can honestly say that none has meshed as well with my team or achieved nearly the results that Jim has. I give Jim my highest recommendation.

Mikey B., Senior VP Engineering

Architects & Principal Engineers

Align to excellence: Diagnose systemic issues, identify and eliminate skill gaps, and resolve cross-team bottlenecks.

You influenced me to think in completely different ways, and to question traditional assumptions about everything I thought I knew about software—from leading a team to designing software to testing.

Chris W., Team Coach


The Art of Agile Development

This how-to guide is a comprehensive and practical guide for implementing Agile in your organization, with no-nonsense advice on planning, development, delivery, and management. Now in its second edition!

TDD Lunch & Learn Videos

This video series uses test-driven development (TDD) to develop a microservice and accompanying command-line application from scratch. It’s the perfect next step for learning how to apply TDD in the real world.

Testing With Nullables

“Nullables” are a novel technique for isolating production code from external systems. They’re particularly valuable as an alternative to mocks for creating fast, reliable tests.


Thought-provoking articles about software development process, design, and leadership.