Tradeoffs in the Software Workflow

preview_player
Показать описание
Title: Tradeoffs in the Software Workflow
Date: October 26, 2022
Duration: 1 HR

ABSTRACT

Software becomes valuable when it is released to users. DevOps methodology and works like “The Phoenix Project” rightfully point out that a major goal is to reduce the amount of “work in progress” - features that are in development but not released aren’t providing value, and tend to be less stable. Research from DORA in works like “Accelerate” provide a statistical justification: high performing software organizations ship small changes constantly, and have higher velocity and stability as a result. And yet, when we conceptualize the software workflow it seems like we have a lot of steps and processes: design, development, unit testing, code review, presubmit testing, submission, post-submit CI, integration tests, release qualification tests, canarying, monitoring, release.

In this talk we’ll try to make sense of two forces that seem to be in tension: fast workflows and release processes vs. the ever-expanding galaxy of workflow best practices. Along the way we’ll propose mechanisms to compare the value of defects spotted before release, and tie all of this back to fundamental definitions of software engineering: programming mixed with time and other programmers.

SPEAKER
Titus Winters
Principal Software Engineer, Google
Titus is a Principal Software Engineer at Google, where he has worked since 2010. He is the library lead for Google’s C++ codebase: 250 million lines of code that will be edited by 12K distinct engineers in a month. He served for several years as the chair of the subcommittee for the design of the C++ standard library. For the last 10 years, Titus and his teams have been organizing, maintaining, and evolving the foundational components of Google’s C++ codebase using modern automation and tooling. Along the way, he has started several Google projects that are believed to be in the top 10 largest refactorings in human history. That unique scale and perspective has informed all of his thinking on the care and feeding of software systems. His book Software Engineering at Google (aka “The Flamingo Book”) was published by O’Reilly in early 2020. He uses that experience to represent modern software engineering practice for CS2023, updating curriculum guidelines for undergraduate institutions.

MODERATOR
George Fairbanks
Software Engineer, Google
George Fairbanks is a software engineer at Google and the author of the book, "Just Enough Software Architecture." He writes the Pragmatic Designer column for IEEE Software magazine and leads the software design education program at Google.
Рекомендации по теме
Комментарии
Автор

Got a few great recommendations to read!

selenatorres