6 ms·
I think a lot of small/medium companies should simply get realistic about the following facts: - They are probably not going to be able to hire "great" enginee
by d_burfoot 6y ago
I think a lot of small/medium companies should simply get realistic about the following facts:
- They are probably not going to be able to hire "great" engineers
- Even if they get a couple of great engineers, they are not going to be able to create an engineering culture where those engineers can do great work.
Instead of looking for "greatness", most companies in this position should simply settle for competence. Hire people who use boring technology and build systems that do things simply and directly.
- austincheney 6y agoThat’s what most big companies already do and why it burns out experiences developers. The degree of settling for competence is a sliding scale that sets horrid expectations. That’s so many developers can’t tell the difference between expert beginners and actual experts.
- babycake 6y agoI don't know about this. Most experienced developers I know of have family, and they generally value their personal time. They don't mind doing boring software. And even if they are bored, I don't think it burns them out. What I do know is that company processes burns out all sorts of people - experienced or not. From stack ranking, agile micromanagement, unrealistic deadlines, office politics, bad bosses... These things are prominent in nearly every company, especially in top companies like Google. I agree with the parent post, even if you by chance somehow hired fantastic 10x developers to your team, the environment in which those developers will be working in will probably burn them out quicker than just working on 'boring' software.
- dcewcrrec 6y agoI don't like this negativity. Pay and position doesn't necessarily reflect competence. I don't buy that the smartest engineers in the world are all working for big companies.
- sam_lowry_ 6y agoI worked in unicorns and small companies over a couple of of dozen of years. Best people do thing that matter. There are fewer things that matter in big companies.
- snoman 6y agoOptimizing for the rarest of scenarios - that you're going to hire the bestest engineers in all the worlds - is silly and foolish. It's not negative. It's pragmatic. If you even happen to just encounter one of those people (they're rare by definition) then do what you can to hire them, but the truth is that the vast majority of companies producing software wouldn't even know what to do with them if they could attract them. Stable, predictable, performance has a ton of value too - and you get a lot of that from 'regular' developers.
- danielrhodes 6y agoThat's because people are obsessed with this idea of a one-size-fits-all great engineer. A generally great engineer to a startup is somebody who can ship fast, make good enough decisions and trade offs, can think on their feet, and is a jack of all trades. A generally great engineer to a big company is somebody who can work well with others, can follow process, can work within huge code bases and abstractions, and follow architectural best practices. These two do not necessarily overlap.
- 908B64B197 6y agoI keep hearing this trope of big companies vs small companies and it's flat out wrong. Best engineers are working at high growth organizations. Pay and position do reflect competence if you are looking at that demographic.
- JamesBarney 6y agoThey don't, but... Google has brand recognition, and an enormous recruiting pipeline so they can hire one in 50 or 100 candidates. They are better able to select for great candidates because they have more data and much more sophisticated system for identifying talent. They pay very high salaries so they can retain top talent. The average candidate that applies to Google is going to be a better than the average candidate that applies to a small/medium shop. A small medium shop that tried this would be chronically and severely understaffed with a high turn over and would probably still fail at finding the best candidates. If you are a small or medium sized shop and really need top level talent the best thing to do is probably just hire googlers and netflixers and pay them a market rate of 400-500k a year. But for most products it's not worth it because the end product wouldn't be materially different enough from an average developer building it to justify the cost. Also most small to medium shops could improve engineering quality by taking the Netflix approach which is getting better at firing people, and compensate them for the lack of job security with cash.
- dkdk8283 6y agoI now work for a 100 person org. I came from a place with high standards and 1000+ people. I’m not happy. Broken window theory applies. We need to make money but it’s my responsibility to ensure we do it safely. Incredibly difficult with adderall addicted developers who shine bright in politics.
- bencw 6y agoI see what you're getting at with the first point but what about the second? It seems to me the "quality of engineering culture" at a company doesn't need to correlate with company size.
- carlosdp 6y agoThat's how small/medium companies stay small/medium for the most part though. I don't think the solution to this problem is "give up" =/
- war1025 6y agoMost companies will be small / medium. There isn't any shame in that. For many people the end goal of being employed / building a company is "keep a roof over my head and put food on the table". The desire to "change the world" is really pretty limited in the broader population.
- borvo 6y agoA great engineer in a small/medium company is not the same thing as a great engineer in a big company.
- ajhurliman 6y agoAgreed. I think that being a great engineer in a big company has more to do with being at least moderately competent and being able to build political capital and drive change in a bureaucracy. Many of the higher-ranking engineers I've seen at big companies weren't necessarily brilliant, but they were all well regarded.
- 0xy 6y agoYou can be a genius savant engineer and still crash and burn at large companies because you can't politic. I've seen it.
- gonzo41 6y agoHire people who use boring technology and build systems that do things simply and directly. This is great engineering though. Isn't the trick to find engineers who don't build nests for themselves and create strategic technology problems for your company, especially if your core business ins't tech.
- cyberdrunk 6y agoI disagree. Great engineering is when you propose and implement (or lead a team implementing) a complex, novel and valuable piece of engineering. Linus is a great engineer, key people working on database systems are great engineers etc. What you're describing is "just" competent engineering.
- gonzo41 6y agoMost engineering problems aren't up the engineers to invent or propose. What you're describing sound more like product design. A lot of companies face a problem such as "We need a bridge an we have X money for it". The engineering is in meeting spec with those constraints. The great engineering is doing that and not baking in a hidden cost of support, maintenance etc.
- cyberdrunk 6y agoIn civil engineering world, great engineering would be proposing a novel design of a bridge (for example, a first large bridge built out of steel) and delivering it. Of course, most situations don't require novel designs, you just need competent implementation of something that is an industry standard. In software world, you can also satisfy 99.9% of cases with existing approaches. You mostly don't need great engineers for that.
- zbentley 6y ago> In software world, you can also satisfy 99.9% of cases with existing approaches. You mostly don't need great engineers for that. Unlike other engineering disciplines, software has a constant pressure for pseudo novelty and fad adoption. One dimension of "greatness" is resistance to those temptations and pragmatism in the face of constant change. In that regard, lower quality engineering talent often correlates with increased tech churn and defects, even given a simple business domain. Tl;Dr engineering excellence doesn't only imply innovativeness, it also implies discipline.
- CarbyAu 6y agoEveryone wants something for nothing. IE hire great engineer who got all their experience and made their mistakes somewhere else. Why not roll your own? I am constantly amazed by companies moaning "We have a skills shortage! We have to get people from overseas." Sure, get people from overseas if that works. But bloody train people to do what you need! For the FAANG, train hundreds of them! Sure, you may want penalties for people leaving early after training or bonus for hanging around after training (like you get bonus stock 1-3 years after the training) but HR people, get creative and do your damn job! Your job isn't just hire&fire.
- ssss11 6y agoI completely agree. The approach of hiring young and training them is particularly overlooked these days but is the best approach as you end up with a blend of experience over time.
- conro1108 6y agoIs it really overlooked? Pretty much every big tech company I’m aware of does a good amount of hiring through the intern->new grad pipeline
- collyw 6y agoBig companies have the resources to do that sort of thing. I work at a small startup, we need some experienced people because its just extra overhead getting juniors up to speed and we are already under resourced. I don't think anyone has anything against training juniors in principle, but it takes time and effort.
- heavenlyblue 6y agoIn order to train people, you need people who are qualified to train them :)
- solipsism 6y ago> Instead of looking for "greatness", most companies in this position should simply settle for competence. Hire people who use boring technology and build systems that do things simply and directly. Great engineers use boring technology and build simple and direct systems.
- collyw 6y agoThat's what I would do, but no one seems to value that when you are jobseeking. It's all about having numerous shiny technologies on your CV.
- collyw 6y agoThere are plenty of "good enough" engineers, most jobs are not a lot more than "intellectual grunt work while being distracted" as someone on here said.
- lasereyes136 6y agoI don't know why this would be true of only small/medium companies. I would say it is true of most companies of any size. Without the right engineering culture you will not be able to enable building anything interesting. Boring technologies seems like a good idea until you realize the market place for software people rewards people with cutting edge experience.