Live data from Hacker News

Get Shit Done: The Worst Startup Culture

whatspinksthinks.com

31–40 of 212 posts

Re: Get Shit Done: The Worst Startup Culture

#31
post #12

The whole start-up culture encourages this behaviour. The current fire fast trend, rather than trying find the root cause for example. Firing someone can completely mess up someones career, but people are being told to fire someone on a whim, if they're not right fit(I mean that could be anything). Turn it around, and put yourself in their shoes.

I experienced "fire fast" on the receiving end once. It's the one and only time I've been let go for any cause from a job. It occurred at a shall remain unnamed big startup on the East Coast.

I was hired on the merit of my portfolio and past positions (I do not have a high-snob-factor college degree), and dove in and got up to speed pretty quick. Job was to implement a lot of Java code and some .NET for a major web-based marketing product. Management was completely by the book Scrum, including actual use of terms like "pigs" and "chickens" and such. I roll my eyes at that kind of thing, but I don't really mind and can just roll with it. It's by no means the worst "management design pattern" you could use.

The place had a superficially awesome culture, even had a foosball table. Roll eyes a little again, but who cares if it's startup-cliche. It actually is fun so again roll with it. Communication in the team feels good, stuff is actually getting done, etc. One person is a bit of a dick but everyone else seems cool. Nice view from the common office window. I feel pretty good about this job so far.

My first and only real hint that anything is amiss is that the code I am tasked with working on is shite. I mean hacky, ugly, uncommented, generally nasty-ass crufty Rube Goldberg machine Java code that takes over a gigabyte of RAM to do trivial things that ought to take under a hundred megs. It's also uninstallable. Just try running it in a dev environment. Seriously. Just try.

I had obviously been given the bastard child of a Red Bull fueled late night coding binge to untangle. That's cool. I'm on it.

My task, should I choose to accept it, was to add a few features to the product and fix a list of several bugs.

Problem #1: this code was so badly written it was incapable of handling the load of current customer demand. Short term solution #1: fire up more EC2 instances. I calculated that for this product alone they were spending almost 1/4 of my salary on EC2 compute instances to compensate for the code's general clunkiness. To do something that ought to be able to be done on a Pentium-4 with a gig of RAM they were running enough EC2 compute nodes to do protein folding on a complete genome.

Problem #2: the code was full of static, global, mutable state. This meant that the easy way of reducing overhead by parallelizing things was an exercise in banging one's head on the table.

I am told this needs to be done. I start feeling as if I'm getting pressure. Sprint is coming to an end soon. Everything I do fixes this or that problem but the boat anchor continues to suck so bad my demonstrations and tests fail simply on sheer bloat. Fucking nasty-ass sack of crap is so bloated I can't even properly test it on my dev workstation.

Fuck it. All weekend coding spree time. I am going to -- wait for it -- rewrite the core.

I stay up late all weekend at home doing this, coding furiously, and by Monday end up with a functional core of this product that does the same thing the old one did but used ridiculously less resources. The old version took many EC2 nodes to do what it did, while the new version does the same thing on less than 512mb of RAM on my Macbook and does it in a fraction of the time. Coffee has now supplanted hemoglobin as a principal oxygen/CO2 carrier in my bloodstream.

Unfortunately I'm going to have to spend a bit longer to get things done by the end of sprint on Tuesday, but never fear. I have cleared my schedule and plan to stay at the office until all sprint tasks are completed, which should now be do-able without wrestling a greased shoggoth.

The meeting is awkward though. I show this to people and I have a strong sense that something is wrong. Later that day I'm called into the office and told I'm being let go, though with a bit of a severance (??? not sure why but I'll take it).

Why?

(1) Performance doesn't matter. Don't I know anything? "Premature optimization is the root of all evil," even if said optimization saves 1/4 of my salary in compute costs and makes the product instantly responsive.

(2) "We don't want to maintain all this new code you wrote" -- but it was less than the old code, I argue, and the old code was... never mind.

(3) My favorite: apparently what I did was "not agile," and I would be "better suited for a research position."

Re: Get Shit Done: The Worst Startup Culture

#32
post #3

It's already down (it's the database... why does it always gotta be the database... sigh. Actually, it's probably a blog post so why is it even hitting the database to begin with instead of being served from cache?) I guess someone didn't prioritize "getting shit done" haha

We are at the precipice of the end of coding.

Re: Get Shit Done: The Worst Startup Culture

#33
post #4

Another site reporting "Error establishing a database connection". For anyone posting blog entries telling people that they are doing things wrong, it really destroys your credibility when you can't set up a server that continues to function with a moderate amount of traffic. Mirror: http://webcache.googleusercontent.com/search?output=search&s...

Not everyone writes something with the aim of being on HN or reddit or anything else. Sometimes people simply write for the joy of it and don't want to bother with server upkeep.

Re: Get Shit Done: The Worst Startup Culture

#34
post #25
post #20

Earlier quoted context omitted.

Sure. Friday on LinkedIn I got one of those "recommended jobs" thingies in my story line. It was full of "you should value execution over planning". It pretty much sounded like a 20hr/day sweatshop of fighting endless bugs and chasing the whims of the founders. Are the VCs listening to this? You are funding people who don't take spending your money very seriously. There is a huge continuum (shall I say gulf) between…

A lot of entrepreneurs, are the engineering equivalent of cowboys. Entrepreneurs who are professional software developers, are quite rare.

Throwing something together and putting it in front of people aims to answer the question of "what does the customer actually want?" Until you've answered that question you can't build a professional product - otherwise you're building without a defined set of requirements.

Many entrepreneurs I've met hate the fact they're writing utter crap code, but without the budget to make mistakes (e.g. building the wrong thing), you have little choice.

Re: Get Shit Done: The Worst Startup Culture

#35

Is this an actual thing? Are there really people out there who think running around yelling "Get Shit Done!" constitutes actual project management? We are doomed.

Yes, I worked at a large media company where the GM would run around saying this exactly in this way. However, ON TOP, there was a massive PM department that was poorly setup and just slowed everything down. Worst of both worlds.

Re: Get Shit Done: The Worst Startup Culture

#37
post #14

I said this a while back in another thread, but it's actually more on-topic here: One of the worst things about tech culture is that it's full of socially awkward people who have learned a neat low-effort hack for getting around their poor social skills: be an asshole. Being an asshole is easy. It requires no actual effort spent in learning the intricacies of human social interaction or human nature. It requires no e…

This has nothing to do with tech, IMO. Wander over to Wall Street, go into some white collar office with a bunch of people doing data entry, go to some fulfillment center warehouse, and then go to a construction site and you'll see the same behavior.

Managing people is not trivial. So, to bring tech into it, it really boggles my mind when I see these awful styles. I mean, we spend years developing our skills, and break our arms patting ourselves on our back on how skilled we are. Then, for whatever reason, we end up on the people side and suddenly making it up as you go is fine. We have books on managing people - they are not a panacea, but I'm shocked at how few people in these positions have heard of them, let alone read them.

For example, the Microsoft Press books form the 90s are great. Debugging the Development Process, Software Project Survival Guide, Writing Solid Code, Rapid Development, and then books like The Mythical Man-Month, and Peopleware. Just a passing familiarity is all I ask. But no. Favored people and 'can't be hit by a bus' people get away with anything, great people with a few rough edges get fired at whim, no guiding principles on what it takes to execute a project (get shit done doesn't count, sorry), no concept of personal development. Ugh.

Re: Get Shit Done: The Worst Startup Culture

#38
post #18
post #14

I said this a while back in another thread, but it's actually more on-topic here: One of the worst things about tech culture is that it's full of socially awkward people who have learned a neat low-effort hack for getting around their poor social skills: be an asshole. Being an asshole is easy. It requires no actual effort spent in learning the intricacies of human social interaction or human nature. It requires no e…

I would argue quite the opposite is true, that being an asshole requires the same amount of work as being nice. Poor social skills are just that, poor social skills. Being an asshole is simply learned behaviour, it doesn't have anything to do with how easy it is..

I think the catch is that empathy is a large part of good social skills. And is something a lot of "socially awkward" folks are lacking. When you have a massive inability to understand the person on the other end of the conversation, it is not surprising when you learn to ignore them. That is, be an asshole.

Re: Get Shit Done: The Worst Startup Culture

#40
post #31
post #12

The whole start-up culture encourages this behaviour. The current fire fast trend, rather than trying find the root cause for example. Firing someone can completely mess up someones career, but people are being told to fire someone on a whim, if they're not right fit(I mean that could be anything). Turn it around, and put yourself in their shoes.

I experienced "fire fast" on the receiving end once. It's the one and only time I've been let go for any cause from a job. It occurred at a shall remain unnamed big startup on the East Coast. I was hired on the merit of my portfolio and past positions (I do not have a high-snob-factor college degree), and dove in and got up to speed pretty quick. Job was to implement a lot of Java code and some .NET for a major web-b…

Sounds like a Daily WTF, but it's also very common.

Its seems most companies don't realise the easiest way to move fast, is a extensible, easy to change/understand code base. And not going through spaghetti code with a fine tooth comb. Odd they recommended research, they only care about one off prototypes.

The problem is future employers assume your the problem.

Btw, Proper scrum/agile encourages people to refactor and keep technical debt down.

Post reply on HN