11 ms·
Accidentally Saving the Day
- deleted 4y ago[deleted]
- ajkjk 4y agoI did this at my first job. A director had a problem and no one was sure if a solution was practical. He was chatting about it in our team area and I said, oh, I can see a way to make that work. A few months later it was shipped and I basically got a promotion out of it.
- feoren 4y ago> I basically got a promotion out of it What? Your contribution to your company was actually recognized? I've never heard of that happening before. Where do you live? I'm guessing it's not the USA.
- deleted 4y ago[deleted]
- uvnq 4y ago
- high_byte 4y agoTo clarify the ambiguity - he is white. https://twitter.com/jvwatzman https://twitter.com/jvwatzman Make what you want of it...
- deleted 4y ago[deleted]
- dang 4y ago"Please don't pick the most provocative thing in an article or post to complain about in the thread. Find something interesting to respond to instead." https://news.ycombinator.com/newsguidelines.html https://news.ycombinator.com/newsguidelines.html
- high_byte 4y agoI really enjoyed this article, the style of writing, the story itself and the other article linked. "Be the change you want to see in the world." Keep it up.
- jwatzman 4y agoAuthor here -- thanks, glad you enjoyed it!
- bartread 4y agoMany years ago I worked at a company where I just didn't feel particularly useful or valued. I was working on a peripheral client-side Java app that was basically just used as a visual configuration for the meat of the system that was all on the back-end. There were a bunch of more senior developers who I hugely respected and learned a lot from, including this guy who I'll refer to as $SMART_DUDE who joined at about the same time as me. He knew his stuff inside out when it came to C++ and I remember being absolutely fascinated by a talk he gave on memory management and different types of pointers one lunchtime. It's no exaggeration to say that I literally still refer to things I learned in that talk today, almost exactly twenty years later. There were some pretty big personalities in that company and I was seriously intimidated by my line manager, who always seemed like he was pissed off with me. I spoke to him when he interviewed me, and then barely ever until my performance review came round nearly a year after I'd joined the company. I remember speaking up in a meeting once, him snapping at me, and I just shut the fuck up. He surprised me in the performance review. We had 5 levels of bonus. I thought I was decidedly mediocre in his eyes but, out of nowhere, he gave me not the top level, but one down, which was only slightly less than the top level (we had a reasonable degree of transparency about percentages involved). Still, I didn't think much of it and had started looking around for other roles. One of the motivators is that one or two people I really respected had or were leaving, including $SMART_DUDE, who'd handed in his notice. There was him and another guy, who I'll call, $SMART_DUDE2, who I thought - and still maintain - were just the real deal. I thought they were better than the people they worked for, way waaaaaaaay better than me, and better than everybody else in the company, although, to their credit, I think the people they worked for also though the same. The other motivator was that, although I was earning slightly more, and on top of this the company had covered my rent for the first 12 months, I was still financially worse off than I had been where I'd lived before on the lower salary (higher cost of living in the new area). Anyway, in the meantime I started hooking up our client with the backend using XML rather than CORBA. Not even using SOAP. I just realised there was an endpoint that we could communicate with firing XML documents back and forth according to a protocol that we agreed in a late afternoon/evening design session that would allow us to load and update whole trees of objects, rather than just individual properties (surprise, this was mind-blowingly slow), without having to make any major code changes on the back end. Really not that big a deal. Whilst this was all going on I landed a contract. It paid something like 1.8x what I was earning after tax even with something like two months holiday factored in. It could have been more but I was so overawed by the low end of the pay band that when they asked me what I wanted I said £Y and they accepted without an argument. I was an idiot. Still, because I thought absolutely nobody would believe me, when I handed in my notice I told the company my new role would pay 1.35x my salary. I was an idiot for the second time. If I'd not been an idiot at all I could probably have got 2.2x. It was at this point my line manager - bear in mind by this point (14 months in) I could still count the number of times we'd spoken on one hand - dropped the bombshell of, "Oh no, I mean you're really great. I think when you leave we'll feel the loss more than $SMART_DUDE. Let me see what I can do on salary." WTF? I still maintain that $SMART_DUDE was a lot better and smarter than I was or will ever be, and I'd hire him in a flash - literally no hesitation other than to ask him if he might not get a bit bored by the work we're doing. I still don't really get it, even now, but I suppose I delivered pretty consistently during the time I was there, didn't make a fuss (anyone who knows me now would find that very hard to believe - there's a history here that's too long and boring for HN), and solved a business problem that they had quickly and pragmatically without worrying too much about whether it was the best option from an engineering standpoint. My advice: you don't need to be super-smart, but be just a little bit hungry, able (and stubborn enough) to deliver, and don't stand too much on engineering ceremonies.
- wildmanx 4y agoI appreciate the story and the pride he must have felt. But this is the entirely wrong message. It perpetuates that the superstars are those jumping in last second in some heroic effort to save the day. This is not how projects should work, and we should stop perpetuating these heroic stories. The actual superstars are all those people doing the less-than-glamorous grunt work. Planning things on time. Getting the infra ready, stable, well-tested, documented. Making schedules that have margins. The people carefully designing things so they are robust and don't break left and right. Thinking through their systematic testing. In short, preparing everything so that heroic acts are not necessary. Imagine the same story but somebody two months earlier had voiced a concern that Jabberwocky and ChaChing wouldn't play well together. Pushing for the APIs to be harmonized so that they could play together and integrate. Pushing all this against pressure that they are just delaying everything and should not worry so much and be more positive and agile. Imagine they had succeeded and everything had gone smoothly. This would have been much better for the company (since the existential risk wouldn't have existed in the first place). But that somebody wouldn't have ended being the superstar with the promotion and the bonus. It would likely have stuck to have been the guy just delaying things with their worries. That's what needs to change in sw eng culture.
- jwatzman 4y agoAuthor here. For what it's worth, I (mostly) think you're right! IMO heroics were a huge problem at that company, and are a huge problem at the company I work at now too. The gruntwork is really really important. I tried to get at this in the last section, that it's not about going out trying to be a hero, and it's unfortunate it didn't get across. That was my point that you shouldn't go look for company priorities to fix, to be a hero. Just look around you, see what's going on, and do good shit. Sometimes yeah that does involve heroics, sometimes it's just gruntwork. I don't want to go back and edit the essay now but I think it could be much clearer indeed! > Imagine the same story but somebody two months earlier had voiced a concern that Jabberwocky and ChaChing wouldn't play well together. Pushing for the APIs to be harmonized so that they could play together and integrate. [...] Disagree here, though it's maybe not obvious from the bits of the story I told why. ChaChing was one of... maybe three or four dozen experiments like it. All of the others failed. There was no reason to believe ChaChing would be any different, and if it did work, even the best-case expectations were well below what it ended up doing. It really was a lightning strike. So it would have been a huge waste of time to do all of that work, delaying Jabberwocky, for a bunch of things which never ended up shipping.
- CarVac 4y agoThere's a lot of low hanging fruit out there, you just have to recognize it or be lucky enough to stumble facefirst into it. I recently joined a budding open-source project (PhobGCC, a custom gamecube controller), saw that it was using a rather overbuilt full kalman filter, and within 2 days of work rewrote it into a less generalized filter that ran 7x faster (later improved even further) and performed even better at its filtering task. It was super basic work, despite it having been almost a decade since I last studied control systems, but it made a really big difference for the project.
- grue_some 4y agoI have had very similar work out in my favor early on. New engineer, some hacky idea that saves the day doing something that was "impossible" and got a bigger raise and promotion than I have gotten in any way other than saying I was leaving a job since. It was nice recognition. I have had some repeat of this recently, but not quite the same bump. It comes to be that fixing some urgent problem is way more $$ rewarding than running a team and making sure your team doesn't run into that stuff and just delivers on time. It is odd, but in a way it makes sense. You get more recognition for putting out a fire than preventing one. Everyone is watching while something is burning and recognition from someone above your direct manager is the way to get a better than nominal raise.
- ackbar03 4y agoYou can be sure the manager DID tell the story like that and got a even bigger bonus. That's how you get promoted even higher up the corporate ladder
- kshacker 4y agoReminds me of the last scene of LA Confidential. Paraphrasing: "you need more than one hero(es)"
- jit_hacker 4y ago> but more importantly it takes just doing fantastic work when the opportunities present themselves. It has taken me a decade to realize this is the key to success. Just do your very best work, as often as possible, and let the rest figure itself out. I accidentally created a data warehouse that became the necessary backbone to launch a massive new org (100M+ revenue). I was building it for a relatively small near realtime Elasticsearch cluster to generate data reports for an application. But I thought, gee, if I suck in a bunch of other data from other sources and clean it, I might find a use some day. Little did I know that someone else would piggy back on it to build a POC for a giant business expansion.
- hinkley 4y agoI've been stuck in the mud for a bit and had been slowly forgetting this one papercut at a time. Since this is usually not something I'm susceptible to, it has been troubling me. Last year I pulled off a minor coup by making it cheaper and easier to run a big chunk of our code. One of the senior people was trying to get me to toot my own horn but the actual work was like one week of cleverness and five weeks of book-keeping, and so it felt too slog-like to celebrate. But a couple weeks later when I was doing some housework it dawned on me that it was 'only' six weeks of work because of a bunch of fairly thankless things I'd invested a great deal of time in over the previous 18 months. I'd been dribbling out appetizers for a while, this was the first big dish, and I'm not sure it's the main course, so it's not like I missed my big chance, but I probably should have honored it more. I'd had an initial 'I told you so' feeling in the heat of the moment that pushed down as feeling petty, and delivered instead a fairly lukewarm "this is what I am talking about." This is, in fact, one of the things I'm talking about, but I think I'm past trying to recruit people (all the fun people to recruit are gone). I'm sadly just following the Campsite Rule and splitting my priorities between things that help me do my job, and things that might help me do the next one. In that respect, I've been chasing a dragon (two, in fact) for the last couple of months instead of acknowledging that paragraphs like the one above are a pretty good indication I should be focusing all of my energy on job hunting instead. Wisdom is on a continuum and there's a lot of room still for foolishness even if you've got a lot of things figured out.
- cryptonector 4y agoI've done things like this. There's nothing like pulling a rabbit out of a hat. From a business perspective, it's... not ideal because you can't plan for this sort of thing, and an employee who has done it once might not do it again, but it's nice that when you need a rabbit and there's none to be found, it turns out you have a magician who can pull one from a hat.