Live data from Hacker News

Ask HN: What current companies have the best software engineering culture?

news.ycombinator.com

181–190 of 226 posts

Re: Ask HN: What current companies have the best software engineering culture?

#181

This is a fairly hard question, and inherently ha bias. What I will say is this, I believe every company from Google to the startup down the street will have some fault. However, one of the largest faults I've seen in my years working is the arrogance. I have personally found startups to be some of the most humble in that regard, they'll push you to make design choices other shops won't have you make, and if you mess…

I think you meant "jack of all trades". I also think it is wrong to conflate breadth with "improving generally".

Re: Ask HN: What current companies have the best software engineering culture?

#182
post #162

Could someone explain to me why so many people on here fetishize scale? Scale is a constraint on a problem, and it affects the solution you come up with. I don't understand why solving problems around that constraint is considered cooler than solving problems around other constraints like uptime, performance, memory cost, etc. Does "Our API serves 234 million requests" hold more cachet than "Our medical device firmwa…

> uptime, performance, memory cost, etc.

The joy I get from writing software comes from creating and using good abstractions. When optimizing for these things, you have to hang up all the fun toys, bring memory bookeeping to the forefront of the codebase, and abstain from nice language features / write things in obtuse ways to squeeze out performance.

I'd much rather solve distributed systems problems with channels and futures and maps at my disposal, than make a C program even less readable for 5% more performance.

Just taste, I guess. Distributed systems are a more interesting problem domain, to me, than throwing away all the nice stuff that's built for us and writing hand-tuned use-case-specific reimplementations. I'm sure both can be (and have been) taken too far.

Re: Ask HN: What current companies have the best software engineering culture?

#183
post #44

Earlier quoted context omitted.

I think Facebook has very poor engineering culture. They built their iOS app with 18k classes, then claim that iOS and Git can't handle their 'scale'. Let's avoid putting here obvious companies and companies who over-engineer, maybe? http://quellish.tumblr.com/post/126712999812/how-on-earth-th... https://www.reddit.com/r/programming/comments/3m5n2n/faceboo...

The problem of 'scale' they were addressing in the iOS app wasn't scale of users, but rather scale of devs. They have 18k classes because they came up with a rather clever way of allowing many separate developers to all work on different features of the same app, without stepping on each others toes. This might not seem like a hard problem if you've never worked on a non-trivial iOS app, but it is a pretty impressive…

The architecture of all software projects eventually matches the structure of the organization writing the software.

Re: Ask HN: What current companies have the best software engineering culture?

#184
post #154

Earlier quoted context omitted.

All these things also apply to Google, except: * you decide on a team before you start, but after you know you passed the interview * moving fast is not valued as much I would also add that Facebook uses a lot of Open Source, meaning your experience will be applicable elsewhere. Here are some potential advantages about working at Google: * Being ethical is a core value of the company. * Google/Alphabet is more divers…

"Being ethical is a core value of the company." How does it make them stand out? What does it translate to in practice?

It means that Google often passes on opportunities to make more money if that would hurt or mislead users, advertisers or publishers.

Google's search rankings are unbiased. The ads team is separated from the search team. It's business model benefits from and supports an open internet, unlike other companies which lock users into their ecosystem.

Google is very transparent internally for a company it's size.

Google releases large of amounts of open source software and publishes research. For instance Google published a paper that explains in detail how it's Machine Translation system works.

Re: Ask HN: What current companies have the best software engineering culture?

#185
Be aware that the culture of an organization has little to do with the software it produces.

Actually, I haven't seen many poor organizations produce good software, lots of good organizations produce bad software.

For example, when I worked for IBM in the 90s, the organization (in Austin anyway) was great, but they couldn't get anything to market that wasn't garbage.

Re: Ask HN: What current companies have the best software engineering culture?

#186

Earlier quoted context omitted.

> Good litmus test is to ask employees, do they have hackathons I'm a designer rather than an engineer, but I've always been a bit puzzled by the popularity of intra-company hackathons. It seems like a great way for management to keep employees working longer hours for less pay – an overnight hackathon that results in, say, 80 hours of additional work from a small team only costs the company some pizzas.

Heh, actually that is a good question, since answer will also tell you a lot about culture. It is an indirect question about working hours too. E.g.: 1. We do hackathon once a quarter during work hours. 2. We do 24h hackathons, but it's really fun! 3. Well we work so long that we don't have time for hackathon. 4. We care so much about work-life balance, that we don't do hackathons. Depending on what you are looking f…

Serious question: Who out there isn't looking for #1 or #4? I'm failing to see anything positive about 2-3. Who's looking for those?

Re: Ask HN: What current companies have the best software engineering culture?

#187

I'm biased, but I'd say out of all the "big" tech companies, FB has the best engineering culture. * With few exceptions, engineers aren't hired for a specific team; they go through bootcamp where they get exposure to all parts of the stack and tasks from different teams. * Ideas usually come from engineers. Managers are there to be a sounding board/connect you with people resources as needed. * Moving fast is valued…

All these things also apply to Google, except: * you decide on a team before you start, but after you know you passed the interview * moving fast is not valued as much I would also add that Facebook uses a lot of Open Source, meaning your experience will be applicable elsewhere. Here are some potential advantages about working at Google: * Being ethical is a core value of the company. * Google/Alphabet is more divers…

>>> Google is trying hard to make it's hiring and promotion process objective and unbiased. That's why they happen by a commission of peers.

How on earth does this follow? I know that peer review is in fashion right now, but without some very strong context, this seems more like a recipe for a Keynesian beauty contest than a useful measure of merit.

Re: Ask HN: What current companies have the best software engineering culture?

#188

Earlier quoted context omitted.

Heh, actually that is a good question, since answer will also tell you a lot about culture. It is an indirect question about working hours too. E.g.: 1. We do hackathon once a quarter during work hours. 2. We do 24h hackathons, but it's really fun! 3. Well we work so long that we don't have time for hackathon. 4. We care so much about work-life balance, that we don't do hackathons. Depending on what you are looking f…

Serious question: Who out there isn't looking for #1 or #4? I'm failing to see anything positive about 2-3. Who's looking for those?

Have you ever wanted to collaborate with a coworker on something outside of your job, but can't ever find good time outside of work to schedule it? Our company did a hackathon (time limit of 24 hours, but no one stayed overnight) and I got to work with one of the senior tech leads on a HipChat bot. I found that extremely fun and rewarding.

Re: Ask HN: What current companies have the best software engineering culture?

#189

I'm biased, but I'd say out of all the "big" tech companies, FB has the best engineering culture. * With few exceptions, engineers aren't hired for a specific team; they go through bootcamp where they get exposure to all parts of the stack and tasks from different teams. * Ideas usually come from engineers. Managers are there to be a sounding board/connect you with people resources as needed. * Moving fast is valued…

All these things also apply to Google, except: * you decide on a team before you start, but after you know you passed the interview * moving fast is not valued as much I would also add that Facebook uses a lot of Open Source, meaning your experience will be applicable elsewhere. Here are some potential advantages about working at Google: * Being ethical is a core value of the company. * Google/Alphabet is more divers…

> Being ethical is a core value of the company

> Google is trying hard to make it's hiring and promotion process objective and unbiased

Google tries very hard to appear to be ethical, unbiased, responsible, and generally virtuous. Sometimes this attitude results in good work. Other times, and I think more often, it amounts to empty posturing and counterproductive gestures. In the social sphere, this "be seen as good" attitude manifests itself as annoying virtue signaling, speech policing, and other behavior that you also see on American college campuses. This behavior is annoying, but very common in tech and easy to ignore.

The "be seen as good" attitude also manifests in technical culture, however. There's this weird attitude inside Google that what is painful must therefore be right, as if difficulty were its own reward. While it's true that the right thing is often painful, the converse does not hold, so Google makes some bad decisions.

Google's attitude toward developer friction is, "This process is slowing you down? Too bad. That's how responsible engineers work." This hairshirt-loving attitude leads to large teams, moving slow, and general risk aversion, and I think it leads to bad engineering-cultural choices.

Google: "This language feature causes problems? Let's ban it. We'll add headcount to make up for the productivity drop."

Facebook: "This language feature causes problems? Let's add tooling to warn developers about the dangerous usages and make sure we can quickly find bugs."

I've worked at a lot of tech companies. I don't think the people at Google are actually any more or less ethical than the people at other top-tier tech companies.

> moving fast is not valued as much

It's important not to underestimate how much moving fast makes you happy and how unhappy you become when moving to a slow environment having worked in one that moves fast.

Facebook's elevation of moving fast to a first-class goal goes a long way to slowing the kind of decay that Google has suffered.

Re: Ask HN: What current companies have the best software engineering culture?

#190
Personally, I think threads like this and the mentality of HN readers that causes threads like this to get created is the main reason why employement in this industry has gotten so horrible.

Everyone is only interested in the very best and only wants to work for the biggest companies with the best perks. It opens the door for manipulation and these companies have for YEARS been taking advantage of workers in this industry.

This thread is bad for HN...

Post reply on HN