The Effective Engineer


Book Description

Introducing The Effective Engineer--the only book designed specifically for today's software engineers, based on extensive interviews with engineering leaders at top tech companies, and packed with hundreds of techniques to accelerate your career.




Become an Effective Software Engineering Manager


Book Description

Software startups make global headlines every day. As technology companies succeed and grow, so do their engineering departments. In your career, you'll may suddenly get the opportunity to lead teams: to become a manager. But this is often uncharted territory. How can you decide whether this career move is right for you? And if you do, what do you need to learn to succeed? Where do you start? How do you know that you're doing it right? What does "it" even mean? And isn't management a dirty word? This book will share the secrets you need to know to manage engineers successfully. Going from engineer to manager doesn't have to be intimidating. Engineers can be managers, and fantastic ones at that. Cast aside the rhetoric and focus on practical, hands-on techniques and tools. You'll become an effective and supportive team leader that your staff will look up to. Start with your transition to being a manager and see how that compares to being an engineer. Learn how to better organize information, feel productive, and delegate, but not micromanage. Discover how to manage your own boss, hire and fire, do performance and salary reviews, and build a great team. You'll also learn the psychology: how to ship while keeping staff happy, coach and mentor, deal with deadline pressure, handle sensitive information, and navigate workplace politics. Consider your whole department. How can you work with other teams to ensure best practice? How do you help form guilds and committees and communicate effectively? How can you create career tracks for individual contributors and managers? How can you support flexible and remote working? How can you improve diversity in the industry through your own actions? This book will show you how. Great managers can make the world a better place. Join us.




An Elegant Puzzle


Book Description

A human-centric guide to solving complex problems in engineering management, from sizing teams to handling technical debt. There’s a saying that people don’t leave companies, they leave managers. Management is a key part of any organization, yet the discipline is often self-taught and unstructured. Getting to the good solutions for complex management challenges can make the difference between fulfillment and frustration for teams—and, ultimately, between the success and failure of companies. Will Larson’s An Elegant Puzzle focuses on the particular challenges of engineering management—from sizing teams to handling technical debt to performing succession planning—and provides a path to the good solutions. Drawing from his experience at Digg, Uber, and Stripe, Larson has developed a thoughtful approach to engineering management for leaders of all levels at companies of all sizes. 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.




Staff Engineer


Book Description

At most technology companies, you'll reach Senior Software Engineer, the career level for software engineers, in five to eight years. At that career level, you'll no longer be required to work towards the next pro? motion, and being promoted beyond it is exceptional rather than ex? pected. At that point your career path will branch, and you have to decide between remaining at your current level, continuing down the path of technical excellence to become a Staff Engineer, or switching into engineering management. Of course, the specific titles vary by company, and you can replace "Senior Engineer" and "Staff Engineer" with whatever titles your company prefers.Over the past few years we've seen a flurry of books unlocking the en? gineering management career path, like Camille Fournier's The Man? ager's Path, Julie Zhuo's The Making of a Manager, Lara Hogan's Re? silient Management and my own, An Elegant Puzzle. The manage? ment career isn't an easy one, but increasingly there are maps avail? able for navigating it.On the other hand, the transition into Staff Engineer, and its further evolutions like Principal and Distinguished Engineer, remains chal? lenging and undocumented. What are the skills you need to develop to reach Staff Engineer? Are technical abilities alone sufficient to reach and succeed in that role? How do most folks reach this role? What is your manager's role in helping you along the way? Will you enjoy being a Staff Engineer or you will toil for years to achieve a role that doesn't suit you?"Staff Engineer: Leadership beyond the management track" is a pragmatic look at attaining and operate in these Staff-plus roles.




Engineer Your Own Success


Book Description

Focusing on basic skills and tips for career enhancement, Engineer Your Own Success is a guide to improving efficiency and performance in any engineering field. It imparts valuable organization tips, communication advice, networking tactics, and practical assistance for preparing for the PE exam—every necessary skill for success. Authored by a highly renowned career coach, this book is a battle plan for climbing the rungs of any engineering ladder.




Modern Software Engineering


Book Description

Improve Your Creativity, Effectiveness, and Ultimately, Your Code In Modern Software Engineering, continuous delivery pioneer David Farley helps software professionals think about their work more effectively, manage it more successfully, and genuinely improve the quality of their applications, their lives, and the lives of their colleagues. Writing for programmers, managers, and technical leads at all levels of experience, Farley illuminates durable principles at the heart of effective software development. He distills the discipline into two core exercises: learning and exploration and managing complexity. For each, he defines principles that can help you improve everything from your mindset to the quality of your code, and describes approaches proven to promote success. Farley's ideas and techniques cohere into a unified, scientific, and foundational approach to solving practical software development problems within realistic economic constraints. This general, durable, and pervasive approach to software engineering can help you solve problems you haven't encountered yet, using today's technologies and tomorrow's. It offers you deeper insight into what you do every day, helping you create better software, faster, with more pleasure and personal fulfillment. Clarify what you're trying to accomplish Choose your tools based on sensible criteria Organize work and systems to facilitate continuing incremental progress Evaluate your progress toward thriving systems, not just more "legacy code" Gain more value from experimentation and empiricism Stay in control as systems grow more complex Achieve rigor without too much rigidity Learn from history and experience Distinguish "good" new software development ideas from "bad" ones Register your book for convenient access to downloads, updates, and/or corrections as they become available. See inside book for details.




The Senior Software Engineer


Book Description

11 simple practices a software engineer can apply to be more a more effective contributor and more productive team member. Included are personal processes for fixing bugs and implementing new features, tips for writing, interviewing, and time management, as well as guides for bootstrapping new projects, making technical arguments, and leading a team.




Site Reliability Engineering


Book Description

The overwhelming majority of a software system’s lifespan is spent in use, not in design or implementation. So, why does conventional wisdom insist that software engineers focus primarily on the design and development of large-scale computing systems? In this collection of essays and articles, key members of Google’s Site Reliability Team explain how and why their commitment to the entire lifecycle has enabled the company to successfully build, deploy, monitor, and maintain some of the largest software systems in the world. You’ll learn the principles and practices that enable Google engineers to make systems more scalable, reliable, and efficient—lessons directly applicable to your organization. This book is divided into four sections: Introduction—Learn what site reliability engineering is and why it differs from conventional IT industry practices Principles—Examine the patterns, behaviors, and areas of concern that influence the work of a site reliability engineer (SRE) Practices—Understand the theory and practice of an SRE’s day-to-day work: building and operating large distributed computing systems Management—Explore Google's best practices for training, communication, and meetings that your organization can use




A Whole New Engineer: The Coming Revolution in Engineering Education


Book Description

A Revolution Is Coming. It Isn't What You Think.This book tells the improbable stories of Franklin W. Olin College of Engineering, a small startup in Needham, Massachusetts, with aspirations to be a beacon to engineering education everywhere, and the iFoundry incubator at the University of Illinois, an unfunded pilot program with aspirations to change engineering at a large public university that wasn't particularly interested in changing. That either one survived is story enough, but what they found out together changes the course of education transformation forever: - How joy, trust, openness, and connec- tion are the keys to unleashing young, courageous engineers.- How engineers educated in narrow technical terms with a fixed mindset need an education that actively engages six minds-analytical, design, people, linguistic, body, and mindful- using a growth mindset.- How emotion and culture are the crucial elements of change, not content, curriculum, and pedagogy.- How four technologies of trust are well established and widely available to promote more rapid academic change.- How all stakeholders can join together in a movement of open innovation to accelerate collaborative disruption of the status quo.Read this book and get a glimpse inside the coming revolution in engineering. Feel the engaging stories in this book and understand the depth of change that is coming. Use this book to help select, shape, demand, and create educational experiences aligned with the creative imperative of the twenty-first century.




Software Engineering at Google


Book Description

Today, software engineers need to know not only how to program effectively but also how to develop proper engineering practices to make their codebase sustainable and healthy. This book emphasizes this difference between programming and software engineering. How can software engineers manage a living codebase that evolves and responds to changing requirements and demands over the length of its life? Based on their experience at Google, software engineers Titus Winters and Hyrum Wright, along with technical writer Tom Manshreck, present a candid and insightful look at how some of the world’s leading practitioners construct and maintain software. This book covers Google’s unique engineering culture, processes, and tools and how these aspects contribute to the effectiveness of an engineering organization. You’ll explore three fundamental principles that software organizations should keep in mind when designing, architecting, writing, and maintaining code: How time affects the sustainability of software and how to make your code resilient over time How scale affects the viability of software practices within an engineering organization What trade-offs a typical engineer needs to make when evaluating design and development decisions