Hacker News new | past | comments | ask | show | jobs | submit login
Tech Education Con (jacobinmag.com)
46 points by DeusExMachina 3 months ago | hide | past | web | favorite | 61 comments

The thing about tech projects is that you can always hire more engineers. There is no limit as to how many engineers a company can employ for any given project.

As soon as the CTO loses touch with some part of the code base, that's when the middle managers start introducing unnecessary complexity into projects. Technical middle managers will always create more complexity to give themselves more work and more responsibilities. They will do it subconsciously and compulsively.

There aren't many engineers today who care about code quality or even know what that means. I'm disappointed by what this industry is turning into. There is no pride in efficiency anymore.

Most managers within tech companies today don't have a clue what good software development looks like; they think that if they use TypeScript as a programming language, Agile as a methodology and Jira as a project management tool, that the product will turn out great for sure; but it's not the case.

Tech monopolies can allow even the worst tech managers and engineers to thrive professionally. No one ever gets reprimanded for unnecessarily increasing the project complexity even though it will cost the company millions a few years from now (in a large part due to the need to hire more engineers to manage the complexity).

WhatsApp could handle 200 million users with only 50 employees; it's proof that you don't need many employees to deliver quality. Keeping complexity under control is a better strategy than just hiring more people.

Interesting you should say that, as it runs against the accepted wisdom[1]...

1: https://en.wikipedia.org/wiki/The_Mythical_Man-Month

I think that my point is exactly in line. This line from Wikipedia:

>> "The Bible of Software Engineering", because "everybody quotes it, some people read it, and a few people go by it"

Exactly my point; everyone will complain about complexity being the biggest problem in software development (everyone agrees about this); and yet these same people will keep making decisions that will increase complexity within their own projects (for example):

- To use Jira instead of Trello.

- TypeScript instead of JavaScript.

- 100% code coverage in tests instead of well targeted integration/functional tests.

- Hire more people instead of focusing on improving internal practices and coding style.

I what world is making medium large project in Jacasript less complex then in typescript? Where are the companies with 100% test coverage?

I have years of commercial experience in both JavaScript and TypeScript as a developers and yes TypeScript adds a lot of complexity over JavaScript.

I've worked for at least one company that had 100% unit AND integration test coverage of every line of code across all projects. It took about 3 days for an engineer to rename a single property in one of the API endpoints because of the time it took to get all the tests passing again. Most of them were useless and added no value to the project.

> Most managers within tech companies today don't have a clue

In my role as tech manager, I've been called incompetent, stupid, short-sighted, biased, insane, greedy, vindictive, just about every epithet in the book.

This is normal. If you're ever promoted into management, you'll be, too.

If you think that's bad you should try going into politics :)

Hah. I forgot about that. You magically change from being a cool 10x programmer into a moron or worse.

I dont understand arguments like this. It reads too closely to the anti-immigration narrative I hear all to much in USA lately. If you're hard working, critical thinker, creative then you deserve the opportunity to join us and lowering barriers to all these folks is not something we should perceive with skepticism. Discouraging opportunity so you can have more market share is just plain selfish and bad for society, not to mention the fact that if youre highly qualified you shouldnt be concerned with a growing field of tech workers.

Exactly. When I became a lawyer I was astounded by people speaking in lofty language about how serving people is the highest good and then turning around and saying that we have to protect the legal field from “low skilled” entrants because those people will harm clients with the inevitable malpractice that will occur.

As a lawyer, I know for a fact that a lot of legal work is not complicated enough to require a law degree, but it does because otherwise lawyers would make substantially less money.

There’s a giant gap in the legal market where there are poor people who need simple services and they aren’t getting them because there are no lawyers who can afford to work that cheap and pay off their loans, or the lawyers are doing the work pro bono, which is generous, but why don’t we just let people who aren’t lawyers do more of this clerical work?

I think the critical thing to focus on is the fact that:

1) H1Bs are known to be abused by US companies. A much better system, rather than a lottery, would be one based on bidding: Where basically those willing to pay the highest salary "win". You could just as easily say the status-quo for H1s is anti-immigrant: they are held captive by their employer unless someone else can hire them; they have to leave the country a few days after their employment ends, all while working for less than other equally skilled workers.

2) As the article states, tech companies grossly overstate the so-called tech skill shortage, and furthermore, this alleged demand just showing up in worker's wages. If there was indeed a shortage as vast as they claim, wages would be higher.

3) Many people are being sold on these careers not for the love of computers and technology, but for the potential earnings. But those potential earnings will shrink once you have an influx of cheap talent in the labor market. So if you tell people "You should take on this debt and learn to code because the jobs are high paying" you're essentially repeating the same "go to college so you can get a good job" scam the baby boomers pushed on millennials.

Some younger HNers may not remember this, but in the aftermath of the dotcom crash of 2001, interest in these sorts of "learn to code" efforts evaporated, with people being actively discouraged from learning to code because software was going the way of textiles. If there's another downturn, and tech is impacted, you should expect a repeat. Regardless, those student loans will still be due.

I think you are missing the point a bit. Opportunities aren't static. Someone gets to decide what should count. If you don't assert your case, someone else is going to get their way. And there isn't necessarily an objective truth. One person might value experience and the other youthful enthusiasms. These shifts are going on all the time. When everyone started doing "agile" almost nothing else mattered. Sometime barely agile itself.

I agree with what you say and was irritated by this side of the article. The other side is deeply disturbing though: It's companies deciding about what we're able to learn.

Is the economics of this article right? The main problem I have is that the total supply of engineers is huge and Google is benefiting all companies that demand engineers, not just themselves, which is a massive dilution.

A Google search shows Google has about 40K software engineers, while the USA has about 18M software engineers. This means Google hires about 0.2% (i.e. 0.002) of the software labor force.

This means that Google only captures 0.2% of the benefit from increasing the labor pool. 99.8% of the dollar benefit goes to other people -- some of who are competitors even!

Further, Oracle hires a lot more software engineers, but Oracle is notorious for its profit motive and bad image while Google tries (in name at least) to be altruistic. Is Oracle spending as much as Google on STEM? How about IBM, SAP, etc? If the math works out for Google, it should doubly work out for companies employing more software engineers.

This is a theory that seems like it can be true (and make you seem smart at cocktail parties), but the math doesn't seem to add up.

You're exactly right. Investment into STEM education would be a very slow, inefficient way for FANG et al to reduce worker pay compared to collusion (which they were busted for in 2014) or more aggressively focusing on hiring overseas instead of the US.

It's true there are plenty of other self-interested reasons for these companies to fund CS education: PR, getting new devs trained on their toolchain (my college CS classes were in the Gates Building, and friendly Microsoft evangelists brought pizza and free copies of visual studio to my freshman intro CS class), and growing the tech industry overall when they control and monetize the underlying platforms.

But then, there is also the much more mundane explanation that these charitable contributions are a drop in the bucket compared to these companies' overall budgets, that they are run by human beings who see themselves as doing good and who are predisposed to think CS is a great path to a good future.

What is that doesn't add up? Of course if you want decrease your cost for salaries you can't have other people pay more. In fact, you want other people to pay less. That is how many of these companies started attracting employees in the first place. The median salary at Google is $200k, that is undoubtedly a lot of money in salaries. They certainly wouldn't mind turning some of that into profit instead. But it is probably even more important that salaries doesn't continue to rise. Especially since it is always hard to decrease pay for current employees.

The irony around this article is that the hardest part about getting a tech job is the interview processes these companies create themselves. Do companies want to pay less for their talent? I'm sure the answer is yes. But realistically the barrier to entry for these kinds of positions is not a "skills-gap" in terms of the technology most engineers are likely to use in a day's work.

Anecdotally, I haven't met any coding bootcamp graduates that have managed to get software jobs at FAANGs. I'm sure this is because my experience is anecdotal, and that there actually is a steady supply of bootcamp grads that are getting jobs at these companies. But my point is that even with an accelerated program designed to retrain adults to have the skills they need for these positions, the supply will probably not increase to a point where salaries are significantly effected. This especially true when you consider the number of previously non-technical companies that are hiring software engineers at incredible rates to meet expected software development demand in the coming decade.

> I haven't met any coding bootcamp graduates that have managed to get software jobs at FAANGs

That's because the FAANGs already have stacks of resumes from Stanford, Caltech, MIT etc. Part of the diversity issue (academic and demographic) comes from the fact that they rarely recruit outside their comfort zone of 5-10 schools.

I don't have recruitment data so its quite possible those companies recruit far more heavily from those schools, but even from my own anecdotal experience at a top 30 (yes 3-0) state school in CS I was still getting recruited and interviewed by Amazon, Google, and Microsoft. And that was as a Physics major with only a CS minor in my Junior year. I doubt getting interviews with those companies is the issue, they are ALWAYS looking for more talent wherever they can get it.

Of course if you take some kids with liberal arts degrees (or no degrees) and train them to have programming skills they will be cheaper than people with senior level skills and CS degrees. But isn't that to the benefit of those workers who now have jobs? They might make less, say $60,000/yr, while the old guard gets angry because they now aren't competitive and their wages go down. What's interesting though - as an aside - is that these bootcamp grads _still_ demand to make as much as people with CS degrees and years of experience.

But what's the answer, protectionism and railing against STEM education? Yes software developers will be bitter about lower wages, but in the long term that means more people with skills and jobs, more people of color, more people from poor backgrounds who come from families who never made more than $20,000 in their life.

Let's not be so selfish, there are plenty of ways to outshine a General Assembly bootcamp grad with no degree... You just aren't going to do be able to do it by building websites for $200,000/yr anymore.

I think the problem is that for a lot of us technology was a way to provide ourselves and our families with a middle class living without doing something exceedingly dangerous like underwater welding or deep sea fishing. The companies that employ technology people are trying to eliminate this line of work and render it as cheap as an entry level checker at Wal-Mart. When that happens, how can anyone earn a living doing anything? It's not like these companies are going to take pity on their workforce and provide raises. Instead management will be trained to treat people as interchangeable and replaceable.

I don't really have an answer to your questions. What I can say is that if this happens it might be warranted to be bitter. Because a lot of things in the tech industry have been justified by high salaries. Personally I haven't believed most of it, but a lot of people have.

I've started frequenting the subreddits /r/csmajors and /r/cscareerquestions and it's truly disheartening to see the number of people who are obsessed with doing just enough to get a high paying job. I've seen people claim that the point of going to Stanford is to get a good job or that one shouldn't bother with courses past data structures because they won't help with a job. The cynical part of me hopes that a tech crash will eliminate some of the more careerist people.

Stanford's undergraduate tuition is likely in the $200k+ range over 4 years; many other US schools have similar tuition fees. Why shouldn't CS students obsess about a 6-figure job?

Also, FA_NG (left out Apple) doesn't sell anything other than surveillance and ads, and the mainstream use case of AR is superimposing dog ears on a selfie, what motivation is there for CS students to push the boundaries of their learning?

It's totally fine to think or even obsess about a high paying job. It's not okay for that to be the only reason you're in the industry.

Plus, you really don't need to go to Stanford, MIT, etc. to get a high paying job. If I wanted to maximize my wealth ASAP, I'd go to my state school, major in CS and math/econ, graduate in 3 years debt free and then go into finance/tech. I'd like to hope that the people going to Stanford are doing it for more than just a 6 figure salary.

There are lots of assumptions in your "this is how I'd get rich" plan.

- A CS major at a state school in North Dakota doesn't go as far as one from say, the Cali state system.

- A CS and Math/Econ double major in 3 years? How many people do that and have a GPA that isn't toilet-adjacent?

- 'then go into finance/tech': If by 'finance' you mean IB/PE/HF, those firms don't recruit at state schools unless it's in a major metropolitan area or has a history of hiring alums. If you think you'll get into IB by just submitting an online application like the rest of the world, then good luck.

Same for FAANG and the other companies that offer big salaries to fresh grads. They aren't exactly flocking to the SUNYs to pick up CS grads.

> A CS major at a state school in North Dakota doesn't go as far as one from say, the Cali state system.

Fair, but honestly I don't think FAANG companies put a lot of weight on school past the top 10 ranked. I don't think your average hiring manager is going care about the difference between Bing and NDSU.

> A CS and Math/Econ double major in 3 years? How many people do that and have a GPA that isn't toilet-adjacent?

Don't sleep. Study a lot. Keep in mind we're talking state school here. Double/triple majors are a lot easier at Bing than at Harvard. If you come in with AP credit it's definitely doable.

> 'then go into finance/tech': If by 'finance' you mean IB/PE/HF, those firms don't recruit at state schools unless it's in a major metropolitan area or has a history of hiring alums. If you think you'll get into IB by just submitting an online application like the rest of the world, then good luck.

Okay, sure, finance might take a bit more finesse (although outside the big firms I bet it's a lot easier). But tech is generally more focused on general hiring pipelines.

> Same for FAANG and the other companies that offer big salaries to fresh grads. They aren't exactly flocking to the SUNYs to pick up CS grads.

I actually know quite a few people at SUNYs that have FAANG internships. Especially Stony Brook. Not unbelievable that they'd get a decent offer out of school.

Will probably make it worse. I mean, people are actually surprisingly often motivated by substance. Going to an ivy league school and joining a large tech firm is one of the few ways to guarantee success in a time with few guarantees in general.

"Just enough" and "high paying" don't really seem to belong in the same sentence - aren't really high paying job offers pretty hard to get these days? I expect that filtering out the more clueless "careerists" would be a pretty big priority for any hiring manager in a position to offer a high-paying position.

> aren't really high paying job offers pretty hard to get these days?

Honestly? Not really. If you're willing to devote enough time to slavishly going over leetcode questions and apply to enough places, you can get a nice offer, especially for college students who can get their foot in the door via internships. For better or worse, tech job applications are a very standardized, simple system.

What's wrong with wanting a job? Being poor is objectively awful.

I get that some people aren’t in a position to think about lofty ideals like inherent interest or intellectual curiosity, but there’s something truly banal and depressing about people squabbling over 6 figure salaries.

Which is better: benefiting the world with a selfish agenda, or hurting the world with an altruistic one?

Who cares about their interests? If it helps people get educated and improve their lot?

Who does it hurt? Everyone. I think it hurts everyone when we allow bigger companies (or a powerful few) to steer the education system. That should be left up to a democratic process. Why should Facebook, Google, etc. be the ones to decide that education is only about getting a job (and specifically about getting a job at Facebook, Google, etc.)?

I'm not sure I understand how that hurt actually takes place. These companies are essentially acting as charities, donating a portion of their profits to reduce the cost of a tech education. Some people who might not have been able to pursue education in tech are now able to. Do those people not benefit? Do the companies not benefit? Then how is society harmed? Would society really be better off if these companies remitted that money to shareholders as dividends, as is their right?

It seems to me that the complaint begins and ends with the assumption that if something is good for a big corporation then it must be bad for society at large, and vice versa.

It's not just funding, it's when they steer education programs by threat of removing funding, or by providing free stuff or services; sometimes even more directly.

Education time is finite. If you focus on some specific you may miss out on general or a different specific. (Reminds me of a database course focused on Microsoft tooling... half the technologies now dead.)

The worst people are the ones who truly believe they know what's best for you, and therefore feel justified to ram it down your throat.

No, I think the people that know what's good for them and ram that down your throat are worse.

I think you'll find that religious wars are more vicious than empire building.

> It’s not too hard for a physics student who already writes R code to learn web development from a MOOC in order to get an entry position at a startup.

As someone who did this, it was very hard to do and took a great deal of both hard work and luck. I’m surprised that it’s dismissed in a single sentence.

At the start of my career, I worked for a company that did web sites. The philosophy was to sell cheap and get cheap labor to do the work. A "digital sweatshop" is a good description. It worked because html is easy to learn and repetition made you fast.

Just knowing html is no longer an option but I can see where knowing the basics in programming is enough to create an assembly line type of programming workforce.

Prior to the industrial revolution, Craftsmen were the norm. With the advent of automation products are created that best the best craftsmen of old and do it at speeds that no craftsmen can match.

There will always be room for the best but we are heading towards a future where low skills will dominate. AI is the big subject now but as most AI expert know AI is very specialized. Generally, it can't match what a five-year-old can do but it's excellent at doing one thing very well. Combine current AI and low skill programmers and you have the workforce of the future. It will be cheap and fast. But we can't get to this future until the workforce is trained.

Going forward, the tech giants will be looking for competent techies not necessarily the best of the best but they have to have a competent group to choose from.

Infotech workers get paid very well now because demand is high relative to supply. Increase supply and pay is bound to fall. The tech companies know this and are doing all they can to increase supply.

If you think companies are doing the world a favor. Don't! Companies are doing their best to survive one more day and create a future where they thrive.

A few counterpoints:

1) Google and Facebook represent only a very small and very elite slice of the developer market. This bizarre focus on what happens at the top 0.5% of the market has a distorting effect. The rest of the market is ignored in this analysis.

2) No mention of dollars spent on training vs. dollar return in labor savings. If Google spends $1 billion on education over 20 years which provides a labor savings of $500 million then they are losing out. The article speculates that there will be a net profit on labor savings but provides no data or evidence to back it up.

3) Developer salaries may actually be inflated. In which case it's only natural that many people would try to get into the market, either by participating in MOOCs, getting a computer science degree, being self-taught, etc. The article assumes it's exploitative to help people break into this market, because the MOOC companies operate at a profit and it might reduce developer salaries overall. But people are going to find their way into the market on way or another. Even if we got rid of all the MOOCs and all the tech education initiatives talented people are going to flock to these industries.

4) Article ignores positive effects. Lower developer costs mean smaller companies or less-than-rich individuals can hire talented developers to build a new service or start a new company. Developers might be paid 10%-20% less, but we would also end up with more developers total. The net benefit to the labor market as a whole would be positive.

This is written in such a pessimistic tone. I mean sure, tech giants want to have lots of labour available, we get that. But is it wrong? At least some people who wouldn't have had the change to code will get a sniff at it now.

Also, I wonder whether it will matter much to supply. How many CS grads are actually being churned out? I heard it hasn't changed all that much. And people leave the profession too, either they don't like it or they can't hack it.

I somewhat liken it to sports. It's not that easy to like programming if you didn't like it as a kid. Sure, you can learn to kick a ball around when you're an adult, but you're not likely to have time, and the best opportunities to learn and progress will have passed. (OTOH your body won't start failing you as a coder in your 30s.) That's not to say you can't, I'm sure a bunch of late bloomers will appear if I left it at that, just that you tend to know that coding is the kind of thing you like when you're quite young.

So the undiscovered pool of talent is probably quite small. We can give more kids who don't have access to a computer some gear and some intro, particularly in poor countries. But there's cultural and legal issues with tapping that pool. With advanced societies, probably a lot of kids who are going to like coding will already have been exposed.

I think the more likely reason Apple, Google, and Microsoft push their products in schools is to hook students on their products so that they continue to use them into adulthood.

I find it pretty astonishing that ChromeOS (installed on Chromebooks) for example is so widespread in US schools. This is a 'cloud-based' operating system that that tracks everything you do. To properly use ChromeOS requires you sign-in with a GMail account. Now your personal details are tied to all your activity in the OS (a guest account gives you limited functionality only).

Even if that activity data is detached from your account and "anonymised" (a pretty meaningless phrase), this is still means Google captures and saves (and presumably aggregates) the data of millions of US students that they can interrogate and dissect in ways that even they probably don't yet know.

Why does the tech community accept this?

The kids forced to use ChromeOS don't even have a choice in the matter. It's the adults who decided for them. Online tracking is so normalised now, large parts of the tech community rush to Google's defence. (Does a giant multi-billion dollar corporation need your defence?) It's a pretty depressing state of affairs and shows how little the tech community actually cares for privacy.

I don't know of many people in the tech community "rushing to Google's defense" over the phoning-home features in ChromeOS. School administrators have always wanted devices that track what students do on them, and ChromeOS gives them exactly that - similarly for organizations which rely on Google's enterprise services. But aside from these cases, who actually uses Chromebooks? Especially in the "tech community"?

It's not like schools choose Chromebooks because of the spying. They choose Chromebooks because they're cheap and the software is reliable. iOS is equally reliable but much more expensive. Desktop Linux isn't even in the running.

> It's not like schools choose Chromebooks because of the spying.

You really think they don't? They might go for a slightly different angle, like the ease of centrally managing your deployment or whatever, but the gist of it is that they want a device that can be made to act against the best interests and expectations of the end-user.

Considering how tiny Google's workforce is compared to its value, this doesn't add up. That's even before you consider the longer term effects of automation.

Those of us grounded in reality saw this coming a mile away. Apart from tech salaries dropping long term, working with people that don't truly enjoy software engineering is truly maddening. Like I always said, the golden age of the 2000s tech era died long ago.

If degrees are no longer requirements to get tech jobs and tech companies start paying significantly lower salaries, what can one do to become competitive in this market?

What value do Masters and PhDs (in CS) have in the current market?

I think Masters and PhDs are basically in a totally different market than workers with bachelors', Associates', "boot camp" certificates, or no degrees at all. They are being hired for "alpha hacker" positions implementing compilers, databases, graphics engines, etc. while everyone else is building apps, REST APIs, doing enterprise integrations, etc.

It might not be such a bad tradeoff. You might earn less, but will have a 4 - 6 year head start on building job experience and a nest egg. And if your training takes significantly less time, that reduces one of the biggest risks of all, which is that you don't finish the training.

I'm not sure getting a computer science degree is as easy and making chrome books cheap. It is, after all, hard. Americans don't like hard things. And I don't think $120k salaries are "cheap labor." in fact, I think I'm ready to dismiss this article as being a lazy opinion piece without research or data.

I just saw a piece that the number of cs enrollees doubled in the past x years and that they can't find professors. That made me reconsider my thoughts on this. Perhaps a doubling in supply will reduce wages but I still think there is a shortage. I also think silicon valley is an irrational place to do a start-up and the rest of the country still needs developers.

I agree however this misses a couple of things. In the future there will be exponentially more tech companies than now.

Or it could be less. I think a secondary wave of innovation won't come until the bubble pops and there is a diaspora of out-of-work yet skilled engineers forced into jobs they would have otherwise felt were beneath them, and are then required to deal with the problems of the every-day worker.

So when I was in college I did a writing requirement course called The Hero in Literature and in it I suggested something like that one Russian author's book was a direct response to another Russian author's book that I had read previously: I made a strong case about dates, thematic overlap, how you could view this speech over here as a rebuttal of that speech over there. Feedback for the first revision: whoa there, that is a very serious charge you are making, and even if all of those things are true it might just be that Russian authors happen to like similar subject matter, kind of like how existentialists seem to orbit around the paradoxical freedom of a young man facing the potential tragedy of a life sentence in prison. If you want to prove it, they said, go do research and find letters from the one author discussing the other author's work, analyze those. For high school, yeah, being all "this guy was copying that guy with a twist!" is a very interesting paper, but for college we expect you to realize that that's a very serious claim and it needs to be backed up with some very serious research.

I feel very similarly here: yeah there is a case to be made that this is a "long con" of trying to saturate a labor market with fresh talent, but if you want to prove that, really, I need to see leaked internal letters and strategy presentations that indicate that someone at Google or Microsoft is consciously trying to change the labor market. Because it could also just be that Google has a lot of programmers who think programming is easy to learn and incredibly powerful as a modern-world skill, and so they have a lot of people pushing for educational initiatives. You can't tell the difference between those by the outside act of supporting the educational initiatives but only by looking at the internal communications.

For what it's worth, if that is Google/Microsoft/Apple/Amazon's strategy, it is likely to be very difficult and enterprisey in ways that they likely don't want to be -- all at least pay lip service to some high-minded ideals of innovation and revolution, no? But if you're looking for those "black swan" successes, you face the problem that achievement is not normal but log-normal[1]: it depends on the multiplication of independent factors, and not their summation. Coding bootcamps and mass coding education only target one of those factors, but without the rest you don't have a highly performant individual. Like, if that's their goal, one would imagine them also having "emotional intelligence bootcamps" and "how to take conscientious personal ownership of the work you do bootcamps" and so forth to try to increase the number of people who have several of these skills, not to fixate on just one of them when those other ones will set a maximum capacity for the employee.

[1]: https://www.johndcook.com/blog/2009/09/29/achievement-is-log...

Oh look, a communist magazine rediscovered what's great about capitalism. Companies, in the pursuit of private profit, make the world a better place by subsidizing education. Congrats guys, you did it.

If you help someone become an engineer out of self-interest though, it actually doesn't help them, for complex reasons you need a PhD in literature to understand.

If only these companies had set their intention better.

What we really need is to bring in enlightened humanities ethics managers to teach these greedy engineers what it means to love and cherish people.

Guidelines | FAQ | Support | API | Security | Lists | Bookmarklet | Legal | Apply to YC | Contact