{"title":"The Successful Software Manager. (Book Review)","authors":"N. Radziwill","doi":"10.1080/10686967.2019.1696115","DOIUrl":null,"url":null,"abstract":"There are numerous books on the market that provide technical guidance to software engineers and quality assurance specialists, but little information to help them figure out how (and whether) to make the transition from developer to manager. Herman Fung’s new release fills this gap in a complete, methodical, and inspiring way. As someone who made this transition two decades ago, many parts of this book resonate with me, and will benefit any developer or technical specialist who wants to know what software management entails and how they can adapt to this role effectively. The book is organized into 15 chapters, and it starts by encouraging the reader to explore the reasons he or she is considering the transition to management. The next three chapters describe the skills (technical, personal, and social) that a prospective manager needs and sets the stage for the kind of role and daily routine you will have as a software manager. The author also provides some guidance for how to make the connections between the job you have now, and the job you aim to get. Management, meetings, and user interactions are covered next. For someone who has played a solely technical role, adjusting to the norms and expectations of these expected tasks may be a challenge, but the author guides you through them capably. For example, adjusting to the unique perspectives of the business, in particular sales organizations, can be tough for developers. The author describes their world well, and contrasts it with the perspectives and expectations of software engineers. Lessons learned for effective sessions with users are provided. Tips for having difficult (yet necessary) conversations with your direct reports are also provided. The final two chapters address leadership development and growth. Learning from mistakes, managing emotions, and using emotions to manage are all covered. Motivating and inspiring teams, and helping people achieve their own personal goals for growth, are also addressed. In contrast to many leadership books, the lessons are directly tailored for the software development environment, and feel personal. Realistic recommendations can be immediately applied in practice. Many excellent software engineers are encouraged to become managers and leaders, in part because executives recognize how valuable their mentorship would be to other developers. But this can present tough dilemmas – for example, delegation. How can you entrust someone else with a highly challenging technical task for which you have extremely high standards (and could definitely deliver yourself)? The author addresses questions like this directly. This case includes a quote from software CEO Rick Baker (“If someone else can do the task 80% as well as you can do it, then delegate”) and a relatable story about how new manager met this challenge at a startup (which is now a well-known enterprise). Additionally, the internal emotions of shifting to a role where coding may only a small part of the job are discussed. One of the strengths of this book is that it is technology and methodology agnostic. Although ITIL, PRINCE, waterfall, agile and Scrum and mentioned and used as a framework to describe common processes, the author does not advocate one over another and acknowledges that there is a time and a place for each of these approaches. Overall, this is the only book I have seen that gently guides and sets expectations for the developer or software engineer who is considering a transition to management. Eminently readable, with recommendations grounded in pragmatism and compassion, I enthusiastically recommend Herman Fung’s book, regardless of the reader’s age, experience level, or industry. Because there are practical, meaningful lessons in here for everyone, this book will also likely be valuable to established software managers seeking a deeper understanding of their role or wishing to mentor growing engineers.","PeriodicalId":38208,"journal":{"name":"Quality Management Journal","volume":"27 1","pages":"77 - 77"},"PeriodicalIF":0.0000,"publicationDate":"2020-01-02","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"https://sci-hub-pdf.com/10.1080/10686967.2019.1696115","citationCount":"0","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"Quality Management Journal","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1080/10686967.2019.1696115","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"Q2","JCRName":"Business, Management and Accounting","Score":null,"Total":0}
引用次数: 0
Abstract
There are numerous books on the market that provide technical guidance to software engineers and quality assurance specialists, but little information to help them figure out how (and whether) to make the transition from developer to manager. Herman Fung’s new release fills this gap in a complete, methodical, and inspiring way. As someone who made this transition two decades ago, many parts of this book resonate with me, and will benefit any developer or technical specialist who wants to know what software management entails and how they can adapt to this role effectively. The book is organized into 15 chapters, and it starts by encouraging the reader to explore the reasons he or she is considering the transition to management. The next three chapters describe the skills (technical, personal, and social) that a prospective manager needs and sets the stage for the kind of role and daily routine you will have as a software manager. The author also provides some guidance for how to make the connections between the job you have now, and the job you aim to get. Management, meetings, and user interactions are covered next. For someone who has played a solely technical role, adjusting to the norms and expectations of these expected tasks may be a challenge, but the author guides you through them capably. For example, adjusting to the unique perspectives of the business, in particular sales organizations, can be tough for developers. The author describes their world well, and contrasts it with the perspectives and expectations of software engineers. Lessons learned for effective sessions with users are provided. Tips for having difficult (yet necessary) conversations with your direct reports are also provided. The final two chapters address leadership development and growth. Learning from mistakes, managing emotions, and using emotions to manage are all covered. Motivating and inspiring teams, and helping people achieve their own personal goals for growth, are also addressed. In contrast to many leadership books, the lessons are directly tailored for the software development environment, and feel personal. Realistic recommendations can be immediately applied in practice. Many excellent software engineers are encouraged to become managers and leaders, in part because executives recognize how valuable their mentorship would be to other developers. But this can present tough dilemmas – for example, delegation. How can you entrust someone else with a highly challenging technical task for which you have extremely high standards (and could definitely deliver yourself)? The author addresses questions like this directly. This case includes a quote from software CEO Rick Baker (“If someone else can do the task 80% as well as you can do it, then delegate”) and a relatable story about how new manager met this challenge at a startup (which is now a well-known enterprise). Additionally, the internal emotions of shifting to a role where coding may only a small part of the job are discussed. One of the strengths of this book is that it is technology and methodology agnostic. Although ITIL, PRINCE, waterfall, agile and Scrum and mentioned and used as a framework to describe common processes, the author does not advocate one over another and acknowledges that there is a time and a place for each of these approaches. Overall, this is the only book I have seen that gently guides and sets expectations for the developer or software engineer who is considering a transition to management. Eminently readable, with recommendations grounded in pragmatism and compassion, I enthusiastically recommend Herman Fung’s book, regardless of the reader’s age, experience level, or industry. Because there are practical, meaningful lessons in here for everyone, this book will also likely be valuable to established software managers seeking a deeper understanding of their role or wishing to mentor growing engineers.