I was happy at my job, but quit anyway. This is my effort to explain.
[I don't name either company in hopes this won't show up in anybody's Google search. Please respect this choice in your comments.]
I write software. We have an aging application, and I advocated and got the opportunity to rewrite a good portion of it. This was amazing. Doing something like this requires organizational courage and commitment, and I salute them for sponsoring that effort.
I built my new thing, investing my whole person over 18 months and, well, it didn't get used. Not one line of code has been written by any team other than my own so that my baby might get launched. Without that support, I have built shelf-ware. Ouch.
Then, I saw the next year plan. I'm not on it. Uh-oh, not the commitment I thought there was. Bummer.
Up until this point: basic business stuff. No big deal. You win some, you lose some. But … but ... it's not going to get killed either. Everybody agrees "it's the future".
I think in a year or two it will still be the future. I'd kill me to watch that.
So I lost my faith in the organization. When you do that, you get out.
-------------------------
But since I was quite happy where I was, I looked around for something similar, and I found it. There are some differences, though.
1. Old: 300 employees. New: 350.
2. Old: Executives a few floors up. New: Executives in Palo Alto. Feels like the same distance, really.
3. Old: Super nice gear - 4 CPU, 8 GB RAM, dual 19 inch displays. New: Super nice gear - 4 CPU, 12 GB RAM, dual 23 inch displays. Better.
4. Old: Linux optional & unsupported. New: Linux default & supported. Yeah!
5. Old: Underground bike locker, plus showers. New: same, plus towel service. Towel service!
6. Old: free soda & M&M's. New: same, plus perrier (I'm not joking) and power bars and chips and nuts and raisins and licorice and jerky and fruit. Fresh fucking fruit every day. Damn.
7. Old: Big creaking ball of wax code base built like mad over 10 years. New: Big creaking ball of wax code base built like mad over 10 years. Ah well.
8. Old: Consistent patterns across entire code base; the whole thing looks the same. New: How the code looks is a good proxy for when the code was written. That means innovation, I hope!
9. Old: Allman C-style dropped braces and member prefixing. New: One True Brace Style -- actually Sun's variant of 1TBS -- and no prefixes. Manna from heaven!
10. Old: cubes, albeit with very low walls. New: tables arranged in a big line. The former felt office-y, the latter startup-y. It's nice.
11. Old: VP has open office. New: VP has no office. He sits at the tables, like the rest of us. That works for me.
12. Old: One half of one person on "architecture". New: Six full time. The best six. Writing code!
13. Old: updated the 1995-vintage application's colors so that it didn't look quite as horrible. New: updated the entire user interface so that it looks like it was built in 2010. That's a difference which speaks to management quality.
14. Old: can use the stairs down -- no inbound key card access. New: can use the stairs up and down. That really bugged me! It did!
15. Old: vending machines. New: kegs. I do not jest, people. Actual beer.
16. Old: Corporate policy prohibiting beer at lunch. New: nope.
17. Old: Vacation days + sick days, with no accrual. New: Accrued PTO. The thing I'll always remember about my old company is the 237 hours of vacation time I left on the table at exit. What a shitty thing. Just shitty. (I'm glad it's illegal in Cali, I'll tell you that.)
18. Old: App aborts horribly if DB is not configured. New: App shows configuration screen if DB is not configured. Nice!
19. Old: Drop tables & recreate database when things change. New: automatic in-place migration when things change. Awesome.
20. Old: Compile, deploy & restart when making code changes. New: run the entire app in the debugger and let the JVM swap in modified classes on the fly. OMFG. Magical.
21. Old: Meetings & email. New: Discussion software & document management. (We use our own software!!! And it's business critical!)
22. Old: Huge nasty ant build, with a parallel build system in Intellij IDEA. New: huge nasty ant build system that can run inside Intellij IDEA. What a concept!
23. Old: Automated builds that work. Code review that works. Unit tests that test things. Automated integration tests. New: Yeah, not so much. Poop. Poop. Poop.
24. Old: QA. New: Where are you, Eric!?
25. Old: Friends I miss already, plus a lot of dead bodies from old battles. New: promise.
-------------------------
I'm sad & discouraged & disappointed & well, disheartened that I had to leave. It's hard to let go of five years of investment. It's just shitty.
I'm very happy with my choice.
-dg
6 comments:
Darren, congrats & good luck! And take your vacation ... come visit us in Munich :-)
Congratulations!!! Sounds like a great new adventure. Did you really loose 200+ hrs of vacation time? I thought they *had* to compensate you for that as you leave... That really stinks.
BTW, you are still in Portland, right?
@Svetla - You guys moved to Munich?! Please send us your address and let's get something planned!
@Anya - Rick called this morning and the first words out of my mouth were "Are they here?" I thought he was calling to tell us the girls had arrived. :)
towel service! congratulations!!!! going to go gossip to my husband now. sorry for the disappointment, but impressed with your ability to move along.
HR at your old company should read this.
Nicely written and good analytical skills. CA law does have some advantages, as you point out... accrued time goes to your pocket on departure and no non-comptete clauses (except for the "Pepsi exception").
Enjoy your new-found home (free beer!), but try to keep in mind Betty's famous quote: "first they hire you, then they spit on you."
Post a Comment