Lean Software Systems Engineering for Developers: Managing Requirements, Complexity, Teams, and Change Like a Champ

  • 3h 19m
  • Chad Michel, Doug Durham
  • Apress
  • 2021

Graduate to the next level of your software development career, learning the tools you need to successfully manage the complexity of modern software systems.

Whether you are a developer at a small software company, or one of many developers at a large enterprise, your success directly correlates to the ability of your development team to rapidly respond to change. What makes this task challenging in today’s world, is that the technical challenges we as developers strive to overcome are becoming increasingly more complex. We have to consider many more options when it comes to things like requirements, solution hosting, support, pace of change, and generally with less time and warning.

A good developer knows that it is critical to manage every aspect of software development from soup to nuts, and understands that when details and decisions are left to chance, outcomes can be negatively impacted. Poor planning can result in increased errors, substandard quality, budget and schedule overruns, and result in the ultimate business failure, dissatisfied customers, and stakeholders.

This book will help you put on the lenses of a software engineer. You will come away with an understanding of how to view the entire spectrum of the software development process, learn valuable concepts, and apply these principles through meaningful examples, case studies, and source code.

What You Will Learn

  • Move beyond being a programmer to being a professional software engineer
  • Spend more time doing software development; minimize time spent dealing with ineffective or inadequate processes
  • Reduce errors in judgment and provide predictable outcomes, while still maintaining agility and responsiveness using Lean and Agile practices
  • Know the steps you can take to ensure a shared understanding among stakeholders
  • Discover tools to validate user experience early and often to minimize costly re-work
  • Develop software designs and architectures that enable long-term business agility Implement patterns and processes that result in “falling into the pit of success” instead of into the “pit of failure”
  • Adopt processes and patterns that will result in pervasive “institutionalized” quality
  • Understand the necessity of redefining the essential role of technical leadership to ensure team maturity and growth

This book is for software developers and team leaders who have struggled to implement design and development best practices due to lack of team resources, in-depth knowledge, or experience, and want a book designed to provide the confidence and foundational skills needed to achieve success.

About the Authors

Doug Durham is CEO of Don’t Panic Labs, a firm that helps companies innovate through the design and development of software technologies. He is also the co-founder of Nebraska Global (parent company of Don’t Panic Labs), a pioneer in the startup landscape in Nebraska. Doug has more than three decades of software engineering and development experience in aerospace and defense, healthcare, manufacturing, ecommerce, consumer web applications, and Internet network services. He is passionate about the process of solving problems through software, and the application of sound engineering principles and patterns to these efforts. Doug has taught at the University of Nebraska-Lincoln Raikes School of Computer Science, and serves on a College of Engineering advisory board. He often speaks at industry conferences on the topic of software engineering, and is a frequent guest lecturer at the University of Nebraska-Lincoln.

Chad Michel is Lead Software Architect for Don’t Panic Labs and has more than 20 years of software development and engineering experience. He helps clients solve problems through innovative software solutions. He graduated from the University of Nebraska-Lincoln with a bachelor’s degree in computer engineering and a master’s degree in computer science. Chad has worked for several companies in Lincoln, where he helped build a practice management application for lawyers, developed key features for an ecommerce application, and helped wrangle a content delivery network into a stable platform. He often speaks at technical meetups hosted by Don’t Panic Labs, as well as at many other conferences and technical groups. He regularly contributes to the Don’t Panic Labs blog. Chad is a fourth-degree black belt in Tae Kwon Do.

In this Book

  • Focusing on Software Development Outcomes Instead of Outputs
  • Gaining a Shared Understanding Throughout the Project
  • Validation of User Experience
  • Designing Software Systems That Age Well and Adapt to Change
  • Developers "Falling into the Pit of Success"
  • Institutionalized Quality
  • The Role of Chief Engineer
  • Bringing It All Together – Creating an Action Plan

YOU MIGHT ALSO LIKE

Rating 4.6 of 3447 users Rating 4.6 of 3447 users (3447)
Rating 4.3 of 86 users Rating 4.3 of 86 users (86)