What Every Tech Lead Must Do: From Hands‑On Coding to Team Management
This article shares a senior technical director’s hard‑won lessons on balancing hands‑on development, non‑functional requirements, architecture design, training, and management to boost team productivity and product quality in software projects.
Introduction
In 2017 the author, a senior technical director at Tencent, decided to share the lessons and experiences accumulated over years of work, focusing on how a lead engineer should allocate time and responsibilities.
Main Work of the Lead Engineer
1. Development
A senior programmer should spend at least 60% of their time writing code and documentation, starting the day by opening the IDE even if productivity is low at first. The first step after booting the computer is to launch the IDE, which triggers the coding flow.
Non‑functional Requirements
The lead engineer must identify and advocate for non‑functional requirements—performance, operational, and development efficiency—to prevent projects from collapsing after release.
Performance requirements
Operations requirements
Development efficiency
Performance Requirements
Many performance optimizations are misguided; experienced developers may fall into “performance obsession.” The lead engineer must cut through noisy advice and guide realistic performance work.
Operations Requirements
Automation is key: batch start/stop, reload configs, auto‑detect IP, safe shutdown, and automatic process restarts, while avoiding over‑engineered tools.
Development Efficiency
Efficient code structure stems from deep domain understanding; developers should abstract business models wisely rather than imposing a one‑size‑fits‑all technical pattern.
2. Design and Refine Architecture
Architecture design is essential and must be actively managed by the lead engineer, who should both create and implement the design, ensuring code architecture aligns with long‑term quality and scalability.
3. Critical Code Development
The lead engineer must tackle high‑risk code such as performance‑sensitive I/O, database indexing, or framework scaffolding, and stay familiar with core modules to act as a technical safety net.
4. Firefighting and Debugging
Rapid issue resolution requires strong diagnostic skills and the ability to use advanced debugging tools, which also raises the overall technical level of the team.
Training
Approximately 30% of a lead engineer’s time should be spent on training, including code reviews, technical proposal reviews, and knowledge‑sharing talks, to improve team competence and efficiency.
Code Review
Code reviews enforce style and technique, spreading best practices across the codebase.
Technical Proposal Review
For work lasting more than two weeks, a technical proposal should be drafted and reviewed, focusing on quality‑related non‑functional requirements such as scalability and maintainability.
Learning and Lectures
The lead engineer should continuously explore new technologies and share them with the team to avoid stagnation.
Management
Management should serve innovation, not become a bureaucratic burden; it should occupy less than 10% of the lead engineer’s time.
Performance Evaluation
Use simple metrics—progress and quality—on a 5‑point scale, and communicate clear expectations to the team.
How should the quantity of work tasks be set?
Effective tasks should guarantee quality, such as mandatory unit tests or monitoring tools, rather than merely counting bugs or feature completions.
Requirement Assessment
Technical leads should provide feasibility input but let dedicated project managers handle detailed negotiations.
Cross‑Department Communication
Prefer delegating extensive cross‑team coordination to project managers.
Progress Review and Task Assignment
Give directional guidance to project managers who then allocate tasks.
Interviewing
Prepare discriminating technical questions; let project managers handle the interview process.
Meetings
Avoid large meetings; focus on coding whenever possible.
Project Manager Work (Brief Overview)
Project managers handle scheduling, resource coordination, and communication, allowing the lead engineer to stay focused on technical work.
Conclusion
In small companies, titles and authority are sensitive, but the core principle remains: a lead engineer must stay hands‑on, guide architecture, mentor the team, and avoid becoming a detached manager. Software development is akin to surgery—requiring skillful, compassionate leadership rather than authoritarian control.
Tencent TDS Service
TDS Service offers client and web front‑end developers and operators an intelligent low‑code platform, cross‑platform development framework, universal release platform, runtime container engine, monitoring and analysis platform, and a security‑privacy compliance suite.
How this landed with the community
Was this worth your time?
0 Comments
Thoughtful readers leave field notes, pushback, and hard-won operational detail here.
