paint-brush
What Are The Responsibilities Of Software Development Manager?by@knm
319 reads
319 reads

What Are The Responsibilities Of Software Development Manager?

by Martin KnotekJanuary 11th, 2020
Read on Terminal Reader
Read this story w/o Javascript
tldt arrow

Too Long; Didn't Read

The definition and content of activities of the software development manager can vary widely. In software development these positions are quite rare and there is very often some slice of technical responsibilities. The portion of the people management activities can vary, however it should never get under 50 percent. The ideal number of direct reports in this position is around 25. When less, the manager is not fully utilized, when more tasks are slipping and sometimes important problems are not solved in time. The manager needs to find a balance between being economical and being fair to the employees.

Company Mentioned

Mention Thumbnail
featured image - What Are The Responsibilities Of Software Development Manager?
Martin Knotek HackerNoon profile picture

The definition and content of activities of the software development manager can vary widely.

You can find this position under many different names, let´s list
just a few of them for illustration: software manager, software
development manager, software engineering manager, head of software development, team manager, line manager (in case of hands-off position), associate director (common for huge multinational companies) and so on.

Since we are talking about managerial position there is always a part focused on people management.

Since we are talking about managerial position there is always a part focused on people management. The portion of the people management activities can vary, however it should never get under 50 percent.

People management

These activities are always present in some form and it depends how much is the position hands-on or hands-off.

Line (people) manager

When the people management activities near to 100 percent we are talking about the position of the line manager or people manager. In software development these positions are quite rare and there is very often some slice of technical responsibilities.

From my experience the ideal number of direct reports in this position is around 25.

Companies that employs dedicated line managers have implemented matrix organization structure. That means that there are managers dedicated solely to people management and managers solely for purpose (projects).
From my experience the ideal number of direct reports in this position
is around 25. When less, the manager is not fully utilized, when more
the manager´s tasks are slipping and sometimes important problems are
not solved in time.

People management activities

Administration

Administration is indivisible part of manager´s job. There are many
various tasks that have to be solved with employees every day. It can be
changes in the contract or group of approvals (vacations, business
trips, allocation changes, trainings etc.).

Allocation To Projects

In case that the manager does not lead projects or not all direct
reports are working on his/her project, manager is responsible for
allocation of direct reports on projects. In the ideal case the project
should fit strong traits of the employee and help with the personal
growth of the employee.

Hiring process

If you are not sure, don´t hire! It is extremely difficult to get rid of the bad hire.

The importance of hiring the right people cannot be higher. If you hire
badly that does not mean the employee will not bring value. The bad
employee will absolutely destroy effectivity. If the manager will not
deal with the problem quickly, the right employees will start to leave
the company. I will state only one rule for a hiring process – If you
are not sure, don´t hire! It is extremely difficult to get rid of the
bad hire.

People growth, coaching, mentoring

It´s the manager´s responsibility to recognize strong traits of the employee and develop them.

It´s the manager´s responsibility to recognize strong traits of the
employee and develop them. Sometimes the trainings are focused on skills
that your employees lack to improve them. That´s not  ideal, we as
managers should help with developing the strong traits and make them
even stronger. With this approach we can assemble the teams in a way
that members of the team complement each other with their strong traits.
There is a whole best-selling book (that I reviewed here) on this topic from the Microsoft chairman of Europe Jan Muhlfeit.

Training

Managers are responsible for finding and recommending trainings for employees. That will effectively develop the skills they need most. It can be skills that are actually needed or skills that are expected to be needed in the future.

The word effectively is in bold intentionally because it happens quite
often that employees are sent to the trainings that does not bring value. They are only intended to pump out the training´s budget. Then it´s a waste of money of the company and time of the employee and only delays the project.

Salary and bonuses

One of the most difficult tasks of the manager is salary negotiation. The manager needs to find a balance between being economical and being fair to the employees.

One of the most difficult tasks of the manager is salary negotiation. The manager needs to find a balance between being economical and being fair to the employees. There should be some salary levels widely acknowledged across the company that correspond to the seniority. The
manager should be targeting the salaries near to these levels. There are
often exceptions in case of the large domain knowledge of the employee
or other exceptional circumstances that can justify excesses.

Bonuses should be based on the performance of the employee over some
defined period of time (quarterly, yearly…). If there is a significant change in the value of the bonus in either direction, the reasons should be communicated to the employee. In case that the bonus is lowered there should be determined steps that should be followed by the employee so the bonus can get to the original level or higher.

Seniority determination

Developer positions should be divided into several tiers and manager determines what is the seniority of the employee. It´s very dangerous to promote the employee based only on domain knowledge. The seniority should be corresponding across all projects in the company.

Regular feedback and one-on-ones

One on ones are standard part of the manager´s life. When the manager
is leading project the employee work on, the 1o1s should take place quite often (even once a week). Project or department issues can be discussed on these meetings. Coaching and mentoring should be also part of the meeting.

If the manager is more in a people manager role to the employee, 1o1s are usually about giving the feedback gathered from the project managers and these meetings take place much less often, often only once in a quarter.

You can read some more about one on ones in my blog post.

Relationships, sh*t umbrella

Manager is responsible for public relations of his/her department. Manager should maintain relations with other managers, other departments and should point on successes of his/her department or successes of specific employees in his/her department.

Manager needs to absorb the heat and only emotionless and verified information should be given as a feedback to the team.

Manager should also serve as some kind of lightning rod for problems
caused by the project or people in his/her department. Manager should be
able to absorb the heat and only emotionless and verified information
should be given as a feedback to the team.

Technical responsibilities of Software Development Manager

This part of the job differs a lot depending on the needs of the company. This is probably the reason why there are so many different names for the similar position.            

As an Architect

It´s not very common that the manager also writes code, however the code review is from time to time required even from the manager.

It happens very often that the software development manager is
responsible for the high level and architectural design of the product.
It´s not very common that the manager also writes code, however the code review is from time to time required even from the manager.

The result is that the interview for a software development manager
consists also of coding interview and technical screening. Technical
manager should definitely have an overview in the area of his/her
expertise.

Technical and managerial competencies

If detailed technical knowledge is required from the software
development manager, the candidate will probably lack on the side of the
managerial skills. It´s not easy to find a technical star that is also emphatic, skillful in communication and all the responsibilities stated in the People management section of this article.

As a project manager

Quite often the software development manager serves also as a technical
project manager. It´s quite logic, since synergy of his/her managerial and technical skills can be used in these positions.