Struggling as tech lead - need some advice.
Posted by Puzzleheaded-Yard945@reddit | ExperiencedDevs | View on Reddit | 39 comments
I’ve been a tech lead for my team for 3 years. Though I was called as a tech lead I was the only developer. So, I coded everything. Last month we got 2 new devs added to the team. My manager is now expecting all 3 of us to be leading our own MVPs individually. Each will be responsible for working with requiremts, agile lead, architect etc to get all cards needed in Jira to be coded and delivered. Being a tech lead I get questions on everyone’s MVP as well from different stakeholders which I am struggling to answer. I did tell my manager that I am struggling to find time attending meetings of other MVPs and lead and code another one all by myself. But he doesn’t seem to care. I am not sure how to navigate this problem.
Is his level of expectations reasonable? Or am I slacking? On top of this we got a new agile lead who doesn’t allow me to delegate and says it’s her responsibility and not mine. But she also assigns low priority tasks to devs with PO support but I am held responsible for not meeting deadlines. Is this fair? As a tech lead do I have a right to delegate? Thanks for taking your time read so far.
cougaranddark@reddit
I'm a lead of a team where each engineer has a project they kind of own. I have a weekly sync with them before my Team Leads check-in so I can report my team's progress as well as my own.
As leads, it's our job to have enough of an understanding of what our teams are doing so we can help unblock them when needed, and we can't do that if we don't take an interest in their work and have some knowledge of it. Without that, your just an engineer and you're not working your way up to leading.
No-Garden-1106@reddit
Just wondering, when you move to a team lead, I just assume that you would be coding less. How would that impact future job opportunities and future job interviews? Would you only be applying for manager or team lead roles? This is my hesitancy with taking up a team lead or engineering manager role. I feel like still staying at senior engineer level or staff level, whatever, some IC track is just way better for me to keep my skills sharp. Not just for the current company, but for future opportunities.
What I noticed from my previous companies is that yes, the team leads were excellent at programming/systems but they really couldn't focus on it because they are focusing on project/management too much that their skills will atrophy given a period of time.
cougaranddark@reddit
Thinking of the bigger picture and being able to motivate a team are far rarer skills than 'mere coding'. I'm also asked to help whenever we adopt some new tech, so I get to be at the forefront of new implementations. If 98% of your time is coding, but 90% of it is the same kind of thing, you're not really advancing anyway. But if I spend 20% of my time coding, and it's all new, at the end of the year, I've learned more new code than I would have otherwise.
I've gone between lead and Senior roles all my career, being a lead is not in any way a career risk. I'm often chosen as a lead because I enjoy talking to people and helping them, and I seem to improve morale on the teams I lead. I find that way more satisfying than merely getting a certain number of points in each sprint.
No-Garden-1106@reddit
Copy, aligned.
I guess for me I would have a different idea of what I want to do, I would prefer at least 4 days a week where I can "do IC things", not just coding - designing, thinking of tech initiatives, soft skill improvements. I am fine mentoring the younger engineers as it helps me but being I am not at the point where I want to be held even partially accountable for someone else's work.
Murky_Citron_1799@reddit
If you don't know something, just say you don't know and leave it at that.
Puzzleheaded-Yard945@reddit (OP)
Thanks for answering. I am doing that right now but my agile lead wants me to know everything. And I get called in for over an hour by her and being told how it’s important as a tech lead to know everything.
bits0xF@reddit
Know the architecture and overview. Don't go into implementation details. If they ask implementation details, say you will get back with details from the dev.
UnprofessionalPlump@reddit
Tell her it’s above your pay grade. you’re a tech lead of your own tech project, not a team lead/manager. Ur scum lead sounds like a PITA
Puzzleheaded-Yard945@reddit (OP)
Yup she is. She lacks empathy or understanding of the challenges to achieve that unfortunately.
NoPain_666@reddit
Is she your boss/superior? If not, tell her to talk to your boss if she thinks theres a problem
flavius-as@reddit
Find a very concise wording. Use only that.
If she obsessively calls you to ask about other projects, obsessively repeat too: As stated on ...
Murky_Citron_1799@reddit
Is this person your boss? Decline their meetings and give "spending time deep diving to learn everything" as the reason
LookAtThisFnGuy@reddit
Important to set boundaries. GL
nullbtb@reddit
Just do your job to the best of your ability. Don’t take shortcuts or half ass anything. Whatever you do, do it well. Document all the tasks you’re working on as much as you can. Flag things that are at risk as early as you can. Try to avoid useless meetings.
Other than that.. don’t stress too much. Don’t burn out or work extra hours to please any of those people. It’s just a job. In a year or two many of them won’t be there or you won’t be there. Above all, ignore anything an “agile lead” thinks you should know or not know.
Wild_Instance_1323@reddit
what's "agile lead" by the way?
bombaytrader@reddit
yep, document everything and add the effort / time you spent in meetings. Have 1:1 and raise concern regarding productivity. If no traction from your manager for 2/3 months, get "advice" from skip. If still no traction time to bounce.
Puzzleheaded-Yard945@reddit (OP)
Thanks so much. I was worried about burn out. But I will follow this advice to keep my sanity in check.
_TheGrayPilgrim@reddit
Yeah Op, you sound like you're doing great and most small businesses would want someone like you on their team. Also in a high context switching environment it can take a toll on mental capacity so it's definitely not easy to juggle as much as you are already. Forget about the agile lead and just focus on things within your control.
nullbtb@reddit
Been there, done that. Not worth it. None of those people are your friends. Don’t burn yourself out trying to please anyone. Never let your job overtake your life. Do an amazing job during normal hours. Kick ass and innovate. Document everything well but be greedy with your time.. people will respect you more for it.
Inside_Dimension5308@reddit
From the sound of it, it looks unrealistic. I have had situations where I am trying to work on something and also track progress of my subordinates.
And 80% of my time goes to handling the queries of my subordinates and other meetings. With only 20%, one cannot expect me to be fast with my own tasks.
Fortunately I am only expected to delegate tasks. So, whatever I take on myself is just extra and I usually work on research tasks.
Frenzeski@reddit
It seems a bit odd that you’re expected to be across 3 seperate projects while contributing to one. I would expect either you are acting as tech lead/architect and you are doing very little hands on work but managing three projects or contributing to one.
It’s difficult to switch from those two operating modes, high level and low level. Can you break your week up so you have dedicated days to code vs attend meetings? I find that it’s a lot easier to maintain focus if i have a whole day for coding or meetings. Mixing both it’s impossible to maintain focus :)
Ultimately you should set expectations for your manager around what you are capable of achieving. If you have to attend meetings 3 days a week then you can only get 2 days a week of coding in so that means the project you’re working on will take longer. If they don’t like it then ask them how we can work together to solve that (and resist the inevitable urge to tell them to shove it)
Puzzleheaded-Yard945@reddit (OP)
Haha I am definitely trying to control that urge. Unfortunately this is a constantly evolving project. I can start a day with 1 meeting on my calender but by eod I would be included in 4 or 5.
Frenzeski@reddit
Then all you can do is set expectations about what you can reasonably achieve and ask what you should prioritise
apartment-seeker@reddit
What kind of company is this? What are you guys building?
kenjura@reddit
Title? Years of experience? This level of responsibility makes sense for a staff engineer, maybe senior if the company and the projects are small.
Just_Chemistry2343@reddit
You have a team break down work, priorities and distribute.
Puzzleheaded-Yard945@reddit (OP)
Agile lead and my manager is not allowing me to distribute. PO prioritizes. My manager does not want me to breakdown work for other devs.
light-triad@reddit
Then you're not a tech lead. How are you supposed to lead without having say in what gets prioritized or how much work your team is able to accomplish?
Do they just expect you to know everything the other devs are doing so it's less work for them to find the right person to ask questions to? What's the point of that? They can just go to the people actually working on the projects and get better answers.
To be a lead you need to have control over how the projects are organized. You should have final say in how much work your team takes on. You should have control over organization of project syncs, so you don't have to attend three different sets of Scrum ceremonies. You should also have control over the technical directions of projects so you can estimate delivery timelines.
Just_Chemistry2343@reddit
You need to push back and don’t give in. You cannot function as a lead if they are going to take all decisions for you.
besseddrest@reddit
He doesn't care that you aren't informed or he doesn't care that you are struggling?
ok so it sounds like there is a clash of role responsibilities
sure, but i'd say only if y'all were on the same project. You're working on 3 separate MVPs? You don't have time to know lead even 1 project.
TLDR, empower them, encourage them to figure out how to get the answers because you are all aware that you're on your own MVPs. You can lead in other ways - e.g. pointing them in the right direction. They have to want to learn how to be uncomfortable moving forward when there is ambiguity
besseddrest@reddit
oh and PS i think the other lead is trying to help you, not battle you for lead. tell her how you think work should be dispersed because you work the closest with the other two devs, and you'll eventually be learning more about their MVPs. Let her help you, because it sounds like you could use a breather
Howler052@reddit
Can you get on top of things using AI? Keep the meeting summaries. Keep a summary of what other's are working on. When you're hit with questions, refer to your notes and then answer their questions.
Can you also take some work load off your shoulders? Any way to pass some of it on to others? AI coding agents are usually pretty fine at developing MVPs. As long as you don't push those MVPs to production!
NotNormo@reddit
Yes if you suddenly have hours of extra meetings and work you didn't have before, then obviously the time you can spend on your other tasks is going to go down. It's just logic. Regardless of what your manager thinks that's just how time works.
Adjust your estimates for your MVP accordingly and whether or not your manager likes it, that's what it's gonna be. Unless he wants you to skip some of those new meetings, that would be his choice.
t0rt0ff@reddit
It sounds like your manager is confused what his role is. Anything that's remotely reminds of people management is literally EM's job description. "He doesn’t seem to care" - that's one thing you don't want to say about your manager... Dealing with stakeholders - also part of the EM job description. Hard to say whether you are slacking or not from your description, but it does sound like your manager is slacking.
DualActiveBridgeLLC@reddit
If you are a tech lead you should be able to lead the technical objectives of projects for 3 people as that is not too much. When it gets above 8 people that is when I start to question if we need to break things up.
Uhh, managing resources (like people) is literally his job. As a tech lead you have to tell him what you needs with tradeoffs and pros/cons. Then he decides how to prioritize based off your technical feedback. If everyone is broken up into individual projects already, what exactly is he deciding?
Yup, developers are expected to work with requirements. Typically moving requirements to Jira tasks is a tech lead responsibility, not everyone unless they are more senior and trusted.
Nope. Agile is the process and that is typically the tech lead to enforce and promote, or sometimes a Scrummaster. Not everyone has a decision in the process, but everyone should have a voice in the process. But at the end of the day someone is responsible for the decision of how the process will work, typically the tech lead or manager. I am the EM and recently took on Scrummaster role, so I get to dictate the process, but I take a lot of feedback during the retro. I am responsible for the success of the projects, so I get to decide how to meet the needs.
Nope. Tech lead decides the architecture. They take inputs from the other engineers but at the end of the day as the EM I trust my tech lead to make the decisions on the best architecture. If he fucks up they are responsible, but if they succeed they get the credit for the solid design. He decides the level of feedback he needs from the rest of the team members. Most junior/intermediate engineers can't even do this effectively until they are give the opportunity and coaching. You set them up for failure unless you (as the tech lead) train them.
You boss is the one beholden to stakeholders, not you. I shield my tech leads from stakeholders and bring them in when they are needed. The only exception is when I want to show them off to stakeholders and clients (a good client to tech lead meeting can close large business but you have to prepare and make sure everyone is aligned), but this is intentional and I tell my tech lead before hand to make sure they are ok with the exposure.
No. This is a stupid way of setting up roles and responsibility. What the fuck does your manager even do since he delegated away his role.
I thought you all were expected to be agile leads? Regardless, Agile leads are process enforcers...not managers. Delegation is is the process of handing tasks to subordinates in a hierarchical structure. You do it to meet the objectives you are responsible for, but need help and as an opportunity to grow others skills. But you maintain responsibility. The Agile lead cannot delegate because they are not responsible in the first place. Sounds like they are another Scrummaster that just wants to be the boss, which isn't their role.
Ding ding ding. There it is, power without responsibility. That is not acceptable, and it is the widest complaint by devs. If you are responsible, then you must be given the power to succeed, and it is your responsibility to accurately communicate with your manager. And in return it is his job to fix it.
Not really, but sort of. My tech lead can ask people to work on specific task in a certain order with the expectation that he is doing it because he is responsible for the technical success of the project. But as the EM, I am responsible for the entire business success of the project (budget, personnel, priority, etc). The developers report to me, I do the compensation recommendations, I ultimately decide priority, I focus on team moral and motivation, etc. If the project fails, I failed first and foremost. And in return for taking that burden, the devs understand when I succeed they succeed. That said, the tech leads power comes from (or doesn't) the EM. In Agile-Scrum the tech leads does not delegate, but their opinion is weighted higher than others in the decision making process. In NO WAY does the SM get to delegate though, they are a servant leader. If anything their job is to remove as many blockers from devs as possible, which typically means devs unload process problems to them, not the other way around.
Good luck but your roles and responsibilities sound really fucked up. I would suggest maybe learning about about the RAPID techinique of defining roles/responsibilities. Really helped me clarify with my managers.
Puzzleheaded-Yard945@reddit (OP)
Thanks for detailed answer. Role is definitely messed up. I will take a look at the link.
sneaky-snacks@reddit
I have to say: if you can delegate or prioritize tasks, you shouldn’t be held responsible for meeting project deadlines. It doesn’t make any sense. You’ve got no way to ensure the other devs would meet deadlines.
It sounds like an awful situation. It’s always hard to tell from a short description, but your agile lead and manager seem to be passing the blame onto you, without giving you any real power to manage the situation. I feel like it’s a bunch of gaslighting.
I would have a discussion with you agile lead and manager about meeting deadlines. You can meet deadlines for your projects, but you can’t ensure the other devs will meet deadlines, if you can’t assign them stories.
mxdx-@reddit
Up until recently I had 3 project being tech lead on. It was impossible to juggle all of it and perform the way I wanted so I talked to my manager, promoted a senior to lead and we sync together.
I think my ego prevented me from doing this until i was close to breakdown. Don't let ego stop you from saying when it's too much.
Furthermore, I realized I couldn't even attend to simple but necessary tasks like internal training, booking my vacation in the communal calendar (yes, even that fell through the cracks). Since I let go and focused on what I can, I've been feeling much better at work. More focused.
justUseAnSvm@reddit
First, you have to get a clear understanding of roles and responsibilities with your manager and whatever the “agile lead does or is”.
My approach, is I’d just pull everyone into a meeting and bring this up. If I’m to be tech lead, I need responsibility over technical execution, there’s no other way you can own the tech if you can’t own the time. There are just certain things anyone needs to do the job.
A lot of team leadership is about thinking where you want to go, and with your team getting credit, do whatever it takes to get you there. My team has just about no PM support, it’s just me and 3 devs, so I can take ownership over outcomes and just sort the rest out.
Just stay lazer focused on your goals: know what’s in, and know what’s out. Then, just wake up everyday and do the next right thing!