Ask HN: how could a big tech company successfully attract developers like you?
8 comments
Well, here's the problem, Mr. big tech CTO. You hire C level managers who know absolutely nothing about how software is made to lead A level developers. All the blogs and thought about how to do software engineering correctly? Worthless. It doesn't matter. Your self absorbed non-tech tech manager could not hold a conversation about agile, languages, patterns... anything. not just because of technical grounds but because he/she can't be told they are wrong by simple developers. Of course that won't stop them from telling us what tools and technologies to use and wasting our time arguing for hours about it. You see, he/she is an expert because he/she took a c++ course in college! So, what do you have to do? Weed out your make-it-up-as-you-go-along fakers who failed up to middle management and make development a living hell.
By cutting out the red tape and bureaucracy that frequently make people think "big == bad". Company size is just a proxy for other factors that can lead to a negative work experience. What I care about is not the size of the company but how much impact that company is going to have on me trying to do my job. HR policies that prohibit being paid what I'm worth are an obvious example of this. Multiple layers of management who need to sign off on my work or second guess my judgement are another.
None of these are exclusive to large companies, and while small companies tend to be more flexible, that doesn't mean that they are categorically better places to work.
Look at Lockheed Martin's SkunkWorks, for a great example of a large company setting things up to attract and keep the best engineers in their field.
None of these are exclusive to large companies, and while small companies tend to be more flexible, that doesn't mean that they are categorically better places to work.
Look at Lockheed Martin's SkunkWorks, for a great example of a large company setting things up to attract and keep the best engineers in their field.
Funny you should mention SkunkWorks - that's actually the one thing I was able to communicate to him was the SkunkWorks concept within a larger company. But clearly if everyone is working that way, then it no longer has the delineation from regular business that is the whole point of SW.
Rule nr.1 of Skunkworks is: get them out of the main office. No innovation ever happens in the main office.
Honestly nothing. As a co-founder of a start up there is nothing any big company could do to attract me other then maybe acquiring my start up lol. I'm pretty sure this is the same for any other developer who has an entrepreneur mind set.
With that aside if I wasn't doing a start up a company would have to follow the Facebook model where they take care of all of a employee's needs for free. Make it so there is so much freedom that I'd feel like I'm work on my own terms so I'm always motivated to work as hard as I could on my task how I want to.
With that aside if I wasn't doing a start up a company would have to follow the Facebook model where they take care of all of a employee's needs for free. Make it so there is so much freedom that I'd feel like I'm work on my own terms so I'm always motivated to work as hard as I could on my task how I want to.
That's cool, like I said - it's not for everyone. Although it's worth considering that if you are successful and sell your startup to a Big Co then you'll need to "like" working there in order to see out any handcuff deal you are given.
If BigCo could create a pseudo-incubator where the evaluation process was similar to YC. The company could filter out applicants whose ideas didn't align with their business objectives.
Additionally, BigCo could own the rights to the product (or some portion) while the "founders" get salary/benefits for their time. Perhaps reduced salary but with large performance benefits. Really, the monetary issue wouldn't interest me as much as the ability to work on a project where I had autonomy and interest. (I wouldn't apply with project ideas that I had no interest in)
Additionally, BigCo could own the rights to the product (or some portion) while the "founders" get salary/benefits for their time. Perhaps reduced salary but with large performance benefits. Really, the monetary issue wouldn't interest me as much as the ability to work on a project where I had autonomy and interest. (I wouldn't apply with project ideas that I had no interest in)
Actually a friend of mine interviewed for a "startup" that's in the same position. The company has little fear of going under from bankruptcy, but they have the startup feel with the random basketball hoop, video games, snacks, etc that bigco doesn't offer to their employees. They have autonomy to do their own iteration and that's what's preferred by the parent company.
There's no trick to it. Not everyone here wants to run their own business.
Big pay packet. Great pension plan. Stack of benefits. Interesting problems. An office (with door and windows), or at least an office shared with only a couple of other people. Multiple monitors, decent hardware, company practices that meet expectations (source control, code reviews, etc etc). I'm not obsessed with any of the coding religions (XP, agile, waterfall, pair-programming and all the rest - you know who you are, and no, of course I don't mean _your_ particular religion, reader, you've got the one true faith so there's no need to argue) but reasonable management with an understanding that estimates will only ever be estimates and that coding is not at all like building a bridge.
Big pay packet. Great pension plan. Stack of benefits. Interesting problems. An office (with door and windows), or at least an office shared with only a couple of other people. Multiple monitors, decent hardware, company practices that meet expectations (source control, code reviews, etc etc). I'm not obsessed with any of the coding religions (XP, agile, waterfall, pair-programming and all the rest - you know who you are, and no, of course I don't mean _your_ particular religion, reader, you've got the one true faith so there's no need to argue) but reasonable management with an understanding that estimates will only ever be estimates and that coding is not at all like building a bridge.
the ability to work/meet remotely full time.
The biggest thing for me is remove the red tape and bureaucracy. This is the worst thing big companies do. Every time they see a problem, they think the solution is another checklist. Someone needs to make CTOs understand that if the programmer has to fill out six checklists, he's not actually being more careful. He's most likely being LESS careful, spending time checking off boxes instead of actually testing stuff.
One idea that I think might work for a big company to appeal to startup-minded people is if it were actually organized like it had a bunch of start ups. Make teams of people that are geared towards actually being able to create a product, but don't put a pointy-haired manager over each one who report to directors who report to VPs. Give them the autonomy to finish products the way a start up would, working with their business customers the way a start up learns from its users. Rather than promotions and titles, pay them according to the worth of the products they develop. If the business customer justifies a project saying it'll add 10 million yearly revenue, maybe the team should get 1 million split evenly between them. If two people can pull off such a product, they're worth more than the team that needs 5 people to do it. I'm sure there are things that still need to be considered with this idea, but I think it has some sound principles. In theory I think I'd prefer working at a place like I've described versus the traditional org chart.
I've heard Amazon described that way, but I don't work there so my information is purely second-hand.
One secret to having a good developer experience in any company is having a very small decision "surface area" for the developer. By that I mean, he/she only needs to talk to 1 or 2 people in order to make a decision. A small company has this sort of environment naturally but a "big" company can somewhat duplicate it by having a small team with a great manager.
The reality is that large companies tend to have organizational reasons not to hire the sort of people that they say they want. For example:
They express the desire to hire the top 1% but of course they can't or don't want to pay a salary in the top 1% - perhaps they've never paid that much for a developer or maybe it wouldn't be fair to the less talented or more exploited devs already on the payroll.
They say they want "smart people that get things done" but they aren't prepared to give them someplace quiet to think or resources they need.
Heck, sometimes it seems like HR's job is to keep the best people out. Do they really want someone exceptional even brilliant? "Oh no, we couldn't hire him, he doesn't have a degree."
The reality is that large companies tend to have organizational reasons not to hire the sort of people that they say they want. For example:
They express the desire to hire the top 1% but of course they can't or don't want to pay a salary in the top 1% - perhaps they've never paid that much for a developer or maybe it wouldn't be fair to the less talented or more exploited devs already on the payroll.
They say they want "smart people that get things done" but they aren't prepared to give them someplace quiet to think or resources they need.
Heck, sometimes it seems like HR's job is to keep the best people out. Do they really want someone exceptional even brilliant? "Oh no, we couldn't hire him, he doesn't have a degree."
Ok, so if a big company (1000+ people) wanted to attract more engaged, passionate and enthusiastic developers like you... how could they go about it?
If you are 100% lazer focused on startups right now, that's fine. But what about other developers in your circle, or if you needed a place to rest-up after a startup failure, etc.
I got asked this question by the CTO of such a big co and couldn't give a clear, satisfying answer - so give me some suggestions! This is not a recruiting post in disguise either, btw.