Pro Git


Scott Chacon - 2009
    It took the open source world by storm since its inception in 2005, and is used by small development shops and giants like Google, Red Hat, and IBM, and of course many open source projects.A book by Git experts to turn you into a Git expert. Introduces the world of distributed version control Shows how to build a Git development workflow.

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

The Senior Software Engineer


David B. Copeland - 2013
    This book isn't about that - it's about everything else. As such, there's very little code inside, meaning everyone from PHP hackers to hardcore embedded C programmers will get a lot out of it.This book covers 10 topics crucial to being an amazing developer:Focus on Delivering ResultsFix Bugs Efficiently and CleanlyAdd Features with EaseDeal With Technical Debt and SlopPlay Well With OthersMake Technical DecisionsBootstrap a Greenfield SystemLearn to WriteInterview Potential Co-WorkersLead a Team

Clean Agile: Back to Basics


Robert C. Martin - 2019
    Martin ("Uncle Bob") reintroduces agile values and principles for a new generation of software developers. In this eagerly-awaited book, the best-selling author of The Clean Coder shows how to bring unprecedented levels of professionalism and discipline to agile development -- and thereby write far more effective, successful software. As with his other books, Martin's Clean Agile: Back to Basics doesn't merely present multiple choices and options, and say "use your best judgment": it tells you what choices to make, and why those choices are critical to your success. Writing in the agile context, Martin offers direct, no-nonsense answers to crucial questions like:How and why did Agile begin? What are the costs and benefits of Agile? What are the most effective practices of Agile Development? How should an Agile team be organized? What roles do programmers, testers, and managers play in an Agile team? What is the role of the Agile Coach? What about Agile for large projects? What kinds of projects benefit from Agile? Clean Agile: Back to Basics is essential reading for programmers, managers, testers, project managers and every software professional called upon to lead or participate in an agile project.

The First 90 Days: Critical Success Strategies for New Leaders at All Levels


Michael D. Watkins - 2003
    In this updated and expanded 10th anniversary edition, internationally known leadership transition expert Michael D. Watkins gives you the keys to successfully negotiating your next move—whether you’re onboarding into a new company, being promoted internally, or embarking on an international assignment.In The First 90 Days, Watkins outlines proven strategies that will dramatically shorten the time it takes to reach what he calls the "breakeven point" when your organization needs you as much as you need the job. This new edition includes a substantial new preface by the author on the new definition of a career as a series of transitions; and notes the growing need for effective and repeatable skills for moving through these changes. As well, updated statistics and new tools make this book more reader-friendly and useful than ever.As hundreds of thousands of readers already know, The First 90 Days is a road map for taking charge quickly and effectively during critical career transition periods—whether you are a first-time manager, a mid-career professional on your way up, or a newly minted CEO.

Think Like a Programmer: An Introduction to Creative Problem Solving


V. Anton Spraul - 2012
    In this one-of-a-kind text, author V. Anton Spraul breaks down the ways that programmers solve problems and teaches you what other introductory books often ignore: how to Think Like a Programmer. Each chapter tackles a single programming concept, like classes, pointers, and recursion, and open-ended exercises throughout challenge you to apply your knowledge. You'll also learn how to:Split problems into discrete components to make them easier to solve Make the most of code reuse with functions, classes, and libraries Pick the perfect data structure for a particular job Master more advanced programming tools like recursion and dynamic memory Organize your thoughts and develop strategies to tackle particular types of problems Although the book's examples are written in C++, the creative problem-solving concepts they illustrate go beyond any particular language; in fact, they often reach outside the realm of computer science. As the most skillful programmers know, writing great code is a creative art—and the first step in creating your masterpiece is learning to Think Like a Programmer.

The Developer's Code: What Real Programmers Do


Ka Wai Cheung - 2012
    There are no trite superlatives here. Packed with lessons learned from more than a decade of software development experience, author Ka Wai Cheung takes you through the programming profession from nearly every angle to uncover ways of sustaining a healthy connection with your work. You'll see how to stay productive even on the longest projects. You'll create a workflow that works with you, not against you. And you'll learn how to deal with clients whose goals don't align with your own. If you don't handle them just right, issues such as these can crush even the most seasoned, motivated developer. But with the right approach, you can transcend these common problems and become the professional developer you want to be. In more than 50 nuggets of wisdom, you'll learn: Why many traditional approaches to process and development roles in this industry are wrong - and how to sniff them out. Why you must always say "no" to the software pet project and open-ended timelines. How to incorporate code generation into your development process, and why its benefits go far beyond just faster code output. What to do when your client or end user disagrees with an approach you believe in. How to pay your knowledge forward to future generations of programmers through teaching and evangelism. If you're in this industry for the long run, you'll be coming back to this book again and again.

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

Agile Testing: A Practical Guide for Testers and Agile Teams


Lisa Crispin - 2008
    The widespread adoption of agile methods has brought the need for effective testing into the limelight, and agile projects have transformed the role of testers. Much of a tester's function, however, remains largely misunderstood. What is the true role of a tester? Do agile teams actually need members with QA backgrounds? What does it really mean to be an "agile tester?"Two of the industry's most experienced agile testing practitioners and consultants, Lisa Crispin and Janet Gregory, have teamed up to bring you the definitive answers to these questions and many others. In Agile Testing, Crispin and Gregory define agile testing and illustrate the tester's role with examples from real agile teams. They teach you how to use the agile testing quadrants to identify what testing is needed, who should do it, and what tools might help. The book chronicles an agile software development iteration from the viewpoint of a tester and explains the seven key success factors of agile testing.Readers will come away from this book understanding- How to get testers engaged in agile development- Where testers and QA managers fit on an agile team- What to look for when hiring an agile tester- How to transition from a traditional cycle to agile development- How to complete testing activities in short iterations- How to use tests to successfully guide development- How to overcome barriers to test automationThis book is a must for agile testers, agile teams, their managers, and their customers.

Turn the Ship Around!: A True Story of Turning Followers into Leaders


L. David Marquet - 2013
    As newly appointed captain of the USS Santa Fe, a nuclear-powered submarine, he was responsible for more than a hundred sailors, deep in the sea. In this high-stress environment, where there is no margin for error, it was crucial his men did their job and did it well.But the ship was dogged by poor morale, poor performance, and the worst retention in the fleet. Marquet acted like any other captain until, one day, he unknowingly gave an impossible order, and his crew tried to follow it anyway. When he asked why the order wasn't challenged, the answer was "Because you told me to." Marquet realized he was leading in a culture of followers, and they were all in danger unless they fundamentally changed the way they did things. That's when Marquet took matters into his own hands and pushed for leadership at every level. Turn the Ship Around! is the true story of how the Santa Fe skyrocketed from worst to first in the fleet by challenging the U.S. Navy's traditional leader-follower approach. Struggling against his own instincts to take control, he instead achieved the vastly more powerful model of giving control. Before long, each member of Marquet's crew became a leader and assumed responsibility for everything he did, from clerical tasks to crucial combat decisions. The crew became fully engaged, contributing their full intellectual capacity every day, and the Santa Fe started winning awards and promoting a highly disproportionate number of officers to submarine command.No matter your business or position, you can apply Marquet's radical guidelines to turn your own ship around. The payoff: a workplace where everyone around you is taking responsibility for their actions, where people are healthier and happier, where everyone is a leader.

Trillion Dollar Coach: The Leadership Playbook of Silicon Valley's Bill Campbell


Eric Schmidt - 2019
    In addition, this business genius mentored dozens of other important leaders on both coasts, from entrepreneurs to venture capitalists to educators to football players, leaving behind a legacy of growing companies, successful people, respect, friendship, and love after his death in 2016.Leaders at Google for over a decade, Eric Schmidt, Jonathan Rosenberg, and Alan Eagle experienced firsthand how the man fondly known as Coach Bill built trusting relationships, fostered personal growth—even in those at the pinnacle of their careers—inspired courage, and identified and resolved simmering tensions that inevitably arise in fast-moving environments. To honor their mentor and inspire and teach future generations, they have codified his wisdom in this essential guide.Based on interviews with over eighty people who knew and loved Bill Campbell, Trillion Dollar Coach explains the Coach’s principles and illustrates them with stories from the many great people and companies with which he worked. The result is a blueprint for forward-thinking business leaders and managers that will help them create higher performing and faster moving cultures, teams, and companies.

Scrum: a Breathtakingly Brief and Agile Introduction


Chris Sims - 2012
    A pocket-sized overview of roles, artifacts and the sprint cycle, adapted from the bestseller The Elements of Scrum by Chris Sims & Hillary Louise Johnson

Radical Candor: Be a Kickass Boss Without Losing Your Humanity


Kim Malone Scott - 2017
    While this advice may work for everyday life, it is, as Kim Scott has seen, a disaster when adopted by managers.Scott earned her stripes as a highly successful manager at Google and then decamped to Apple, where she developed a class on optimal management. She has earned growing fame in recent years with her vital new approach to effective management, the “radical candor” method.Radical candor is the sweet spot between managers who are obnoxiously aggressive on one side and ruinously empathetic on the other. It’s about providing guidance, which involves a mix of praise as well as criticism—delivered to produce better results and help employees achieve.Great bosses have strong relationships with their employees, and Scott has identified three simple principles for building better relationships with your employees: make it personal, get (sh)it done, and understand why it matters.Radical Candor offers a guide to those bewildered or exhausted by management, written for bosses and those who manage bosses. Taken from years of the author’s experience, and distilled clearly giving actionable lessons to the reader; it shows managers how to be successful while retaining their humanity, finding meaning in their job, and creating an environment where people both love their work and their colleagues.

Start Small, Stay Small: A Developer's Guide to Launching a Startup


Rob Walling - 2010
    If you're a desktop, mobile or web developer, this book is your blueprint to getting your startup off the ground with no outside investment.This book intentionally avoids topics restricted to venture-backed startups such as: honing your investment pitch, securing funding, and figuring out how to use the piles of cash investors keep placing in your lap.This book assumes:* You don't have $6M of investor funds sitting in your bank account* You're not going to relocate to the handful of startup hubs in the world* You're not going to work 70 hour weeks for low pay with the hope of someday making millions from stock optionsThere's nothing wrong with pursuing venture funding and attempting to grow fast like Amazon, Google, Twitter, and Facebook. It just so happened that most people are not in a place to do this.

User Story Mapping: Discover the Whole Story, Build the Right Product


Jeff Patton - 2012
    With this practical book, you'll explore the often-misunderstood practice of user story mapping, and learn how it can help keep your team stay focused on users and their experience throughout the development process.You and your team will learn that user stories aren't a way to write better specifications, but a way to organize and have better conversations. This book will help you understand what kinds of conversations you should be having, when to have them, and what to keep track of when you do. Learn the key concepts used to create a great story map. Understand how user stories really work, and how to make good use of them in agile and lean projects. Examine the nuts and bolts of managing stories through the development cycle. Use strategies that help you continue to learn before and after the product's release to customers and usersUser Story Mapping is ideal for agile and lean software development team members, product managers and UX practitioners in commercial product companies, and business analysts and project managers in IT organizations—whether you're new to this approach or want to understand more about it.