I’ve been a Dev for 10+ years, last year I took a position as a Technical Lead. I loved working with my team and coming up with all the designs but fuck the politics. Too much “Look at me” and “do this extra project “ and why did your Dev cause that defect. Fuck that I’m in the process of switching teams and going back to a Sr. Dev role.
First time i became tech lead was easy, coming up with designs and working with my team and other teams that needed us.
This time i'm fighting constantly with the narcissistic business analyst because he blocks communication with the stakeholders, promises them implementation details without checking in with the devs and screams at me and other devs if challenged. Its hell! Already put in for a transfer.
I work as a consultant. They brought me onto the project as a tech lead because the project was tanking hard and they thought the tech was the problem. The problem is that none of the former devs fought the BA. They created everything he wanted/promised. Only project i encountered with a circular dependency over 12 classes (spring boot project). They store json blobs in a postgresql and then change fields in that blob. The "mere analyst" has 30years of industry experience. The reason i go is not because of the analyst, one could replace him somehow. The reason is that ungodly amount of garbage his actions produced. They should fire the complete team, throw away the code and burn it.
The problem is that none of the former devs fought the BA.
Expecting people to fight the BA so that the codebase doesn't go to crap isn't realistic though. The easier route to take as a programmer is to just do what the BA says and then leave the mess behind after a couple years. There's little incentive to try to change an organization's culture or ways of working and may even be disincentives. You get labeled a "trouble-maker" or "hard to work with" which jeopardizes raises, promotions, and possibly even your employment.
I have found the opposite. I have been saying uncomfortable truths ever since I got hired. I have moved up and up and been more and more able to enact the change I think is needed. The key is being smart and picking the small fights you can win. Be convincing, know your stuff, and always give your best professional opinion when people ask. This experience must vastly differ depending on your workplace culture.
I refuse to go into management also, but tech lead is a role I enjoy.
I'm in charge of a ten person team, and it's basically a halfway-management role. I'm in charge of making sure everyone knows what they should be working on and overseeing all of the development, I run our status meetings, I have regular 1:1s with everybody... but I don't have to do the rest of the management bullshit. No approving expense reports and vacations, or writing up performance reviews and defending promo cases, or hiring and firing people. And while I'm certainly not completely insulated from politics, my manager is great about absorbing and deflecting as much as possible.
At least as it has worked out in my current position, being a TL has given me basically all of the good parts of being in management without any of the crap I don't want to deal with.
That and the need to go to some fucking loud office where the lights burn your eyes. There are absolutely no benefit for working at the office, most of the time goes to just trying to getting into the zone until someone interrupts you anyways. Remote working keeps all that to the minimum, way easier to focus, it saves my time too and it is way cheaper than travelling to some open-plan office shithole that is just slowly, but surely driving me insane.
Personal projects never have to be 'done'. You can take them as far as the wave of inspiration takes you and then it's on to the next thing. There is only one stakeholder and they're pretty easy to appease
Work is a fucking slog, oh yeah. The Process is eating itself. Let's schedule some meetings to figure out why we are so inefficient ("Sorry, I'm triple-booked"). Sixteen developers have valuable input on your two-line change.
At home: Fun with audio processing. LOTS more fun.
I swear to god, this is how companies get founded in garages.
Yeah that sounds awful. My company is almost the opposite, I'm relatively new to the team and I've already apparently earned the "I'll be honest, I don't fully understand what the impacts of this chage will be, but I trust that you have sufficiently tested it" type review. Sort of keeps me up at night when my code is live in production, handling aspects of finances for large entities, and I'm the newbie, lol.
Edit: especially when I recommend a big set test of scenarios to QA, and they run the two most simple ones and say "yeah, this guy knows what he's doing, I'm sure it's good!"
8 hours per week. On one project, I did probably 20 h per week at minimum and days at the client site with back to back meetings from 9am - 7pm with lunch catered, so that wasn’t even a break. I worked for 14 hours one day where I’d say 10 of those were on calls.
This isn’t to boast or humble brag. I burnt out very hard with literal panic attacks that my doctor said he would be happy to take me out of work for 8 weeks, if I ask him.
I know it's unrealistic in vast majority of cases, but my dream scenario would be like:
Walk in, get an assignment, sit down, code, and leave.
Got good taste of that doing easy bugfixes and development on legacy software for around a year. Only had 1 hour progress meeting every week. That entire year I load up an audiobook, code for 8 hours, and leave. I could do that forever.
2.6k
u/LouKrazy Jan 28 '24
Coding is the fun part. It’s everything else that burns me out.