5 ms·
Ask HN: After years at BigCo I feel like I'm becoming unemployable. Now what?
I've been developing software professionally at the same large company since graduating college several years ago. Over time I've come to realize that there's no such thing as stable employment, so I'd like to keep my options open as much as I can.
The problem is that at my job I've been repeatedly thrashing because direction keeps changing so suddenly. I've written "production" code in PHP, JavaScript, C#, Java, C, C++, Perl, Python, and ActionScript, but I don't think I've developed any meaningful level of expertise in any of these. I feel like I'm a jack of all trades, master of none, and I'd never even be able to hold a candle to anyone who has deeper experience in any subset of these.
On top of that, the company I work for has a very high degree of Not-Invented-Here syndrome, with lots of home-grown tools and frameworks of dubious quality, leaving me with completely non-transferable skills. Projects are rife with mismanagement, and the only things I've learned from the pain points in my job are that they are social problems, not technical. It feels as if I've only accumulated one year of experience, repeated several times.
In spite of this, I'm getting glowing reviews from management and would rate myself above the median among my colleagues, but that really doesn't count for much. After all, in the land of the blind, the one-eyed man is king.
I've been trying to devote some effort to hobby projects and open source but never seem to have enough time to really get anything meaningful done there.
How should I try to escape this stagnation? I'm getting the feeling that the best way out may be a different job with better learning and development opportunities, but it's also somewhat disturbing to me that my skill set is scattered so thinly that nobody would ever want me (particularly the sort of startups that are frequently discussed here on HN).
- dools 16y agoA long tenure is often attractive, and you can truthfully say that after giving them a good shot and investing a lot of effort in trying to make the situation better, you're ready to move on. The fact that you haven't "shipped code" isn't your fault: you're not in sales or business development. The glowing reviews and the fact that you've stuck it out for so long are both examples that you're a good employee. As for "transferable skills" - yeah - it's a problem because douchebag recruiters just look for little acronyms. If you can afford to take 6 months off, you could do a course in something or other. Self motivated continuing professional development is often looked upon favourably. During this time you could also make it your business to develop in open source communities to broaden your knowledge and take up some pet projects.
- patio11 16y agoYou may be underestimating yourself or overestimating the degree to which startups need rockstar engineering. If you ship and it works, you're good enough. Better is better, but most engineers can create plenty of value without being e.g. DHH or Linus. I was in similar straits at the old job: I was one of the more trusted engineers, spending my time doing maintenance coding on an evolutionary dead end. I used it as an opportunity to bone up on my general web dev skills (System architecture, design, SQL, etc). I also used my "routinely delivers on promises" karma to buy changes to the development roadmap that were useful to my professional growth. ("This project would be improved by integrating Prototype. I have taken the liberty of mocking up a screen. We should do more like this, the clients will be thrilled. Of course, you'll need to assign me to it since I am one of the only two competent JS engineers here and the other is busy.")
- gettingrusty 16y agoPatrick, as always your advice is very insightful, but it's going to be tough for me to follow it. I've become very apprehensive about sticking my neck out there for a new responsibility because in my work environment it has almost invariably been equated with being assigned blame. I'd assume you are quite familiar with the saying "the nail that sticks up gets pounded down." The customer is quite far removed from the development team and honest customer feedback is jealously guarded by management, either blatantly held hostage or creatively misinterpreted to further management's own goals. My immediate supervisor is very supportive, but the management further up the chain that controls requirements, budgeting, and customer interaction hasn't demonstrated the slightest bit of care.
- jlees 16y agoI'll just jump in now before the rest of HN gets here and say "Leave your job". See, among others, http://news.ycombinator.com/item?id=1960437 http://news.ycombinator.com/item?id=1960437 for an excellent discussion of "why". (Specifically: you will suddenly find time to devote to those hobby projects you can't focus on right now, for one. That will lead to at least some degree of skill set specialism or broadening, which will rejuvenate you, which will help you decide whether to continue hacking around and turning it into a consultancy gig -- or finding another, better job. That or you run out of money and end up at Starbucks, which would at least be a change!)
- rrrhys 16y agoWrite a story about each of the projects you have worked on.. The problems, the discussions, the plan of attack and the outcome, cost savings for the company, technology used. As though they were all separate consulting jobs. Take out company names and specifics. Have an objective look at what you have done and assess it again, because now you've taken the emotion out of it ('repeatedly thrashing' etc) and you are left with cold and useful facts about your projects. You then have a portfolio that you can show new potential employers. I am in a similar situation and am currently doing the same.
- gettingrusty 16y agoI'd love to do that, but none of the projects I've worked on have succeeded or shipped. They're all rotting in the deadpool of neat proof-of-concept types that will never see the light of day. I can't even say that I've saved the company money here or there. The most credit I could claim on that front would be that I chased down a problem enough to know that is not worth wasting more effort trying to solve it in the manner prescribed.
- noonespecial 16y agoYou very likely vastly underestimate your actual expertise. I find that no matter how far I've come, I always feel that I have yet to develop any "meaningful expertise" and its easy to find someone much better than I am to compare poorly against. What you may be feeling, is that more and more bigcos are becoming not-so-big-cos and discovering that years of what you've been doing and piles of worthless development projects are just as useless to them as you already know they are. The era when companies waste money reinventing (square) wheels is rapidly drawing to a close. My suggestion is to find an open source project that uses a technology that interests you(1) and commit yourself to really diving in. You'll probably see some good code, and then realize that you've got something to add. You'll feel like a million bucks the first time code you submit is accepted on the main branch, not because it was your job, but because people liked it. (1) Pick something you are actually interested in. Don't fool yourself by choosing something that you think you should be interested in. You need the passion to keep at it.
- gettingrusty 16y agoThanks. I think your footnote is especially encouraging, since I'd been under the impression that not all open source projects are created equal, and that writing process schedulers for the Linux kernel or optimizing JavaScript execution in Firefox wasn't my cup of tea. I suppose there's no shame in contributing a tiny patch to the install script for some no-name program X so that it works on obscure platform Y, although it's not something I can brag about on a résumé.
- newobj 16y agoYou definitely sound like someone who's afraid to quit their first job and is doing everything in their power to convince themselves that they should. Honestly the things you're complaining about you'll find in varying degrees at jobs big and small, companies established and new, whatever. Your company is probably not as bad as you think, and you probably haven't become as unemployable as you think. But that's fine. You want to move on, by all means move on! Don't be afraid, and don't spend so much time trying to rationalize it... it's already rational. :) It's all about reframing yourself for the next opportunity. If the next place you want to work at is a Java shop, play up your Java experience, and spend some time at night making sure you're mostly airtight Java-wise. Not-invented-here is not a big deal. If you actually helped develop FrobbcoDHT versus simply using memcached, you can just say "Built proprietary DHT for x y z reason." It looks good on your resume. If anyone questions why something off the shelf was not used, you can either explain why something proprietary was necessary or that the company culture was not-invented-here and your manager/lead disallowed it. If you merely used FrobbcoDHT internally, just say that you have experience with DHTs in general. This isn't a big problem. Maybe it's also been a while since you interviewed anywhere? Apply for some random jobs as practice/reexposure. You'll probably get some offers and can reboost your confidence. I would just strongly advise you to stop focusing on your current employer so much. You have to play this mental game of "I hate it here it's ruining me my career is over" to give yourself the push to quit... but that's lowering your confidence, warping your sense of reality, and might make you come off as bitter/whining while interviewing. Just accept that you're going to leave, stop feeling the need to justify it, working on marketing yourself, work on honing a couple things depending on who you're going to talk to next, and try to work some confidence back up!