Programming Books C Java PHP Python Learn more Browse Programming Books
Essential Skills for the Agile Developer: A Guide to Bett... and over one million other books are available for Amazon Kindle. Learn more

Sorry, this item is not available in
Image not available for
Image not available

To view this video download Flash Player


Sign in to turn on 1-Click ordering
Sell Us Your Item
For a $5.00 Gift Card
Trade in
More Buying Choices
Have one to sell? Sell yours here
Start reading Essential Skills for the Agile Developer on your Kindle in under a minute.

Don't have a Kindle? Get your Kindle here, or download a FREE Kindle Reading App.

Essential Skills for the Agile Developer: A Guide to Better Programming and Design [Paperback]

Alan Shalloway , Scott Bain , Ken Pugh , Amir Kolsky
4.4 out of 5 stars  See all reviews (8 customer reviews)

List Price: $49.99
Price: $35.82 & FREE Shipping. Details
You Save: $14.17 (28%)
o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o
Only 4 left in stock (more on the way).
Ships from and sold by Gift-wrap available.
Want it Tuesday, July 15? Choose One-Day Shipping at checkout. Details
Free Two-Day Shipping for College Students with Amazon Student


Amazon Price New from Used from
Kindle Edition $22.99  
Paperback $35.82  
Shop the New Digital Design Bookstore
Check out the Digital Design Bookstore, a new hub for photographers, art directors, illustrators, web developers, and other creative individuals to find highly rated and highly relevant career resources. Shop books on web development and graphic design, or check out blog posts by authors and thought-leaders in the design industry. Shop now

Book Description

August 29, 2011 0321543734 978-0321543738 1
Agile has become today’s dominant software development paradigm, but agile methods remain difficult to measure and improve. Essential Skills for the Agile Developer fills this gap from the bottom up, teaching proven techniques for assessing and optimizing both individual and team agile practices.


Written by four principals of Net Objectives—one of the world’s leading agile training and consulting firms—this book reflects their unsurpassed experience helping organizations transition to agile. It focuses on the specific actions and insights that can deliver the greatest design and programming improvements with economical investment.


The authors reveal key factors associated with successful agile projects and offer practical ways to measure them. Through actual examples, they address principles, attitudes, habits, technical practices, and design considerations—and above all, show how to bring all these together to deliver higher-value software. Using the authors’ techniques, managers and teams can optimize the whole organization and the whole product across its entire lifecycle.


Essential Skills for the Agile Developer shows how to


  • Perform programming by intention
  • Separate use from construction
  • Consider testability before writing code
  • Avoid over- and under-design
  • Succeed with Acceptance Test Driven Development (ATDD)
  • Minimize complexity and rework
  • Use encapsulation more effectively and systematically
  • Know when and how to use inheritance
  • Prepare for change more successfully
  • Perform continuous integration more successfully
  • Master powerful best practices for design and refactoring

Frequently Bought Together

Essential Skills for the Agile Developer: A Guide to Better Programming and Design + Lean UX: Applying Lean Principles to Improve User Experience
Price for both: $50.31

Buy the selected items together

Editorial Reviews


“I tell teams that the lean and agile practices should be treated like a buffet: Don’t try and take everything, or it will make you ill–try the things that make sense for your project. In this book the authors have succinctly described the ‘why’ and the ‘how’ of some of the most effective practices, enabling all software engineers to write quality code for short iterations in an efficient manner.”

Kay Johnson

Software Development Effectiveness Consultant, IBM


“Successful agile development requires much more than simply mastering a computer language. It requires a deeper understanding of agile development methodologies and best practices. Essential Skills for the Agile Developer provides the perfect foundation for not only learning but truly understanding the methods and motivations behind agile development.”

R.L. Bogetti

Lead System Designer, Baxter Healthcare


Essential Skills for the Agile Developer is an excellent resource filled with practical coding examples that demonstrate key agile practices.”

Dave Hendricksen

Software Architect, Thomson Reuters

About the Author

Alan Shalloway, founder and CEO of Net Objectives, is a renowned thought leader, trainer, and coach in Lean, Kanban, product portfolio management, Scrum, and agile design. His books include Lean-Agile Software Development (Addison-Wesley, 2009), Lean-Agile Pocket Guide For Scrum Teams (Lean-Agile Press, 2009), and both editions of Design Patterns Explained (Addison-Wesley, 2001 and 2004).


Scott Bain, senior consultant at Net Objectives, is a 35+-year veteran in software development, engineering, and design. He authored the Jolt award-winning book Emergent Design (Addison-Wesley, 2008).


Ken Pugh, a fellow consultant at Net Objectives, helps companies move to Lean-Agility through training and coaching. His books include Lean-Agile Acceptance Test Driven Development (Addison-Wesley, 2011) and the Jolt Award-winner Prefactoring (O’Reilly, 2005).


Amir Kolsky is a senior consultant, coach, and trainer for Net Objectives with more than 25 years of experience.

Product Details

  • Paperback: 272 pages
  • Publisher: Addison-Wesley Professional; 1 edition (August 29, 2011)
  • Language: English
  • ISBN-10: 0321543734
  • ISBN-13: 978-0321543738
  • Product Dimensions: 9.1 x 7.5 x 0.8 inches
  • Shipping Weight: 1.4 pounds (View shipping rates and policies)
  • Average Customer Review: 4.4 out of 5 stars  See all reviews (8 customer reviews)
  • Amazon Best Sellers Rank: #1,078,644 in Books (See Top 100 in Books)

More About the Author

Alan Shalloway is the founder and CEO of Net Objectives. With over 40 years of experience, Alan is an industry thought leader in Lean, Kanban, product portfolio management, Scrum and agile design (see for useful information on these and other topics). He helps companies transition to Lean and Agile methods enterprise-wide as well teaches courses in these areas. Alan has developed training and coaching methods for Lean-Agile that have helped Net Objectives' clients achieve long-term, sustainable productivity gains.

Alan is a popular speaker at prestigious conferences worldwide. He is the primary author of Design Patterns Explained: A New Perspective on Object-Oriented Design, Lean-Agile Pocket Guide for Scrum Teams, Lean-Agile Software Development: Achieving Enterprise Agility and Essential Skills for the Agile Developer.

Alan has worked in dozens of industries over his career. He is a co-founder and board member for the Lean Software and Systems Consortium. He has a Masters in Computer Science from M.I.T. as well as a Masters in Mathematics from Emory University.

Follow Alan on twitter @alshalloway

Customer Reviews

Most Helpful Customer Reviews
7 of 7 people found the following review helpful
5.0 out of 5 stars Nuggets of Wisdom that has been Tested Over Time November 8, 2011
I have been a fan of the Net Objectives books since the first edition of Design Patterns Explained: A New Perspective on Object-Oriented Design (2nd Edition). That is still my favorite design patterns book.

When it comes to the agile movement I still remain torn. I watch it change and shift the industry's development processes to improve the customer satisfaction delivered by software teams successfully executing the processes, while at the same time I watch more teams use it as an excuse for the chaos they live in.

The good news is books like this one offer sound advice on achieving agility. The bad news is the agile team members I mentioned above that are living in daily chaos never pick them up. They are too busy putting out the day's hottest fire.

Moving a team that cannot produce using waterfall or RUP to a shiny new agile process will do nothing but make them produce crappier software. An inexperienced team that can't produce quality software with one process won't start producing quality by claiming to be agile.

I tell you all that because I want you to understand where I come from when it comes to agile methodologies. I am not an Agile Movement Zealot, but I find the guidance provided by this book very valuable.

The book has chapters on Programming by Intention, Separate Use from Construction, Define Tests Up Front, Shalloway's Law and Shalloway's Principle, Encapsulate That!, Interface-Oriented Design, Acceptance Test--Driven Development (ATDD), Avoid Over- and Under-Design, Continuous Integration, Commonality and Variability Analysis, Refactor to the Open-Closed, Needs versus Capabilities Interfaces, and When and How to Use Inheritance.
Read more ›
Comment | 
Was this review helpful to you?
5 of 5 people found the following review helpful
4.0 out of 5 stars Well written book with a misleading title December 17, 2011
This is a well written book with a misleading title, a better title would be Essential Skills for the Object Oriented Developer (although most of the information would apply to Functional programmers also). I understand why they choose the title, as any developer who wants to do agile development must have a very firm grasp on these topics first. However, actual Agile techniques are barely mentioned, so anyone who buys this book looking to learn how to play planning poker or how to create an effective burn down chart will be disappointed.

This is a short book at just over 200 pages, and as such it will not be very useful when it comes to teaching a non programmer how to program. The entire book is well written and frequently insightful. I found the introduction (preface and notes) and its quotes from Buckminster Fuller especially thought provoking with its unique way of looking at software development.

The book is made up of a series short chapters, each of which briefly covers one programming best practice, which the book refers to as .Trim Tabs.. The .Trim Tabs. concept is explained in the introduction and is a way to look at the effect that minor changes to the way code is written can have major effects on productivity. Each chapter goes into just enough depth for someone with programming experience to understand the concept and nothing more. Each chapter also is very good at giving an example of a good book that is specific to the current topic so that anyone who wants more in depth information can easily find it.

The first half of the book is dedicated to the low level practices of development such as refactoring, test driven development, encapsulation, and removing redundant code.
Read more ›
Comment | 
Was this review helpful to you?
2 of 2 people found the following review helpful
4.0 out of 5 stars Practical guideline to improve code quality December 30, 2011
This book covers a set of programming and design practices, that help software developers to deliver better products. Each practices is explored in detail, describing the how and why. This book can be used to improve your programing skills, and define your own set of design and coding guidelines. Among the practices described are "Separate Use from Construction", Encapsulation, Test Driven Design, Continuous Integration, and Refactoring.

I really appreciate it that the authors took the time to explain why a practice is so important, and what the benefits are when the practice is used. Seeing the benefits increase the change that people try the practice, learn it, and keep on using it.

If you consider quality important (who doesn't), and are looking for ways to develop better software, this book might be interesting for you!
Comment | 
Was this review helpful to you?
1 of 1 people found the following review helpful
5.0 out of 5 stars An excellent book for any developer February 13, 2012
As part of Net Objectives' Lean-Agile series, the authors' intent is to teach the "minimal set of skills developers need on the journey toward becoming adept at incremental development." In my opinion they've more than met that goal.

With a focus on the fundamentals of good software development, "Essential Skills" is one of those rare books that is valuable to both beginners and experienced developers. Beginners will learn to develop high quality software, while experienced developers will be reminded of valuable practices they may have dropped while attempting to meet aggressive deadlines. But there's more.

The authors also describe the benefits gained, which is quite useful if you're often asked to "cut corners" and deliver something sooner. (Imagine flashes of lightning and ominous music here.) Once business people see how rushing things out the door leads to lower code quality, and eventually results in longer deliver times, they tend to back off a bit.

You've no doubt heard that moving a team that produces so-so software to an agile process won't improve the quality. They'll just produce it faster. However, using the skills you learn from this book will increase the quality of your software. And, over time, you may notice that it's sped things up too - whether you go agile or not.

In short, I strongly recommend this book for both beginning and experienced developers, no matter what methodology you follow. I found myself nodding in agreement more than a few times as I read, and I think you will too.

Oh, yes. One more thing. If you do nothing else, find someplace to read the Preface. Yes, that's right, the Preface. It's only two pages, but you'll learn about something called trim tabs and how Net Objectives applies them to software development. I think that if you understand the principle and find a way to apply it to your life, you will see great benefits. I don't know for sure yet, but I intend to find out.
Comment | 
Was this review helpful to you?

What Other Items Do Customers Buy After Viewing This Item?


There are no discussions about this product yet.
Be the first to discuss this product with the community.
Start a new discussion
First post:
Prompts for sign-in

Look for Similar Items by Category