10 compulsory ability improvement directions for "Programmer Transformation into Technical Management"

For many developers, studying technology and becoming a technical expert may be the only answer to career development. But if you agree that "software development is just one of my many career goals", maybe you can try the "technical management path".

I found it easier to work with computers than with people, so I became a software developer. After a while, I found myself helping others more and more; I loved leading projects and was passionate about pushing for better coding standards. So, I became a technical manager with almost no struggle.

Although many outside voices have repeatedly mentioned "technical management transformation" in recent years, most developers do not know "What adaptations and changes do I need to make from technology to management?"

If you want to try to explore the path of technical management, first please answer a few questions candidly:

  • Why do you want to be a technical manager?
  • What kind of technical manager do you want to be? Do you want to be responsible for people, projects, or business?
  • What is your motivation for transformation? Is it writing code and building software? Or helping others achieve better results, negotiating delivery times with stakeholders, convincing business teams that code refactoring is not a waste of time?

If you are still convinced that technical management is a good fit for you, then you need to prepare yourself for this by working with upper-level leaders or mentors and asking them for help in areas that you are not familiar with. Here are ten key areas for improvement.

01 Technical Leadership

True leaders don’t need a title or authority to lead a team. Anyone with a fancy title or authority given to them by an organization can give orders, but that is not leadership. The true meaning of leadership lies in your actions and behaviors.

Therefore, you should start from small things: take on more responsibilities in difficult projects, proactively provide PR feedback, update project status in a timely manner, contribute optimization suggestions to the team or product workflow, provide professional guidance to partners, etc.

There are many opportunities that people are unwilling to face or unable to seize due to lack of professional knowledge and confidence. First determine what difficulties your colleagues are encountering, and then step forward and proactively help them solve the problem.

02 Ownership

Technical managers must have the courage to take responsibility for everything they do or fail to do, and avoid blaming others for errors, timeouts, defects, etc.

When problems or failures occur, technical managers should proactively and proactively assist in repair work and teach relevant solutions and prevention strategies. Making excuses for mistakes or complaining doesn't help anyone, spend your time delivering on your promises. If necessary, negotiate a more appropriate delivery date with upper management. Run a project like your own business and really take it to heart.

Recently, a technical lead on my team pulled the latest Master branch and found that the unit test coverage dropped significantly. Instead of complaining, he first filled in the missing parts and then taught the team how to properly check coverage and how to write unit tests for complex functionality. When someone needs help, he takes the initiative to lend a helping hand and never blames anyone; he is highly praised by everyone in the team.

03 Interpersonal relationships

The interpersonal problems of technical managers can also be called office politics. If you don’t want to deal with “workplace politics”, then you must think twice about “Is this a technical manager necessary?”

Building meaningful relationships is one of the responsibilities of a technical manager. Management is about getting things done through other people. You need to have a good relationship with other technical leaders, because they may be your future comrades. Speaking at technology sharing events, hosting technical seminars, and mentoring developers outside of your team can all help you make a lot of friends.

04 Technical strength

Technical managers are technicians first and managers second. "Becoming one of the most powerful developers on the team" is almost a mandatory requirement for technical managers, because people who do not understand programming or technical details cannot participate in technical discussions.

Therefore, in addition to a strong software engineering background and practical experience, you should also maintain a keen technical sense and maintain strong technical strength in order to be competent for higher-level tasks.

05 Collaboration and guidance

Any "excellent developer" on the team who does not have the spirit of teamwork is harmful and unhelpful. Technical managers are always helping others improve their technical skills - pair programming, code reviews, demos, open source or internal source code projects are all great ways to mentor.

In actual work, few people will take the initiative to ask you for guidance. It doesn’t matter, the opportunity is all up to you! You can ask yourself to meet the standards of a technical expert and proactively do the above things; over time, people will naturally start to ask you for help. By answering questions for others, you'll build positive relationships and earn the respect of your team.

06 Project management capabilities

Ensuring that projects are delivered on time is one of the core responsibilities of all managers. If, as a developer, you always miss delivery times and fail to complete R&D tasks, other members will not be able to trust you. You have to do your job in an orderly manner.

We all know that there are many uncertainties in software projects, so work estimation is very difficult. But with the right process, accurate estimates are not impossible—you can continually communicate project progress to upper management or stakeholders to understand their expectations.

For example, my team does a weekly status report, giving the project technical lead an opportunity to communicate progress and identify the main reasons for blockers or delays in delivery.

07 Communication skills

Concise and clear communication is an essential ability for managers. If you can't clearly communicate what you want from your team, your career as a manager will fail before the work even begins. Communication comes in many forms, including verbal, written, and even body language. Always work on improving your communication skills across the board.

My team also missed several deliverables because I failed to communicate requirements clearly and in a timely manner. There were times when the members didn't know who was supposed to do what. Later I realized that relying on the project manager or stakeholders to spell out the details of the project was not going to work. Technical managers must understand the project themselves, and then explain and market the project to the R&D team to stimulate members' enthusiasm for work.

08 Manage upwards

Manage your top leaders (and sometimes their leaders). This means constantly communicating with them and managing their expectations. Trust me, managers don't like surprises, good or bad.

You'll build trusting relationships with upper-level leadership, become a valued, go-to project leader, and complete projects on time and as promised.

09 Conflict and contradiction

No matter how many unit tests or integration tests are done, production issues will happen. You definitely want to minimize the number of defects, but more importantly handle production issues properly. A person who gets into trouble when faced with pressure is not qualified to be a manager in the eyes of others. The R&D team and other technical leaders all hope to see a technical manager who has strong ability to withstand pressure and can calmly control everything.

I once worked with a technical manager who was very calm and emotionally stable. There is almost no conflict or pressure that can make him collapse, at least no one has ever seen him in such a state of "big trouble"; even if he has to deal with production problems at three in the morning, he will never let people down.

Another technical manager was always anxious about delivery dates; he even fell ill on the day new features were launched. He is not emotionally stable enough, so people around him are reluctant to work with him.

These are two completely opposite examples, but you should be able to guess who is the more successful tech lead.

10 Product Vision

Technical managers should know the causes and consequences of everything they are responsible for, and ensure that all members understand "why they are doing it."

You have to communicate clearly (often multiple times) why we are doing this project? Why should these people be involved? How will this project serve the overall situation and serve the corporate/product vision?

The R&D team must believe and buy-in enough about what is being done to work effectively.

Starting from today, stride forward

Leadership is not the privilege of one or two people, so don’t wait or hesitate, take action today to build your own technical influence; come on, become an expert in the vertical field, and proactively provide help to colleagues and partners.

Work on improving your communication skills and building good relationships with current or potential future comrades. Make sure you manage your time wisely and ensure projects are delivered on time.

Don’t forget that leadership is about people, so genuinely help people grow and do their best work.

(The original author is Alex Bachuk, and the content has been translated and adjusted by LigaAI.)


LigaAI@OSCHINA will also share more useful content on product management, R&D efficiency improvement, etc. Welcome to follow us.

Help the R&D team sail away, click to experience the new generation of intelligent R&D collaboration, and grow bigger and stronger together!

The web version of Windows 12 deepin-IDE compiled by junior high school students was officially unveiled. It is known as "truly independently developed" QQ has achieved "three-terminal simultaneous updates", and the underlying NT architecture is based on Electron QQ for Linux officially released 3.2.0 "Father of Hongmeng" Wang Chenglu : Hongmeng PC version system will be launched next year to challenge ChatGPT, these 8 domestic AI large model products GitUI v0.24.0 are released, the default wallpaper of Ubuntu 23.10, a Git terminal written in Rust, is revealed, the "Tauren" in the maze JetBrains announces the WebStorm 2023.3 roadmap China Human Java Ecosystem, Solon v2.5.3 released
{{o.name}}
{{m.name}}

Guess you like

Origin my.oschina.net/u/5057806/blog/10108861