Book picks similar to
Quality Software Management V 1 – Systems Thinking by Gerald M. Weinberg
software
management
testing
computer-science
A Guide to the Project Management Body of Knowledge (PMBOK® Guide)
Project Management Institute - 1995
This internationally recognized standard provides the essential tools to practice project management and deliver organizational results.
Inspired: How to Create Tech Products Customers Love
Marty Cagan - 2008
The goal of the book is to share the techniques of the best companies. This book is aimed primarily at Product Managers working on technology-powered products. That includes the hundreds of "tech companies" like Google, Facebook, Amazon, Twitter and the like, as well as the thousands of companies moving to leverage technology (financial companies, media companies, retailers, manufacturers, nearly every industry). Inspired covers companies from early stage start-ups to large, established companies. The products might be consumer products or devices, business services for small businesses to enterprises, internal tools, and developer platforms.Inspired is secondarily aimed at the designers, engineers, user researchers and data scientists that work closely with the product managers on product teams at these same companies.
Building a DevOps Culture
Mandi Walls - 2013
But, as Mandi Walls explains in this Velocity report, DevOps is really about changing company culture—replacing traditional development and operations silos with collaborative teams of people from both camps.
The DevOps movement has produced some efficient teams turning out better products faster. The tough part is initiating the change. This report outlines strategies for managers looking to go beyond tools to build a DevOps culture among their technical staff.
Topics include:
Documenting reasons for changing to DevOps before you commit
Defining meaningful and achievable goals
Finding a technical leader to be an evangelist, tools and process expert, and shepherd
Starting with a non-critical but substantial pilot project
Facilitating open communication among developers, QA engineers, marketers, and other professionals
Realigning your team’s responsibilities and incentives
Learning when to mediate disagreements and conflicts
Download this free report and learn how to the DevOps approach can help you create a supportive team environment built on communication, respect, and trust.
Mandi Walls is a Senior Consultant with Opscode.
An Elegant Puzzle: Systems of Engineering Management
Will Larson - 2019
Management is a key part of any organization, yet the discipline is often self-taught and unstructured. Getting to the good solutions of complex management challenges can make the difference between fulfillment and frustration for teams, and, ultimately, the success or failure of companies. Will Larson's An Elegant Puzzle orients around the particular challenges of engineering management--from sizing teams to technical debt to succession planning--and provides a path to the good solutions. Drawing from his experience at Digg, Uber, and Stripe, Will Larson has developed a thoughtful approach to engineering management that leaders of all levels at companies of all sizes can apply. An Elegant Puzzle balances structured principles and human-centric thinking to help any leader create more effective and rewarding organizations for engineers to thrive in.
The Visible Ops Handbook: Starting ITIL in 4 Practical Steps
Kevin Behr - 2004
Visible Ops is comprised of four prescriptive and self-fueling steps that take an organization from any starting point to a continually improving process. MAKING ITIL ACTIONABLE Although the Information Technology Infrastructure Library (ITIL) provides a wealth of best practices, it lacks prescriptive guidance: What do you implement first, and how do you do it? Moreover, the ITIL books remain relatively expensive to distribute. Other information, publicly available from a variety of sources, is too general and vague to effectively aid organizations that need to start or enhance process improvement efforts. The Visible Ops booklet provides a prescriptive roadmap for organizations beginning or continuing their IT process improvement journey. WHY DO WE NEED VISIBLE OPS? The Visible Ops methodology was developed because there was not a satisfactory answer to the question: "I believe in the need for IT process improvement, but where do I start?" Since 2000, Gene Kim and Kevin Behr have met with hundreds of IT organizations and identified eight high-performing IT organizations with the highest service levels, best security, and best efficiencies. For years, they studied these high-performing organizations to figure out the secrets to their success. Visible Ops codifies how these organizations achieved their transformation from good to great, showing how interested organizations can replicate the key processes of these high-performing organizations in just four steps: 1. Stabilize Patient, Modify First Response - Almost 80% of outages are self-inflicted. The first step is to control risky changes and reduce MTTR by addressing how changes are managed and how problems are resolved. 2. Catch and Release, Find Fragile Artifacts - Often, infrastructure exists that cannot be repeatedly replicated. In this step, we inventory assets, configurations and services, to identify those with the lowest change success rates, highest MTTR and highest business downtime costs. 3. Establish Repeatable Build Library - The highest return on investment is implementing effective release management processes. This step creates repeatable builds for the most critical assets and services, to make it "cheaper to rebuild than to repair." 4. Enable Continuous Improvement - The previous steps have progressively built a closed-loop between the Release, Control and Resolution processes. This step implements metrics to allow continuous improvement of all of these process areas, to best ensure that business objectives are met.
The Manager's Path: A Guide for Tech Leaders Navigating Growth and Change
Camille Fournier - 2017
Tech companies in general lack the experience, tools, texts, and frameworks to do it well. And the handful of books that share tips and tricks of engineering management don t explain how to supervise employees in the face of growth and change.In this book, author Camille Fournier takes you through the stages of technical management, from mentoring interns to working with the senior staff. You ll get actionable advice for approaching various obstacles in your path, whether you re a new manager, a mentor, or a more experienced leader looking for fresh advice. Pick up this book and learn how to become a better manager and leader in your organization. * Discover how to manage small teams and large/multi-level teams * Understand how to build and bootstrap a unifying culture in teams * Deal with people problems and learn how to mentor other managers and new leaders * Learn how to manage yourself: avoid common pitfalls that challenge many leaders * Obtain several practices that you can incorporate and practice along the way
Hands-On Machine Learning with Scikit-Learn and TensorFlow
Aurélien Géron - 2017
Now that machine learning is thriving, even programmers who know close to nothing about this technology can use simple, efficient tools to implement programs capable of learning from data. This practical book shows you how.By using concrete examples, minimal theory, and two production-ready Python frameworks—Scikit-Learn and TensorFlow—author Aurélien Géron helps you gain an intuitive understanding of the concepts and tools for building intelligent systems. You’ll learn how to use a range of techniques, starting with simple Linear Regression and progressing to Deep Neural Networks. If you have some programming experience and you’re ready to code a machine learning project, this guide is for you.This hands-on book shows you how to use:Scikit-Learn, an accessible framework that implements many algorithms efficiently and serves as a great machine learning entry pointTensorFlow, a more complex library for distributed numerical computation, ideal for training and running very large neural networksPractical code examples that you can apply without learning excessive machine learning theory or algorithm details
Beautiful Code: Leading Programmers Explain How They Think
Andy OramLincoln Stein - 2007
You will be able to look over the shoulder of major coding and design experts to see problems through their eyes.This is not simply another design patterns book, or another software engineering treatise on the right and wrong way to do things. The authors think aloud as they work through their project's architecture, the tradeoffs made in its construction, and when it was important to break rules. Beautiful Code is an opportunity for master coders to tell their story. All author royalties will be donated to Amnesty International.
How Google Works
Eric Schmidt - 2014
As they helped grow Google from a young start-up to a global icon, they relearned everything they knew about management. How Google Works is the sum of those experiences distilled into a fun, easy-to-read primer on corporate culture, strategy, talent, decision-making, communication, innovation, and dealing with disruption.The authors explain how the confluence of three seismic changes - the internet, mobile, and cloud computing - has shifted the balance of power from companies to consumers. The companies that will thrive in this ever-changing landscape will be the ones that create superior products and attract a new breed of multifaceted employees whom the authors dub 'smart creatives'. The management maxims ('Consensus requires dissension', 'Exile knaves but fight for divas', 'Think 10X, not 10%') are illustrated with previously unreported anecdotes from Google's corporate history.'Back in 2010, Eric and I created an internal class for Google managers,' says Rosenberg. 'The class slides all read 'Google confidential' until an employee suggested we uphold the spirit of openness and share them with the world. This book codifies the recipe for our secret sauce: how Google innovates and how it empowers employees to succeed.'
Seven Languages in Seven Weeks
Bruce A. Tate - 2010
But if one per year is good, how about Seven Languages in Seven Weeks? In this book you'll get a hands-on tour of Clojure, Haskell, Io, Prolog, Scala, Erlang, and Ruby. Whether or not your favorite language is on that list, you'll broaden your perspective of programming by examining these languages side-by-side. You'll learn something new from each, and best of all, you'll learn how to learn a language quickly. Ruby, Io, Prolog, Scala, Erlang, Clojure, Haskell. With Seven Languages in Seven Weeks, by Bruce A. Tate, you'll go beyond the syntax-and beyond the 20-minute tutorial you'll find someplace online. This book has an audacious goal: to present a meaningful exploration of seven languages within a single book. Rather than serve as a complete reference or installation guide, Seven Languages hits what's essential and unique about each language. Moreover, this approach will help teach you how to grok new languages. For each language, you'll solve a nontrivial problem, using techniques that show off the language's most important features. As the book proceeds, you'll discover the strengths and weaknesses of the languages, while dissecting the process of learning languages quickly--for example, finding the typing and programming models, decision structures, and how you interact with them. Among this group of seven, you'll explore the most critical programming models of our time. Learn the dynamic typing that makes Ruby, Python, and Perl so flexible and compelling. Understand the underlying prototype system that's at the heart of JavaScript. See how pattern matching in Prolog shaped the development of Scala and Erlang. Discover how pure functional programming in Haskell is different from the Lisp family of languages, including Clojure. Explore the concurrency techniques that are quickly becoming the backbone of a new generation of Internet applications. Find out how to use Erlang's let-it-crash philosophy for building fault-tolerant systems. Understand the actor model that drives concurrency design in Io and Scala. Learn how Clojure uses versioning to solve some of the most difficult concurrency problems. It's all here, all in one place. Use the concepts from one language to find creative solutions in another-or discover a language that may become one of your favorites.
Object Thinking
David West - 2004
Delving into the history, philosophy, and even politics of object-oriented programming, West reveals how the best programmers rely on analysis and conceptualization on thinking rather than formal process and methods. Both provocative and pragmatic, this book gives form to what s primarily been an oral tradition among the field s revolutionary thinkers and it illustrates specific object-behavior practices that you can adopt for true object design and superior results.Gain an in-depth understanding of: Prerequisites and principles of object thinking. Object knowledge implicit in eXtreme Programming (XP) and Agile software development. Object conceptualization and modeling. Metaphors, vocabulary, and design for object development.Learn viable techniques for: Decomposing complex domains in terms of objects. Identifying object relationships, interactions, and constraints. Relating object behavior to internal structure and implementation design. Incorporating object thinking into XP and Agile practice."
Management 3.0: Leading Agile Developers, Developing Agile Leaders
Jurgen Appelo - 2010
Unfortunately, reliable guidance on Agile management has been scarce indeed. Now, leading Agile manager Jurgen Appelo fills that gap, introducing a realistic approach to leading, managing, and growing your Agile team or organization. Writing for current managers and developers moving into management, Appelo shares insights that are grounded in modern complex systems theory, reflecting the intense complexity of modern software development. Appelo's Management 3.0 model recognizes that today's organizations are living, networked systems; and that management is primarily about people and relationships. Management 3.0 doesn't offer mere checklists or prescriptions to follow slavishly; rather, it deepens your understanding of how organizations and Agile teams work and gives you tools to solve your own problems. Drawing on his extensive experience as an Agile manager, the author identifies the most important practices of Agile management and helps you improve each of them. Coverage includes - Getting beyond "Management 1.0" control and "Management 2.0" fads - Understanding how complexity affects your organization - Keeping your people active, creative, innovative, and motivated - Giving teams the care and authority they need to grow on their own - Defining boundaries so teams can succeed in alignment with business goals - Sowing the seeds for a culture of software craftsmanship - Crafting an organizational network that promotes success - Implementing continuous improvement that actually works Thoroughly pragmatic-and never trendy-Jurgen Appelo's Management 3.0 helps you bring greater agility to any software organization, team, or project.
Version Control By Example
Eric Sink - 2011
Topics covered include:Basic version control commands and conceptsIntroduction to Distributed Version Control Systems (DVCS)Advanced branching workflowsStrengths and weaknesses of DVCS vs. centralized toolsBest practicesHow distributed version control works under the hoodFeaturing these open source version control tools:Apache SubversionMercurialGitVeracity
Quality Is Free
Philip B. Crosby - 1979
Whether you manage a large plant or run your own small business, applying this simple principle of quality control will boost your profits and your career. "Quality Is Free" sets forth easy-to-implement programs, using actual case histories to demonstrate just how well quality control works, and providing important tools for success.
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