This role often differs from company to company. What would be your description for a tech lead?<p>And along with that question, are you one? Would you want to become or stay one after what you've seen or experienced?
Based on my experiences: They shield junior developers from themselves and from upper management. They know how to translate requirements from management into feasible projects. They perform code reviews and lead the collaborative process of designing a system.<p>It's more about taking ownership of the process than about the code itself.<p>I haven't had any developers report to me but might be interested at some point in my career. Over time you realize that having strongly defined processes (while avoiding micromanagement) is at least as important as technical skills, and it requires strong leadership.
At my company, I am the tech lead.<p>(For me), the company isn't big enough to justify a full time Software Architect. Also, generally Software Architects don't spend a lot of time (if any) coding.<p>I prefer the title Tech Lead over Senior Developer, because a Senior Developer could be someone doing the same job for several years (ie a mid level developer who has been there for a long time). A Tech Lead is responsible if something goes wrong.<p>A Tech Lead also has a mentoring component. Senior Developers don't necessarily have the communication skills to do this.