Book Image

The Successful Software Manager

By : Herman Fung
Book Image

The Successful Software Manager

By: Herman Fung

Overview of this book

The Successful Software Manager is a comprehensive and practical guide to managing software developers, software customers, and the process of deciding what software needs to be built. It explains in detail how to develop a management mindset, lead a high-performing developer team, and meet all the expectations of a good manager. The book will help you whether you’ve chosen to pursue a career in management or have been asked to "act up" as a manager. Whether you’re a Development Manager, Product Manager, Team Leader, Solution Architect, or IT Director, this is your indispensable guide to all aspects of running your team and working within an organization and dealing with colleagues, customers, potential customers, and technologists, to ensure you build the product your organization needs. This book is the must-have authoritative guide to managing projects, managing people, and preparing yourself to be an effective manager. The intuitive real-life examples will act as a desk companion for any day-to-day challenge, and beyond that, Herman will show you how to prepare for the next stages and how to achieve career success.
Table of Contents (21 chapters)
Title Page

The pros and cons of becoming a manager

It's always important to consider as many factors as possible when deciding to undertake this journey. So, let's take a balanced view and explore both the pros and cons of becoming a manager.

The road ahead to becoming a manager is quite complex. The journey requires navigation, planning, and a mindful acceptance that you might make a wrong turn here and there before you reach the finish line. Without this planning, you're likely to get very frustrated and give up at the first hurdle. For some people, that's enough to decide that they don't want to take the journey.

You should certainly consider whether becoming a manager advances your career, your happiness, or perhaps a mixture of both. Likewise, whether your journey will be slow or fast, because balancing your professional and personal ambitions can be difficult to achieve along the road ahead. At times, you will need to concentrate on one of your ambitions and sacrifice or postpone your other ambitions.

This might already be true in your life now as a developer, but by becoming a manager, you risk your work taking over more of your life than you might expect. For example, you might suddenly find yourself bringing home emotional baggage from the office, because being a manager can put you in challenging people situations. While taking these manager type challenges home for some private contemplation may ultimately help you achieve a better outcome, it comes at a price of less personal space and downtime to relax for your own wellbeing. And of course, some situations may also affect you very directly and emotionally.

Another consideration is whether becoming a manager fits your natural talents, and whether you think you'll be any good at being a manager. At the end of the day, we are all different, and our talents are all unique; everyone has their own unique set of strengths and weaknesses, and their own likes and dislikes.

Being a developer is different from being a manager in that your focus will change from writing code yourself to helping others write quality code. As we've already mentioned, people are different – so some of us will naturally be more suited to becoming a manager than others.

It's also quite natural to worry that since you're a good developer you might not be so good at being a manager. Why become a manager and potentially stop doing what you're doing so well? There are so many things that you can learn about software development. But the biggest consideration is most probably, what if you fail?

Your attitude and tolerance for risk-taking

Everyone's attitude and tolerance for risk-taking will be different. Some people take a more gung-ho, or "go big or go home!" stance, while others take necessary comfort in making smaller, incremental changes.

It is quite natural to worry that if you don't succeed at becoming an effective and respected manager, then it will be a personal failure, and all the negative things associated with that. You might worry about then being viewed as a techie who just didn't make it as a manager; or having a below-par performance appraisal; perhaps even getting less bonus pay as a result, or a negative mark on your résumé and reputation.

But just imagine that worst-case scenario again, where you don't become a manager, or you fail as a manager. Would it really be considered a setback by others? And, most importantly, by you? There is always a possibility that a future employer will ask you questions such as the following:

  • What happened?
  • Why did you go back to being a developer?

Sure, it's important to acknowledge this possibility and be prepared to answer such questions directly, even if the answer is that it was not such a positive experience, and you reply with an answer as clear as this: it just wasn't for me.

In favor of making the Developer-to-Manager journey, there are also numerous things to consider. First and foremost is dealing with the perception of failure. If your attitude to risk-taking is more like the entrepreneurial Silicon Valley style of thinking, then you may acknowledge and accept that failure is part of succeeding. Failing at multiple start-ups is considered a necessary step toward setting up a successful, and hopefully billion-dollar, "unicorn" business.

It's a badge of honor and follows a "you win, or you learn" mindset. When an athlete suffers a severe injury or crushing defeat, they learn from the experience to improve and avoid losing again. This positive mental attitude toward risk-taking is rare and will be recognized by more insightful managers and people in general, which will put you in good stead as a manager or a developer.

Now just for a minute, put yourself in an interviewer's position. One candidate has done the same type of development, at the same level, for their entire career. Meanwhile, another candidate has learned multiple technologies and has also tried becoming a manager. Which candidate would you think has more of a story to tell? Which would you consider to be a more rounded professional? So, whether you absolutely nail becoming a manager first time or not at all, it can still be considered progress.

As former U.S. President, Barack Obama, eloquently puts it:

"Progress is not a straight line."

His takeaway point reinforces the idea that the Developer-to-Manager journey is not a predefined process. Imagine the best-case scenario: you've made the successful transition from Developer-to-Manager, whenever that may be; and you've obtained the added pay, the job satisfaction, and the recognition you wanted. Now, do a retrospective review and ask yourself: What was the best part of my journey?

For me, the best part of my journey was the personal growth I attained by meeting all the new challenges along the way. I was truly stretched beyond what I thought I could achieve. I used to think that I wanted nothing more than to be left alone to write the programs I wanted to write, and to hell with anybody else: my goal was to be the master of my own domain, however large or small it was. However, once I began my journey, I started dealing with people from across a huge spectrum and working on issues not caused or fixed by code. My horizons were broadened as a result, and my confidence to connect with people socially grew exponentially.

Looking back, if I hadn't made the journey, I could easily see myself still doing the same job, albeit as much more of an expert! By understanding these considerations, and knowing the best-and worst-case scenarios, you'll understand all the important steps to discovering your why, which is the fundamental reason and driving force behind the Developer-to-Manager journey.