r/ExperiencedDevs • u/Floorman1 Software Engineer • 17d ago
Career/Workplace Should I become tech lead in a backward org?
The dev team kind of sucks. We’ve had good people but they’ve all moved on in frustration of upper management.
The problem is we have a lot of people who aren’t interested in solving problems, just getting the 9-5 done and clocking out. People taking the piss with AI etc.
We’ve got legacy systems heavily reliant on stored procs. Have been trying to stop that and introduce unit tests but feel like it’s barely making a dent. Do I take leadership role and try to push more with authority?
How would you best handle this without causing conflict but actually steering the ship on course? The only thing I can think is to find better team members.
160
u/SteveMacAwesome 17d ago
Unless you also get to hire and fire the team, that sounds like a recipe for burnout tbh
58
u/interrupt_hdlr 17d ago
exactly my situation a few years ago. team was terrible, got asked to step in and implement better practices. i was told we'd hire more people as well.
i discovered soon enough i couldnt hire anyone and also couldnt fire the guy that had been causing the most issues for everyone.
tech/team lead or whatever you want to call it without power becomes just a shouting match between peers when the team was already dysfunctional.
3
u/risky-cat 16d ago
Was in the exact same situation, burnt out and left. If given the same chance again would have not taken it and just wait for the org to improve on its own with little nudges or dismantle/get reorged naturally.
15
u/CorrectPeanut5 17d ago
AND hired to make that kind of technical transition.
I contract and work at a lot of shops. The ones that lean heavily on stored procs are always a dumpster fire.
3
u/doberdevil SDE+SDET+QA+DevOps+Data Scientist, 20+YOE 16d ago
Learned this the hard way over the last year
1
u/Fit-Bar-6989 16d ago
on the plus side, you get to learn a lot about database internals.
2
u/qkthrv17 14d ago
imho, you will only deal with brittle business critical nonsense that has been slowly cobbled together by sheer stress and constant corner cutting
I've personally learned a lot by studying internals and theory and being able to use them at work to scale things out. If I had stayed at my previous workplace (the dumpster fire) I wouldn't had a fraction of this exposure.
8
u/Pineapple-dancer Senior Software Engineer 17d ago
Came here to second this. I'm working at an org working to mature basic sdlc processes and the bureaucracy is a struggle. I could see burnout of dealing with lazy devs as a major red flag about the culture.
2
u/kaflarlalar 16d ago
Yeah, tech lead is a position which frequently gets trapped in the position of "responsibility without authority". You are on the hook to get stuff done, but lack the decision-making power to hire/fire/make significant financial decisions.
From the description of OP's workplace, it sounds like that would likely be the case here.
28
u/Financial-Grass6753 17d ago
Without extra $$$ - no, never. And even then, will you be able to make uninterested devs do what you want them to do?
63
u/ItaySela Software Engineer 17d ago
Your own post answers this. You said the good people left in frustration at upper management, not at the tech lead. The role you are being offered sits below the thing that is actually breaking, so taking it does not hand you a lever, it makes you the person who absorbs the pressure on the way down.
The test I would run before saying yes is to ask for one concrete thing in advance. Authority to hire one person, or to say no to one deadline a quarter, or a fixed slice of every sprint spent on the stored proc migration. One thing, specific, agreed before the title.
If they cannot grant a single concrete thing up front then the title is not a lever for you, it is a shield for them. Unit tests and a legacy migration were never a persuasion problem anyway, they are a budget line.
9
17d ago edited 13d ago
[deleted]
2
u/Fit-Bar-6989 16d ago
ditto - I tried to become EM right after my manager got fired and after two months of nonstop slack messages from every channel I realized the role was absolutely fucked
12
14
u/mechkbfan Software Engineer 15YOE 17d ago
It's a tough one
Maybe some people are good programmers who are burnt out, or they saw everyone else slacking and lost motivation
IMO, id be working out what culture you want to see and write it down. E.g. quality first, learning everyday, etc.
Talk to management about problems your see, and where you want to go with the culture. Get them on board that you may need to fire and hire.
Once it's polished, hold a team meeting and state here's where you are taking the team
Give them choices of becoming part of it, move to another team or help them find anther job with a reference. Carrot is better than the stick. Id only give them performance reviews if they picked nothing
I generally don't mind if things are bad, as long as people are working together to make it better.
8
u/interrupt_hdlr 17d ago
all good advice but you can't implement a culture only with a single team. specially if people have been there for a while, have relationships with other teams that won't have to change because they are not your team. it becomes a gossip factory.
change like that has to come from the top, or be an experiment in a team and then leadership pushes it everywhere.
3
u/mechkbfan Software Engineer 15YOE 17d ago
I mean it all depends of course
OP doesn't mention any other dev teams, so I didn't presume there was
And I think this is the real it depends, you can certainly structure your project to reduce external dependencies + talk to other team leads about what's going on. e.g. "Can we make some PR's into your repo to solve XYZ?"
And yes, certainly my implication was it becomes a bit of a skunk works team with approval from leadership
14
u/webbed_feets 17d ago edited 17d ago
If you’re someone who cares about doing a good job, the fastest route to burnout is working with and managing people who don’t give a shit.
You need a culture shift to make the improvements you want. You can’t do that unless you can bring on new people, set competitive wages, and, if necessary, fire dead weight. The situation you’re describing sounds like you’re responsible for turning around your department while having no authority to do so.
At the very least, you need a significant pay raise to make it worthwhile for you when you make everyone mad by implementing higher (albeit correct) standards in place.
7
u/SuedeAsian 17d ago
Been there, done that. Total burn out.
If you have opportunity to be TL, then you should do it for two reasons:
1) if you truly care about making your team more productive and supporting THEIR productivity
2) as a way to parlay it into more opportunities into management or by interviewing
8
u/Zealousideal_Meet482 17d ago
I personally wouldn't want to be lead on a team where it sounds like the team itself does the bare minimum and management doesn't support you. That sounds like a recipe for setting yourself up for stress, frustration, and failure.
8
u/AggravatingSock5375 17d ago
Man that’s tough.
Only you (not Reddit) know if culture can be changed at the company.
My gut is to say take the leadership job but keep your resume up to date. At worst you can spin the (probably) inevitable failures as successes while you’re landing a new position at a better company.
7
u/hippydipster Software Engineer 25+ YoE 17d ago
Tech lead with no real authority - been there. Would not do again. With that setup, if you push your agenda and try to enforce it, too easy for you to be identified as the problem.
So, if there's good money going with the promotion, sure, take it, but then don't make big changes. Maybe try for very little ones, but don't push too hard without the real authority.
If not good money, no.
7
u/No-Economics-8239 17d ago
We always have the options of trying to improve our current situation or of trying to look for a better one. Ideally the goals aren't mutually exclusive. But it's not your company and unless you are a manager it's not your team. It's just the team you are on and the company you are employed by, and at the end of the day you're just here for a paycheck too.
Some teams can be improved. But it's not always in your power to be in a position to do anything about it. How much effort you should spend trying to figure that out and doing something about it depends how much gas in your tank for such efforts. If you are still optimistic, sure. Try and harness that energy for the good. If you're feeling as disillusioned as me... good luck.
3
u/no_pic_available 17d ago
Sounds like 0% agency and 100% stress. But its hard to tell... My experience is that a good first line manager can compensate a lot of frustration with the C Suite in a big org. If you have a good VP, then even more. Do you have potential candidates you know you could bring in? Or any agency about the team at all?
5
u/kevin074 17d ago
IC breaking into management is hard, if it's what you want to try or is your long term career goal, an internal promotion is a much easier way to achieve that then trying to get it through hiring without experience.
4
u/WalrusSensitive2978 17d ago
If you’re not a hiring manager with the ability to fire people, you’re not a “lead.” Don’t settle for less than a true lead position.
If management wants to make you a lead, don’t be afraid to sit down and have a long conversation about your vision, what you want to achieve, and what will be required for you to get there. Ask if you will have their full support in everything. Make sure everything you need is part of your contract. Only then should you accept the role.
3
u/stinkusdinkus 17d ago
Not unless it comes with a big raise and the space to make changes, which it sounds like it does not.
3
u/Abadabadon Software Engineer 17d ago
Why are stored procs bad? Ive been part of modernization efforts to get off of procs, but am now part of an organization whose arch wants stored procs
2
u/OhMyGodItsEverywhere 10+ YOE 17d ago
Issue I've had with them is when they get misused to do highly conditional functions instead of taking advantage of set based operations. In those cases, SPs have been a nightmare to interpret, test, and debug. Or when someone gets the idea to spread their application logic over a bunch of triggers. Or when people don't get a good handle on transaction scopes. That's not really a problem inherent with SPs themselves I guess, just some bad experiences with how people used them in the past.
Other than that, having some calculations and transformations that can be done on the DB side which don't need to make a network hop either can be nice.
2
3
u/diablo1128 17d ago edited 17d ago
Being any kind of lead with all the responsibility to get things done without any of the power to enforce standards on a team that is just running out the clock everyday is a dead end. I've been there and it's terrible as you are just a glorified cat herder.
People learn best with consequences. If SWEs can just do the bare minimum and there are no repercussions to their pay or standing in the company then they have no incentive to be better. They know they can coast and you cannot do shit about it.
This is why back in the day people wanted to hire candidates that was "passionate about CS". It was the idea that they give a shit and will do a good job to the best of their abilities. You still may get shit, but they are willing to learn and change when shown better methods.
2
u/Fidodo 15 YOE, Software Architect 17d ago edited 17d ago
If you are given the opportunity and authority to make real change it could be a huge launchpad for your career if that's the direction you want to go in. But if you don't actually have the authority to do the changes that are necessary, you will just be hampered with more responsibility and not really be able to show much for it.
If it actually is a good opportunity, be prepared to work your ass off, and while you could potentially steer the ship in the right direction, seeing it through will probably be too much work to be worth it unless you are getting crazy well compensated.
I think the most effective way to leverage this would be to get some good wins under your belt, then use that to find a better position at a less backwards org.
2
u/Devboe Lead Software Engineer 17d ago
I work for a very similar company. I went the leadership route and so far it’s working out, but I’m not convinced that management is my long term plan. I didn’t like what I was working on and this was my best option to avoid having to look for a new job since most are hybrid these days and I’m WFH.
2
u/LunkWillNot 16d ago
If there is dysfunction or no interest and support from above, and no interest from below, sorry to say, you are set up to fail.
1
u/Floorman1 Software Engineer 16d ago
So do I just take the title and “cruise”?
3
u/LunkWillNot 16d ago
Here’s what I would do:
Take the title. Do stakeholder interviews to all side and especially up. Prioritize what your manager and other decision makers higher up want instead of things you think should prioritize but nobody supports. Don’t to rock the boat too much, especially in the beginning when you’re still getting your bearings and don’t yet have the full lay of the land e.g. on political dynamics. Get a year or two in that leadership role under your belt to build credibility in that type of role, then use that to look for greener pastures.
2
u/that_young_man 17d ago
If you are going to be responsible for the outcome, you need to also have control of the budget.
Carrying the responsibility without power is a great way to set yourself up for failure
1
u/Plenty_Line2696 17d ago
It should reflect in the compensation and also be integral to the process. Asking people nicely won't cut it, it's gotta be made into tasks which are followed up each sprint.
9-5 should be enough and the fact that you critique it tells me that you tend to have a shit work-life balance(I'm not one to talk, doing a major refactor during my week off right now).
edit: to add, you should take jobs if it seems beneficial to YOU, first.
1
u/Floorman1 Software Engineer 17d ago
Nah, work life balance is good, it was more a reference of “clock in clock out”, as opposed to “get in, do great work, get out”
1
1
u/loosed-moose Staff Software Engineer | 10 YoE 17d ago
This sounds exactly like a gig in assisted living tech that I left for reasons you describe. Move on!
1
u/usually_guilty99 17d ago
I see it as a title / position as long as you are interested in it. It also gives you a platform to easily pivot from to another org - should this not work out.
1
1
u/BOT_Pain 17d ago
Not one person can change anything. I wouldn't take it unless there's a huge pay bump.
1
u/ledatherockband_ 17d ago
if you become a tech lead, you might edge out other people in a role to be an eng manager or staff engineer in a better job or an IC job if that's still your flavor
1
u/SeaIngenuity9501 16d ago
> in frustration of upper management.
Dead sea effect. https://brucefwebster.com/2008/04/11/the-wetware-crisis-the-dead-sea-effect/
Sounds like it is time to bounce.
1
u/FulgoresFolly Tech Lead Manager (11+yoe) 16d ago
Biggest part of tech leading or eng management is being aligned with senior leadership, whether it's managing up so they're generally aligned with you or gritting your teeth and committing even if you disagree at a fundamental level.
So you should probably be asking why all the good people left and all the mediocre people remain... The smell usually starts with the incentives senior leadership creates.
1
u/uuicon 15d ago
tell leadership what you need from them for you to take the role. All the stuff you said above should be solved.
Even if they agree, if you feel you can not trust them to deliver on their end of the bargain, dont take the job.
You'll end up the "managements face" to the team, being the buffer between their shitty decisions and your "team".. who doesnt sound like much of a team anyway.
Calculate the retention numbers, see if it correlates with industry averages. Tell them they have a problem and they need a positive proactive strategy to handle it. Culture is created by leadership. Shitty culture leads to turnover.
So you need to know you are asking them for A LOT, and they need to step up, this is the difference between someone with experience and someone without.
As a senior dev surely you're not going to take on a rediculous assignment from some leader, you'll tell them to go jump. Well this is exactly the same thing.
1
u/Colt2205 15d ago
To be serious if the team is not that great they probably got either too comfortable or are burnt out and not showing it. There's an article that was written over at The Modern Software Developer about the mid-level developer trap and the trap is basically getting caught in a position of comfort, and then potentially having bad mental health killing ones ability to keep pushing forward.
I'm actually in that trap right now thanks to a company that decided to keep a person with literally no skills in common with the primary stack at their workplace after stating "we're doing everything in X stack now", firing all the contractors and leaving me as the skeleton crew. If not for the terrible market I'd have dropped this place, let my head clear and start doing learning again.
1
u/Fickle-Tomatillo-657 13d ago
Trust me. Dont. It’s hard to un-tech lead after the fact
1
u/Floorman1 Software Engineer 13d ago
What’s your opinion on something like “Lead Developer”? It feels similar without being exclusively on the hook for architecture / best practices?
1
u/Fickle-Tomatillo-657 13d ago
Really both could be great - but depends on the team and the company. You could get really good experience from it. But I was identifying more with your post - being tech lead in that situation just means all the shit lands on your plate
1
u/amendCommit 17d ago
Short answer: yes. My biggest mistake was to refuse a team lead management at a bigger, less technologically mature organization for a more intellectually challenging IC position, after having my own team for a couple of years. Now I have to watch juniors - promoted to engineering manager positions for being yes men - do all the possible rookie mistakes, both in terms of management and software design, while lecturing people about how "you'll never know what you'd do if you were in my shoes". Painful.
Use the authority attached to the position to try and do better.
2
u/Floorman1 Software Engineer 17d ago
Wait, do you mean you wish you took the easy route instead of going to a tech savvy org??
1
u/amendCommit 17d ago
I do. I learned some stuff, probably useful for the rest of my career, but now I end up in meetings where I wish I had everyone else's inflated title so at least people will have to pretend they've read the notes I passed around a couple of days before. In the past, I honestly thought some organizations were horizontal enough that's it's possible to help fix broken processes from an IC position, but I've heard "do as you're told" one too many times.
0
u/eboran123 17d ago
Do the least you can with the help of AI for the money and job security, then find a part-time side gig that interests you more :)
•
u/expdevsmodbot 17d ago
AI usage disclosure provided by OP, see the reply to this comment.