Hello everyone.
Today we'll talk about such a profession as Engineering Manager or Team Lead. I've gone through a long journey as a developer and eventually became an Engineering Manager, and I have experience in this field. Engineering Manager is a profession that requires not only technical knowledge but also the ability to manage people and teams. Thus, it's a mix of a manager and a technical guru.
I would like to highlight the following key responsibilities for a technical team manager:
- Team management and development
- Technical aspects
- Development processes
- Business communication and agreements
- Hiring and onboarding new employees
Let's examine each point in detail.
Team Management and Development
Team management is one of the key responsibilities of a manager. They must be able to motivate, develop, and support the team. Emotional intelligence is very important here to understand the needs and moods of the team. It's also important to be able to provide feedback and help resolve conflicts. Personally, I think the key feature here is to hear and understand each team member, try to understand everyone. Let's list the responsibilities here:
- One-on-ones, personal meetings
- Feedback, setting development goals and tracking their achievement
- Helping resolve conflict situations
- Organizing knowledge sharing within the team
- Vacations
- On-call schedules
- Birthdays / weddings / child births and other important events in employees' lives
- Annual Review/feedback
- Salary, bonuses, and benefits
It's important to track employee emotions. This is crucial to minimize burnout risk and maintain employee motivation.
Technical Aspects
This is where the technical guru comes into play. This is all about reliability, performance, scalability, and security. Also partly about long-term vision and project architecture as a whole.
Here are the main stages:
- Architecture
- Design / system design
- Code review of critical changes
- Team's technical debt
- Documentation
- Development
Load assessment and performance, system scaling, load increase plan, architectural solution risks, fault tolerance, code extensibility, review of important decisions, c4, documentation, and development.
Development Processes
Development processes are about how the cycle of development, testing, and code delivery is organized within the timeframe that's established and confirmed with the business. There's a lot of organizational work in terms of planning, evaluation, control, and reporting. Jira, Gitlab, n8n, Allure, or any other analogues can help us with this.
Here are the main stages:
- Task setting and estimation
- Task decomposition
- Code review organization
- Planning and execution control
- CI/CD and automation
- Release cycle / QA
- Definition of Done
Business Communication and Agreements
Business communication requires the ability to effectively listen to and understand business needs, as well as clearly explain technical solutions in understandable language. It's important to properly document agreements and manage stakeholder expectations, building constructive dialogue between technical and business teams. It's also important here to protect the interests of the technical team and prevent unrealistic deadlines and tasks.
Here are the main stages of business communication:
- Effective communication with business
- Discussion of realistic deadlines and tasks
- Documenting agreements
- Stakeholder expectation management
- Critical view of business requirements
- Return to common business goals and team business values
- Transparency and openness between technical and business teams
Hiring and Onboarding New Employees
One of a manager's responsibilities is hiring new employees and their successful integration into the team. It's important to be able to conduct interviews, evaluate candidates, and make hiring decisions.
Equally important is being able to onboard new employees so they can quickly integrate into the team and start working. Don't underestimate this stage; it's the starting point for successful work. It's important to create a clear, unambiguous plan and guide for newcomers so they can quickly understand processes and tasks.
Here are the main stages of hiring and onboarding:
- Conducting interviews
- Evaluating candidates
- Making hiring decisions
- Onboarding new employees
- Creating a plan and guide for newcomers
- Supporting and helping newcomers
- Clearly defining probation period goals
- Make sure to congratulate the employee on successfully completing their probation period. It's preferable to even make a presentation with congratulations and statistics from the probation period.
This is the first cycle of articles about team management and the Engineering Manager profession. In upcoming articles, we'll discuss other aspects of this profession or examine each point in more detail.
Thank you all for your attention. Until next time!