Software Engineering at Google: Lessons Learned from Programming Over Time


Titus Winters - 2020
    With this book, you'll get a candid and insightful look at how software is constructed and maintained by some of the world's leading practitioners.Titus Winters, Tom Manshreck, and Hyrum K. Wright, software engineers and a technical writer at Google, reframe how software engineering is practiced and taught: from an emphasis on programming to an emphasis on software engineering, which roughly translates to programming over time.You'll learn:Fundamental differences between software engineering and programmingHow an organization effectively manages a living codebase and efficiently responds to inevitable changeWhy culture (and recognizing it) is important, and how processes, practices, and tools come into play

Lean Customer Development: Building Products Your Customers Will Buy


Cindy Alvarez - 2014
    These insights may shake your assumptions, but they'll help you reach the "ah-ha!" moments that inspire truly great products.Validate or invalidate your hypothesis by talking to the right peopleLearn how to conduct successful customer interviews play-by-playDetect a customer's behaviors, pain points, and constraintsTurn interview insights into Minimum Viable Products to validate what customers will use and buyAdapt customer development strategies for large companies, conservative industries, and existing products

Working Effectively with Legacy Code


Michael C. Feathers - 2004
    This book draws on material Michael created for his renowned Object Mentor seminars, techniques Michael has used in mentoring to help hundreds of developers, technical managers, and testers bring their legacy systems under control. The topics covered include: Understanding the mechanics of software change, adding features, fixing bugs, improving design, optimizing performance Getting legacy code into a test harness Writing tests that protect you against introducing new problems Techniques that can be used with any language or platform, with examples in Java, C++, C, and C# Accurately identifying where code changes need to be made Coping with legacy systems that aren't object-oriented Handling applications that don't seem to have any structureThis book also includes a catalog of twenty-four dependency-breaking techniques that help you work with program elements in isolation and make safer changes.

The Art of Doing Science and Engineering: Learning to Learn


Richard Hamming - 1996
    By presenting actual experiences and analyzing them as they are described, the author conveys the developmental thought processes employed and shows a style of thinking that leads to successful results is something that can be learned. Along with spectacular successes, the author also conveys how failures contributed to shaping the thought processes. Provides the reader with a style of thinking that will enhance a person's ability to function as a problem-solver of complex technical issues. Consists of a collection of stories about the author's participation in significant discoveries, relating how those discoveries came about and, most importantly, provides analysis about the thought processes and reasoning that took place as the author and his associates progressed through engineering problems.

Ship It!


Jared Richardson - 2005
    You'll get quick, easy-to-follow advice on modern practices: which to use, and when they should be applied. This book avoids current fashion trends and marketing hype; instead, readers find page after page of solid advice, all tried and tested in the real world.Aimed at beginning to intermediate programmers, Ship It! will show you:Which tools help, and which don't How to keep a project moving Approaches to scheduling that work How to build developers as well as product What's normal on a project, and what's not How to manage managers, end-users and sponsors Danger signs and how to fix them Few of the ideas presented here are controversial or extreme; most experienced programmers will agree that this stuff works. Yet 50 to 70 percent of all project teams in the U.S. aren't able to use even these simple, well-accepted practices effectively. This book will help you get started.Ship It! begins by introducing the common technical infrastructure that every project needs to get the job done. Readers can choose from a variety of recommended technologies according to their skills and budgets. The next sections outline the necessary steps to get software out the door reliably, using well-accepted, easy-to-adopt, best-of-breed practices that really work.Finally, and most importantly, Ship It! presents common problems that teams face, then offers real-world advice on how to solve them.

Hacking Growth: How Today's Fastest-Growing Companies Drive Breakout Success


Sean Ellis - 2017
    It seems hard to believe today, but there was a time when Airbnb was the best-kept secret of travel hackers and couch surfers, Pinterest was a niche web site frequented only by bakers and crafters, LinkedIn was an exclusive network for C-suite executives and top-level recruiters, Facebook was MySpace's sorry step-brother, and Uber was a scrappy upstart that didn't stand a chance against the Goliath that was New York City Yellow Cabs.So how did these companies grow from these humble beginnings into the powerhouses they are today? Contrary to popular belief, they didn't explode to massive worldwide popularity simply by building a great product then crossing their fingers and hoping it would catch on. There was a studied, carefully implemented methodology behind these companies' extraordinary rise. That methodology is called Growth Hacking, and it's practitioners include not just today's hottest start-ups, but also companies like IBM, Walmart, and Microsoft as well as the millions of entrepreneurs, marketers, managers and executives who make up the community of GrowthHackers.com.Think of the Growth Hacking methodology as doing for market-share growth what Lean Start-Up did for product development, and Scrum did for productivity. It involves cross-functional teams and rapid-tempo testing and iteration that focuses customers attaining them, retaining them, engaging them, and motivating them to come back and buy more. An accessible and practical toolkit that teams and companies in all industries can use to increase their customer base and market share, this book walks readers through the process of creating and executing their own custom-made growth hacking strategy. It is a must read for any marketer, entrepreneur, innovator or manger looking to replace wasteful big bets and "spaghetti-on-the-wall" approaches with more consistent, replicable, cost-effective, and data-driven results.

The Age of Agile: How Smart Companies Are Transforming the Way Work Gets Done


Stephen Denning - 2018
    Companies that embrace Agile Management learn to connect everyone and everything . . . all the time. They can deliver instant, intimate, frictionless value on a large scale.Agile began emerging many decades ago, but truly took off in the software development industry. Sparking dramatic improvements in quality, innovation, and speed-to-market, the Agile movement is now spreading quickly throughout all kinds of companies. It enables a team, a unit, or an enterprise to nimbly adapt and upgrade products and services to meet rapidly changing technology and customer needs. And the process is applicable anywhere — companies don’t need to be born Agile, like Spotify. Even centuries-old Barclays is making the transition and reaping rewards.Filled with examples from every sector, The Age of Agile helps readers:Master the three laws of Agile Management (team, customer, network) ● Embrace the new mindset ● Overcome constraints ● Employ meaningful metrics ● Make the entire organization Agile ● And moreWith this breakthrough approach, even global giants can learn to act entrepreneurially. Their future depends on it.

Beautiful Evidence


Edward R. Tufte - 2006
    Beautiful Evidence is about how seeing turns into showing, how data and evidence turn into explanation. The book identifies excellent and effective methods for showing nearly every kind of information, suggests many new designs (including sparklines), and provides analytical tools for assessing the credibility of evidence presentations (which are seen from both sides: how to produce and how to consume presentations). For alert consumers of presentations, there are chapters on diagnosing evidence corruption and PowerPoint pitches. Beautiful Evidence concludes with two chapters that leave the world of pixel and paper flatland representations - and move onto seeing and thinking in space land, the real-land of three-space and time.

Designing Data-Intensive Applications


Martin Kleppmann - 2015
    Difficult issues need to be figured out, such as scalability, consistency, reliability, efficiency, and maintainability. In addition, we have an overwhelming variety of tools, including relational databases, NoSQL datastores, stream or batch processors, and message brokers. What are the right choices for your application? How do you make sense of all these buzzwords?In this practical and comprehensive guide, author Martin Kleppmann helps you navigate this diverse landscape by examining the pros and cons of various technologies for processing and storing data. Software keeps changing, but the fundamental principles remain the same. With this book, software engineers and architects will learn how to apply those ideas in practice, and how to make full use of data in modern applications. Peer under the hood of the systems you already use, and learn how to use and operate them more effectively Make informed decisions by identifying the strengths and weaknesses of different tools Navigate the trade-offs around consistency, scalability, fault tolerance, and complexity Understand the distributed systems research upon which modern databases are built Peek behind the scenes of major online services, and learn from their architectures

A Seat at the Table


Mark Schwartz - 2017
    But honest and open conversations are not taking place between management and Agile delivery teams.In A Seat at the Table, CIO Mark Schwartz explores the role of IT leadership as it is now and opens the door to reveal IT leadership as it should be - an integral part of the value creation engine. With wit and easy style, Schwartz reveals that the only way to become an Agile IT leader is to be courageous - to throw off the attitude and assumptions that have kept CIOs from taking their rightful seat at the table. CIOs, step on up, your seat at the table is waiting for you.Listening Length: 9 hours and 20 minutes

How Google Tests Software


James A. Whittaker - 2012
    Legendary testing expert James Whittaker, until recently a Google testing leader, and two top Google experts reveal exactly how Google tests software, offering brand-new best practices you can use even if you're not quite Google's size...yet! Breakthrough Techniques You Can Actually Use Discover 100% practical, amazingly scalable techniques for analyzing risk and planning tests...thinking like real users...implementing exploratory, black box, white box, and acceptance testing...getting usable feedback...tracking issues...choosing and creating tools...testing "Docs & Mocks," interfaces, classes, modules, libraries, binaries, services, and infrastructure...reviewing code and refactoring...using test hooks, presubmit scripts, queues, continuous builds, and more. With these techniques, you can transform testing from a bottleneck into an accelerator-and make your whole organization more productive!

Effective Devops: Building a Culture of Collaboration, Affinity, and Tooling at Scale


Jennifer Davis - 2015
    Authors Katherine Daniels and Jennifer Davis provide with actionable strategies you can use to engineer sustainable changes in your environment regardless of your level within your organization.

No Rules Rules: Netflix and the Culture of Reinvention


Reed Hastings - 2020
    It has led nothing short of a revolution in the entertainment industries, generating billions of dollars in annual revenue while capturing the imaginations of hundreds of millions of people in over 190 countries. But to reach these great heights, Netflix, which launched in 1998 as an online DVD rental service, has had to reinvent itself over and over again. This type of unprecedented flexibility would have been impossible without the counterintuitive and radical management principles that cofounder Reed Hastings established from the very beginning. Hastings rejected the conventional wisdom under which other companies operate and defied tradition to instead build a culture focused on freedom and responsibility, one that has allowed Netflix to adapt and innovate as the needs of its members and the world have simultaneously transformed.Hastings set new standards, valuing people over process, emphasizing innovation over efficiency, and giving employees context, not controls. At Netflix, there are no vacation or expense policies. At Netflix, adequate performance gets a generous severance, and hard work is irrel-evant. At Netflix, you don't try to please your boss, you give candid feedback instead. At Netflix, employees don't need approval, and the company pays top of market. When Hastings and his team first devised these unorthodox principles, the implications were unknown and untested. But in just a short period, their methods led to unparalleled speed and boldness, as Netflix quickly became one of the most loved brands in the world.Here for the first time, Hastings and Erin Meyer, bestselling author of The Culture Map and one of the world's most influential business thinkers, dive deep into the controversial ideologies at the heart of the Netflix psyche, which have generated results that are the envy of the business world. Drawing on hundreds of interviews with current and past Netflix employees from around the globe and never-before-told stories of trial and error from Hastings's own career, No Rules Rules is the fascinating and untold account of the philosophy behind one of the world's most innovative, imaginative, and successful companies.

Storytelling with Data: A Data Visualization Guide for Business Professionals


Cole Nussbaumer Knaflic - 2015
    You'll discover the power of storytelling and the way to make data a pivotal point in your story. The lessons in this illuminative text are grounded in theory, but made accessible through numerous real-world examples--ready for immediate application to your next graph or presentation.Storytelling is not an inherent skill, especially when it comes to data visualization, and the tools at our disposal don't make it any easier. This book demonstrates how to go beyond conventional tools to reach the root of your data, and how to use your data to create an engaging, informative, compelling story. Specifically, you'll learn how to:Understand the importance of context and audience Determine the appropriate type of graph for your situation Recognize and eliminate the clutter clouding your information Direct your audience's attention to the most important parts of your data Think like a designer and utilize concepts of design in data visualization Leverage the power of storytelling to help your message resonate with your audience Together, the lessons in this book will help you turn your data into high impact visual stories that stick with your audience. Rid your world of ineffective graphs, one exploding 3D pie chart at a time. There is a story in your data--Storytelling with Data will give you the skills and power to tell it!

The Messy Middle: Finding Your Way Through the Hardest and Most Crucial Part of Any Bold Venture


Scott Belsky - 2018
    Creating something from nothing is an unpredictable journey. The first mile births a new idea into existence, and the final mile is all about letting go. We love talking about starts and finishes, even though the middle stretch is the most important and often the most ignored and misunderstood.    Broken into three sections with 100+ lessons, this no-nonsense book will help you: • Endure the roller coaster of successes and failures by strengthening your resolve, embracing the long-game, and short-circuiting your reward system to get to the finish line. • Optimize what’s working so you can improve the way you hire, better manage your team, and meet your customers’ needs. • Finish strong and avoid the pitfalls many entrepreneurs make, so you can overcome resistance, exit gracefully, and continue onto your next creative endeavor with ease. With insightful interviews from today’s leading entrepreneurs, artists, writers, and executives, as well as Belsky’s own experience working with companies like Airbnb, Pinterest, Uber, and sweetgreen, The Messy Middle will outfit you to find your way through the hardest parts of any bold project or new venture.