4 ms·
I'm coming up on a decade. I didn't start as a software engineer, but that's what I grew into. Every couple of weeks I start to think to myself, what am I doing
by jordan801 8y ago
I'm coming up on a decade. I didn't start as a software engineer, but that's what I grew into. Every couple of weeks I start to think to myself, what am I doing here? And actually, part of posting this is me hoping someone will be like, yo, do this, or that.
I'm in my late 20s, and I guess I would be considered a senior developer. Coming up on 8 years of JS/Node/Go Development experience. ONLY problem is, all of our software is utter trash. I have dozens of projects I maintain and I can't keep up with any of them. I'm constantly debugging or building a prototype, that, somehow makes it into production as a prototype.
I'm not paid amazingly. About 20%-40% below market. I have been promised the moon and it's pretty unlikely I will ever see half of the promises come to fruition. Especially since our projects are hitting critical mass. That is, nothing works and nothing can be fixed because of how massive the architecture is and how small the "team" is. I've been trying to move a DB from a server that is about 2 years past life span, for the last few months.
I declined a job as a lead developer/CTO. I absolutely annihilated the interview and the offer went from a front-end developer to running the whole team and potentially CTO. I don't think I am anywhere near ready for that. I never test, have no successful continuous integration projects (despite my best efforts to get people on board), and have basically no apps running at a high capacity.
I digress to the question itself. In tech, I would never stay at a job over a year or two. Unless I really jive with the team, am making adequate cash, and feel like I'm still moving forward. Yeah, I know, I'm a hypocrite. I regret it. I think I would even have been much happier if I quit my current job for like, two years, then came back after spending some time at a well established shop. But who knows really. My job is the wild west and it may have just made me more disgruntled to know how to do everything right, and still lack the time to do so.
Here are some reasons why long tenure sucks:
1. You get completely complacent. I spend a lot of time just messing around. Again, hypocrite, like, hey jackass, use that time to test. Ha, too complacent and if I even start setting up a test environment, someone will smell blood and task me off to prototype land. Don't get me wrong though, I spend a lot of time at home, off the clock, building random new crap for the company.
2. You get stagnant in hierarchy. Basically, they like me where I am at and they won't compromise that with any form of promotion.
3. You quit making relationships with coworkers. I'm fairly young, but I have been employed here longer than anyone else. I've seen thousands come and go. I stopped making much of an attempt to know anyone. Unless they're developers, of course.
4. Newer employees despise you. I make more than them. I look like I do less. Also, I get away with pretty much anything. Which, causes quite the rift.
5. Managers become overly confident in your skills. Example: I was tasked with building something like uber, by myself, in a single month. While maintaining my 12-15 other active projects. Let's just say, we didn't make deadline and also, I'm now proficient with quickbooks and several varieties of payment processors.
6. You get honey-potted into their culture. Everything is wrong here, and I know that. Despite how hard I try, I can't get it to change. Perhaps we're only successful because we cut every corner, or perhaps that's the only reason I'm not writing this from a beach in the Grand Cayman's. Bottom line, if you're at a company for ten years, you'll know the problems and the futility of trying to solve them.
Here are some reasons why long tenure rocks:
1. I don't have to EFFING interview. I hate it. I hate it, I hate it. I suck at interviewing unless I am in a very social and charismatic state. Something I've been trying to perfect. My mind works better with logic puzzles and overcoming obstacles than it does with explaining my love/hate relationship with NPM.
2. I don't have to worry about employment. Unless of course the company goes down in a fiery mess of runtime errors.
3. I can pretty much take time to learn whatever the heck I want. I know AWS Infrastructure, Accounting Software, pretty much all of Google's APIs, Currency APIs, hell, I've even dabbled with crypto currency APIs. A metric ton of front-end frameworks and libraries. I couldn't learn any of this if I worked at a assembly line shop.
At the end of the day, I just worry that I'm going to be Cinderella at midnight. Will I be hire-able, being a jack of all trades master of literally nothing. Will I have to accept a novice position? Who knows. For now, I'm just some Brogrammer.
- cosmie 8y ago> I don't think I am anywhere near ready for that. I never test, have no successful continuous integration projects (despite my best efforts to get people on board), and have basically no apps running at a high capacity. Don't sell yourself short. Very few teams have the resources to hit every wish list item on every best practice and still keep up with incoming project requests. So as leadership, you're constantly in a state of balancing internal resources against external expectations/needs. With your current experience, you're intimately familiar with and recognize the dangers of always compromising on the internal resources rather than against external requests. Which gives you a lot to draw on as the team lead to ensure that isn't repeated at your new company. Running far too lean for far too long gives you incredible insight into both what "too lean" actually means for different aspects of the systems, and what failure modes occur when you pass that point. You'll be better prepared to know when to put your foot down or push back on something, as well as have an understanding of where you can be flexible or compromise when necessary while minimizing the risk of creating a dumpster fire. Someone without your experience may not be as adept at that yet, and end up learning those lessons only after they're put in charge, at the expense of the team they're put in charge of.
- ryall 8y agoHonestly, get out now. Your story resonates strongly with me because it's basically my story word for word. Except I started as the only developer/operations guy and now I'm managing a small team. At first it was great because there was (still is) so many greenfield projects and I had the autonomy to choose what I thought was best/would make the most gains for the company. Now I'm early 40's, coming up on my second decade, and I've recently found out that the majority of the staff are paid more than me. I feel taken advantage of and undervalued, and I'm so fucking depressed that my complacency has walked me down this dead end street. Trust me, if you're feeling like this now, leave. Nothing will change. Company culture is hard enough to alter, but it's impossible if you don't have the support of the CEO. I've fought against it for at least ten years and really have nothing to show for my efforts but a kick in the teeth.
- svsucculents 8y agoAlmost every small company with the sole survivor has this story. You know where all the bodies are, have done everything once and then discover some uncomfortable truths. You are right to get out in your early 40s. Don't wait.