The moment I have been promoted as a lead engineer, I spent a lot of time trying to find a starting point on how I lead a team on a big scale until I reached a point that I feel it works effectively. Let me share my experience in a structured way.
Leader vs. Manager
- A manager sets targets, plan work, organize, delegate tasks, and coordinate. A leader is able to create an environment where each individual feels totally committed to doing a great job.
- The results of leadership are often intangible because you work on motivation and inspiration, while the results of management are easily measurable because it is based on setting up processes and how you execute them, which makes:
- Management is more quantitative, while leadership is more qualitative.
More good reads in the references section about the difference between them in terms of skills needed, when to use what, etc.
As an engineer, being just a manager is very rigid, being just a leader is very soft. You always have to use a mix of them, you have to know when to be what.
Michael has talked about it in six verticals in more elaboration in his “Practical Team Management for Software Engineers” series in Pluralsight and here is the draft of it along with my own experience.
The verticals as following:
- Acquiring the Right Talents.
- Building Team Structure.
- Aligning IT Activities to the Business. (In progress)
- Managing Customer Expectations.
- Managing through Effective Communication.
- Promoting Productivity through Team Processes.
In this part, I am going to talk about…
Acquiring the Right Talent
There is no doubt that people are the cornerstone and most valuable asset in any company, that’s why hiring people is the most critical and tricky process of any company establishment.
Why is it Important?
- Based on my experience, hiring one good person can change a lot in your environment, it will be a good inspiration for the team in terms of attitude and technicality.
- They are forming the company culture, these people that are going to embrace the values set by the company, so it has to be one of the criteria you hire with, for example, if you have “ownership” as one of your companies’ values, you should sense it in your candidate during the interview process.
- A good hire will hire good when you scale out your team.
Finding the Right Talent
The right talents might come from inside the company, so you can promote them. Or from outside could be through the HR, Recruiters, Headhunting, Ads, References/Referrals, Meetups, Events, etc.
Acquiring a new talent and leveraging it could be through the following:
- Replace and open to investing because it is a good chance to and it is a very good motivation for all the other team members because they will know that there are recognition and reward in the company.
- Search for new skills: along with the skills you are defining in your job description, it is very important to look for new skills, for example, you might notice hard-working, excellent problem-solving, analytical skills, this will be bonus skills for the hiring.
- New capabilities, if you’re hiring a team member to work on your back-office team and they have the capability to work on cloud infrastructure, this is a capability that you might invest in the future and leverage it.
- Succession planning: is a process for identifying and developing new leaders who can replace old leaders when they leave. It is coming through activities logging → performance evaluation → helps you in recognition → then helps you in taking action of promotion.
- Diversity, also helping in culture and this is something that we are focusing on in our Tradeling.com environment.
Team Retention
Every one of us knows how painful is the process of someone leaving the company because of the costs of the high turnover:
- Hiring and onboarding activities: in the ideal and smooth candidate acquisition, it takes two months from the screening till he/she joins and four-six months until we feel they are fully onboarded and productive and this causes:
- Losing productivity.
- Less engagement.
- Stakeholders impacted.
- Training costs.
- Culture impacted.
How do we avoid the pain of turnover:
- Align IT to the business, you don’t know how important is this; it is a perfect motivation for the team member. There is a complete article I am preparing in this regard. Stay tuned :).
- Build team skills, for you as a manager, you have to be aware of the skillset you are building in your team and you track it in a monthly/quarterly manner, check this sheet that I am always using and it helps me a lot.
- Performance reviews, we all know it but if it is not tracked and logged, it will not make any sense because you always need evidence against any decision you make and this will help you a lot.
- Talking and listening.
- Fire the people that don’t fit, because the pain of living with the bad fit will be much difficult of removing them.
- Recognize and reward and then you will be rewarded by their loyalty.
- Be flexible in hours and locations, but it might be a good fit for your company.
- Invest in them, make them feel they always have something new for them, otherwise they will ask, why do we should stay with you.
- Cultivate respect in your company and environment.
“People leave managers, not companies” this is very correct based on most of the cases I have seen during my career.
If you have the retention rate in a company is 90% in 12 months, still a good rate.
Defining the Requirements
- You have to define why you’re hiring.
- You have to define the roles and responsibilities, is it a new role? is it a new responsibility? and etc?
- Skill requirement area:
a. Technical.
b. Communication, this is important because you’re working in a team.
c. Leadership if required. - Also, you have to align with the team that this candidate is assigned to, just to make sure you didn’t miss anything.
And eventually, you document this process.
Acquisition Process
Hiring should go so seriously. Always. These are some easy steps that you can follow:
- Post a job with a description.
- Conduct a phone interview/screening that gives you an overview of the candidate, so you don’t waste much time if they are not qualified. This stage could be with very generic questions. Might also include salary expectations.
- Face to face interview, you can even involve the team as well without participating in it.
- Make a follow-up interview if you are still not sure.
- It is recommended to have a technical test/challenge.
- Make a selection out of multiple selections. When you select, you prioritize the candidates from up to the bottom.
- If everything is alright, it goes to finalize the paperwork.
Preparing and Designing your Questions List
- You have to have a written test, like a list of questions.
- You prepare the communication and leadership questions.
- The most important question, do they have the potential, motivation, and attitude?
- Also, you might think about critical thinking skills.
Onboarding
Here you have two onboarding processes, one for HR, the second is for engineering.
At Tradeling.com, we are:
- Documenting the process in a Github repository as following (from a high level). Every new joiner is contributing and enhancing this documentation so it gets better every time.
- We are asking the new joiner to prepare a competitive analysis and represent it to the whole team which is building a very strong foundation for the new joiner as business intaking.
That’s it for this part, feel free to reach me in the comments section, stay tuned for the next one “Building Team Structure”.
References
- https://www.pluralsight.com/courses/practical-team-management-software-engineers.
- https://www.projectmanager.com/training/leadership-vs-management.
- https://www.indeed.com/career-advice/career-development/when-to-manage-vs-when-to-lead.
- https://www.patkua.com/blog/anyone-can-be-a-leader.
- https://en.wikipedia.org/wiki/Succession_planning.