Hacker News new | past | comments | ask | show | jobs | submit login
The most prized degree in India became the most worthless (restofworld.org)
395 points by danso 21 days ago | hide | past | web | favorite | 377 comments

> 3,500 engineering schools across the country, and about 90% of graduates do not have the programming skills to work in software engineering, according to one study.

The "study" is by 'Aspiring Minds' - an Indian company that sells buggy web-based pre-interview filtering tests as a service. It is in Aspiring Minds interest to portray Indian graduates as incompetent to make Indian employers buy their pre-interview filtering services.

Aspiring Minds tested engineering students from all fields (including chemical, mechanical and civil) to make up the misleading '90% of Indian graduates are stupid' headlines. It worked. The headlines went viral and people still quote their misleading study. The coding part of the test was to submit compile-able Java code through an HTML input without any syntax highlighting or formatting. Needless to say most chemical and civil engineering graduates will not be able to do that.

I was a CS student at an Indian engineering college. I was forced to take an Aspiring Minds test. The test was buggy and had no feedback. I probably failed. But today I'm a full-stack developer in Denmark. Most of my graduating class have good jobs and almost half of us work overseas.

Ha I was given one of those when I graduated and interviewed for some random firm (in US), I don't know if it's Aspiring Minds but it was clearly from India. They really go to an extreme length to monitor the tested and I felt very uncomfortable during the whole thing.

The camera's on, Document.hasFocus() is obviously also on, I use multiple screen and you can't move your mouse out of that screen. The test questions are repetitive recital garbage that ask you to recite java syntax and concepts. All in all I would judge it as a complete failure in selecting for technical talent.

All you need to prepare for this is to recite some book about locks or thread and names. And have the coding ability to write hello world level programs in Java without a linter or autocomplete, god forbid you forgot how to use Scanner interface.

I might sound salty, but I didn't need that job and I'm in a much better position today. My opinion is that those filtering tests are loads of crap.

> But today I'm a full-stack developer in Denmark.

Would you mind sharing more details about this? Were your recruited or did you seek out overseas employment?

I'm Indian but in the US since a young age; I'll be finishing my CS education next year and would like to leave this country.

Europe is pretty welcoming. There is a huge shortage of software engineers (of acceptable quality) here.

More precisely: a shortage of software engineers willing to work for low wages. Its far more interesting to move into management roles overhere. Tons of devs leave for the US if they wanna stay in software. Germany and the UK have most chance of solid pay. It is a public secret that Indians are recruited simply because they are not as insistent on making 60k+.

Well it is also true that wage are lower than in the US. So if you are young without many families bonds makes a lot of sense to seek employment oversea.

If Europe started to pay better money, then there would not be such lack of engineers.

Gonna defend Europe a bit more here, I'd wager there are soft benefits which aren't as easily appreciated as cash. On Europe you make less, but you also get out of the meat grinder much earlier. If you are a median person (which most likely, we all are), then your expected value will be about the same, at most a bit lower cash wise than in the US. But even that is debatable, in most of (western) Europe we don't treat active shooters as a matter of normal life, the cities are made for humans not cars and employee rights are a thing. And looking at the worst case, Europe wins: a medical emergency will not bankrupt you, if you call the cops they won't shoot you etc. And on a political level, having more than 2 parties and a wider overton window is quote nice.

If you think of yourself as a human and social being, not a shark or worker bee, I think Europe isn't too bad. But I recognize that dollar amounts and funding for new ventures is still in the US, or China nowadays. And all the stuff I cited are things at odds with the pure capitalist system some people seem to want to live in, and so might not actually be desirable for all

I expected this kind of lazy analysis to appear on Reddit but not on Hacker News.

> If you are a median person (which most likely, we all are), then your expected value will be about the same, at most a bit lower cash wise than in the US.

In my experience wage offers were significantly lower in Europe when I was potentially looking about a year ago. levels.fyi seems to be pretty in line with my pay experience in the US and that’s not anywhere close to the pay I was offered or researched in the EU.

> Europe we don't treat active shooters as a matter of normal life

People in the US certainly do not treat active shooters as a matter of normal life. Have you ever considered that it makes the new explicitly because it’s a rare thing that people do not expect?

> the cities are made for humans not cars and employee rights are a thing.

I think you would find that most technology companies are in cities with walkability/public transit in the US. I think you would also find that software engineers are not treated poorly as well.

> And looking at the worst case, Europe wins: a medical emergency will not bankrupt you

Medical insurance at tech companies I’ve worked for in the US are very good. For example, I pay $20/mo and the theoretical maximum I would pay for insurance in any given year is $3000.

> if you call the cops they won't shoot you

Again, I think you’re treating news as proof that this is a common occurrence. It gets reported explicitly because it is not


I’m not saying the US is perfect because it certainly isn’t. No place is perfect. But, I think that you would find that the US is a very nice place to live for the upper half of the middle class and above and software engineering would definitely put you in that category in the US.

Wow, just wow! Unfortunately I did expect your response from the HN crowd. You and I have very different ways of looking at the world.

The entitlement and privilege among software engineers in the US to have crazy high salaries and "perks" such as health insurance is exactly the reason why I will never move there. I think your last statement sums up the situation very well, but it baffles me how any decent human being would consider that to be a positive.

You may think I am crazy, but did you know that insanely high salaries of a select few is one of the reasons that directly or indirectly leads to income and wealth inequalities in the world, one of the biggest problems of our generation? While you may have excellent health care for $20/month, what about the barista at your local coffee shop? What about your disabled neighbor who got laid off for no fault of hers? How can you live with yourself while they die of cancer as they cannot afford to go to the hospital? And don't get me started on education. How that is viewed as a commodity rather than a basic human right astounds me.

I am very happy with my $60k/year job. I have more than sufficient for myself, and a decent amount to spare. I have excellent healthcare for free and independent of my job situation, and so do all my neighbors. I live in a city with no homeless, and no one desperately poor. I do engaging work for 7 hrs a day and religiously shut my computer at 4 pm, and pursue my many passions afterwards. I have 6 weeks a year of paid vacations, and travel to a handful of countries every year. I paid $50/semester to get educated at a top university, and so will my children. And I received a stipend to cover part of my living expenses. I love the fact that I do not have to worry about getting shot (as rare as that might be). I love living in a country with highly educated people all around with most having the skills of critical thinking. I love living in one of the most gender equal countries of the world (I am male). No offense to anyone, but I wouldn't trade this for a $250k/year job in the U.S. (as levels.fyi seems to suggest for my case).

I just find that Americans have little understanding on how things run in Europe. But same goes the other way around.

If you want to earn a lot - you go contracting in Europe. I used to save about half of my income when contracting 6 years ago in London. My rate was 470 GBP for 220 days out of the year. My expenses were taxes and 700GBP in rent. I saved 60k after tax... and I used to fly business class to Thailand, NYC and Mexico.

My income is technically higher, but expenses are through the roof. You sneeze here and it's $20 gone.

And I could also expect the response to his response by you, probably none other than my own countrymen. (Origin from Scandinavia I assume?)

I moved out from Scandinavia to another country in Asia, with way more safety, better health care, way more educated population, and the added perk that I were offered 2x Salary before tax. Oh and the health care is actually there, not "free" so that people can claim moral high ground while in reality delivering mothers have no hospital to go to and non fatal young ill people are actively shunned away from health care, but it is there and it works for cheap.

You can make any moral or living standard superiority claim if you just cherry pick the stats (as the healthcare example above). As someone that have relatives in US, have lived (study/work) in both Europe and Asia, The North/West Europeans blatant naivety and sense of superiority towards US is shockingly embarrassing to say the least. (and your naivety is offensive, not only toward the US citizen you are trying to smear, but also toward your countrymen that have to live with the facade of perfection)

Edit: typo

> did you know that insanely high salaries of a select few is one of the reasons that directly or indirectly leads to income and wealth inequalities in the world, one of the biggest problems of our generation?

Yes, but it's not the engineers and other well-paid workers that are the problem. They are still workers - they get paid for wealth produced. It's the insanely high incomes - which are mostly not salaries, BTW, but capital gains - of the top management and owners where all the money (that would otherwise have stayed in the pockets of those who actually earned it) goes.

Europe patches it up by taxing the entire top half of the scale more, and redistributing it to the bottom half - but it's still a hack, and it still has substantial wealth inequality as a result.

You can earn 250k and donate 190k if you want. 190k per year will go very far. If you don't to whom to give I can send you names of specific people who are struggling at the moment.

If you completely ignore the cost of living - yes, San Francisco offers way more.

Practically - the compensation offered is on par with your expenses, between US and Europe. Some places in Europe are better than others, but same goes for US.

Booking.com in Amsterdam offered me as much as I get in NYC right now.

I find your rebuttal short sighted and frankly immature, no offense.

> In my experience wage offers were significantly lower in Europe when I was potentially looking about a year ago.

They are. But the median wages are good enough to raise a family and have a happy and peaceful life. Not everyone works for the top-tier companies.

If someone's goal is to optimize the amount of money they make and save, then for Tech US beats everywhere. That's not everyone's goal.

> People in the US certainly do not treat active shooters as a matter of normal life.

Agreed, but the frequency of being shot is higher in the US than in other developed countries. That does not mean the probability of a person getting shot in the US is very high, but certainly higher than other developed countries.

> I think you would find that most technology companies are in cities with walkability/public transit in the US.

This is certainly not true. There are some companies, in some cities with high walkability, but that's not true for most companies. Also in such cities, the cost of a home or rent is expensive for a family and so most people have to live miles away.

> Medical insurance at tech companies I’ve worked for in the US are very good. For example, I pay $20/mo and the theoretical maximum I would pay for insurance in any given year is $3000.

What happens if you lose your job? What about for people who don't work at the best companies (majority of the people).

> if you call the cops they won't shoot you >> Again, I think you’re treating news as proof that this is a common occurrence

I agree with this though.

tl;dr: For people who don't prioritize $$$ and want to raise a family without a lot of PITA, Europe is great!

The wages are indeed much lower than in US, atleast for me. However, I work in a company with a proper labour Union (IG Metal). I have 36 hours working time, any overtime will be paid 30% more than normal. I have extremely good health insurance. My kids get free education all the way to university ( and are part of my insurance until 24). The retirement is linked to the government, not the company. 30 days of compulsory holidays. Sick leaves are not counted.

With all this calculated, the salary sort of equalizes itself.

Don't forget in Europe you have between 25 - 30 holidays guaranteed, better health care - people live longer here, much much cheaper education (I had it for free.), better public transportation... And it's also closer to Asia.

Also there's definitely less extremes around. Less of the bad stuff. Less violence, less criminality, less guns, less social disparity, less racism etc. On the whole I think life is better over here.

> less racism

I think this one is much more contentious than the others. The racism certainly takes more latent forms, so it's perhaps less extreme in that sense, but "less racism" to me implies lower in rate of incidence which I'm not sure is true. It probably is true in at least a few European countries compared to the US.

There is definitely a glass ceiling for immigrants/expats in many companies in Europe.

Cost of living is also considerably lower than US. Your employment guarantees are also considerably higher. Let's also not forget that graduates from European schools don't come out with 100k of student debt.

Then... If you really want to make a lot of money, there are options to do so in Europe as well. Though US should just open the floodgates for CS talent and force the rest of the world to catch up.

While the salaries are indeed lower, you should take into account that in the US people almost always report their salary before tax, whereas in Europe salaries are almost always reported after taxes.

An engineer earning 100K in Europe will be listed as earning 60~65K, whereas in the US that engineer would be listed as earning 100K, despite earning the exact same wage.

Not necessarily.

"It is in Aspiring Minds interest to portray Indian graduates as incompetent to make Indian employers buy their pre-interview filtering services."

They really don't need to do anything. Indian graduates, in my experience, have done everything to screw up quality standings of Indian IT education.

"When a measure becomes a target, it ceases to be a good measure."

Churning out engineers as fast as possible and pressuring everyone to become one despite lack of interest just guarantees you will churn out astronomical numbers of crappy engineers.

And I hate to say it... but it possibly creates unintentional racial bias in interviewers because the sheer volume of crappy engineers being churned out from [Indian/Chinese/etc. universities] has preconditioned you to think all engineers from [Indian/Chinese/etc. universities] are crappy, which couldn't be further from the truth.

I've seen this bias in myself. I interned with several guys from India during college. I was an undergrad, they were grad students, having gotten their undergrad in India. We all went to the same university in the US. They weren't "crappy" engineers, per se, they just seemed to not actually have an undergrad degree in CS. Obviously I never saw their transcripts, but we seemed to be working from very different knowledge bases. I've since worked, as many of us have, with brilliant people from all over the world. It just gave me a weird impression of CS education in India. But, I'm sure others have similar experiences of graduates from [random school in the US or elsewhere].

I have a similar story. I used to work with a guy from India, and he told me “If you ever meet an Indian in a position of power, they got there through nepotism and not by their own merit.”

Hearing that was pretty shocking, not so much because it’s clearly untrue, but because he held that opinion of other Indian people. He did fall under the description you gave, though. He seemed to struggle with basic Arduino and Raspberry Pi programming even though he had a degree in computer science from an Indian university.

> Hearing that was pretty shocking, not so much because it’s clearly untrue, but because he held that opinion of other Indian people.

Why would it be shocking for people to perceive nepotism in their own society?

From my personal observation, it seems to be because a lot of sheltered people who grew up in the US tend to assume that the US culture is the epitome of racism, divisiveness, and inequality that is unprecedented in the rest of the world.

So, in their minds, it is very shocking that a racial minority immigrant said something negative about their own culture. Especially since it sounds even worse than their over-exaggerated negative perception of the US.

There's another assumption going on too, which may explain another component of the shock. People educated in the USA and UK tend to assume that both education and work are based on meritocracy. So when a minority from another country points out this isn't the case, and perhaps even not the case anywhere by offering examples, it can be shocking to people who have spent their entire educational and career trajectory in 'the system' which presupposes meritocracy.

Growing up in Boston specifically - there was quite a lot of awareness of the inequality in the US. Boston has certainly made an effort to address inequality but the old racial divides between communities were quite visible and active racism was still all around me growing up.

In terms of nepotism in particular - we had the Kennedy's, honestly not the worst political dynasty in America but a pretty clear example of name trumping qualifications. I've since emigrated, but I think I was probably disabused of any glorification of the land of opportunity and american exceptionalism by the time I finished middle school.

I wasn't saying that racism or divisiveness aren't present in the US. I am absolutely with you on that, both of those things are present in the US to one degree or another, depending on where you live in.

I was simply saying that a significant number of people in the US get so myopically focused on those issues locally, they don't realize that there is a whole world out there, where those same issues are massively more rampant and ubiquitous. And when they suddenly discover that through a first-hand or a second-hand experience, it is understandable they would be shocked.

OP was saying that sheltered Americans think America is racist, but other countries aren't/have fixed it.

Are you providing anecdotal evidence to support him or were you trying to disprove?

Nope actually - I just fully misread his comment and thought he was saying that Americans don't think America is racist.

Sorry about that!

The irony in this is that it's yet another manifestation of the American Exceptionalism myth, merely applied with the opposite sign.

There's other stuff like that, too. For example, many Americans - especially progressive left politically, but plenty on the right as well - appear to believe that single payer is the norm in the developed world, and US is unique in deviating from that recipe for universal healthcare, even when discussing other options. When you tell them that one can opt to go with fully private insurance in Germany, or that Switzerland runs on something like ACA (much better done, obviously - but the same basic principle), it just doesn't compute.

Or gun control: some lefties literally refuse to believe that civilians can own an AR-15 in Germany, or a silencer in UK, or carry a handgun concealed in Czechia, without much trouble.

I mean... They have serious misunderstanding how Europe works and how the "almighty" US can come in 17th place in freedom according to pretty much every single rating.

PS: US doesn't have universal healthcare, but universal healthcare doesn't imply that government must provide the services.

Yes, I know. I meant the ongoing discussions about how it should look like when we do get it. A lot of M4A agitprop is built on that notion that it would be uniquely bad in comparison to other countries for US to go for anything other than single payer.

I get why this is, propaganda aside - the only developed country that borders US is Canada, so their health system is the one that Americans are most familiar with, and the one that's most often used as a prop in political debates here. And Canada is single payer...

But even that doesn't fully explain it. For example, all proponents of M4A in US want to implement it on the federal level. Canadian healthcare system was created bottom-up - started in one province due to popular demand, gradually adopted by others as it became obvious that the benefits vastly exceed any downsides, and eventually the feds stepped into the coordinating role, but provinces still retain the final say as they can always opt out of that federal system. So, why can't US do the same? For that matter, why shouldn't the states be able to decide for themselves whether they prefer the Canadian model, the German one, or the Swiss one - and then we can see which one works better here? I never got coherent answers to any of those questions.

I've realized this as well. It's probably an "overcorrection" of the perceived average (racially biased) image of a people (which guess what, ends up being prejudiced as well).

I think it's the absoluteness of his statement. He basically said there are no Indians who got their role through merit.

That seems extreme.

That's just a guy making excuses for why he isn't in a position of power himself.


We ban accounts that post like this. Please don't do it again.


(Anecdotal counterevidence:) Founder of Omio, Naren Shaam, has a very diverse company.

I posted a comment a while back about this subject and the funny part was I got flamed by a bunch of US based technical workers, while the Indian techies pretty much agreed with me. Anyways the TLDR was I have a buddy Karthick and he is one of the best developers I know. So I asked him one day about why there was such low quality in India and he explained to me it was misaligned incentives due to the fact that, the fastest path to management is via a tech degree. So India is churning out a bunch of want to be MBA's with tech degrees that are just doing their time in tech to get to management. He said it was a hold over from the cast system and that you are held in more esteem in India when you manage more people.

> He said it was a hold over from the cast system

I was with you until the "cast (sic) system".

> you are held in more esteem in India when you manage more people.

You can replace "India" with literally any country in the world. Managers and bosses always are and always have been held in more esteem than leaf node workers, in every society past and present. It's got nothing to do with the caste system.

Personal anecdote: I caught up with an American friend from school after about 15 years. He worked in some kind of product/project management role. When I told him I was an engineer in the Bay Area he said "Oh, you're just a programmer?" (OK so he wasn't a great friend, and that was the last time I spoke to him...)

> You can replace "India" with literally any country in the world. Managers and bosses always are and always have been held in more esteem than leaf node workers

This is true to a much greater or lesser degree depending on country, though. Here in the US you can be a really senior leaf node software engineer with fancy titles like "Staff" or "Senior Staff" or "Distinguished Fellow" and command tremendous respect and compensation.

That doesn't exist in some other countries. I was talking with an Italian friend once who works at a bank over there as a programmer, and seniority was exactly the same as how many people you manage. It was a contradiction in terms as far as he was concerned to be a senior software engineer if you weren't at least managing a team. The first question he asked when I was talking about my job was "How many people do you manage?", and when I responded zero, he immediately thought I was low level (I was not). Everyone aspires to be a manager over there.

My anecdote isn't exactly the opposite of yours, because in mine it's programmers themselves that are assigning status based on how many people you manage, whereas in your anecdote it's someone in an outgroup.

"Staff" and "Senior staff" and such are only recognized by ingroups. And often you need to be a staff level engineer to even begin managing people in tech.

In most industries that aren't tech, compensation and prestige are directly proportional to how many people you manage. Only in tech can individual senior engineers have impact that justifies the high pay without managing people.

Consultants, lawyers, physicians, engineers, architects, designers, board members... lots of occupations with high status and/or pay without managing people. The 'how many people' you manage metric is just a heuristic, and maybe believed by people stuck in the middle of business hierarchies.

Agree on 'Staff' and 'Senior staff'... military terms that never caught on generally. Not sure why they have started being adopted by some companies... I guess in larger companies people want their hierarchy and pay scales and whatnot.

I'll go by them in order:

> Consultants

A term so generic as to be almost meaningless. It can apply to an Agile coach, an Ivy League fresh grad billed at $1200/hr by McKinsey et al, or a programmer with an LLC and some marketing skills. These all vary widely in prestige.

> lawyers

Ditto. No one is impressed by a poor ambulance chaser or public defender. Judges, senior partners at big law firms, senior corporate counsel, DAs and attorneys general - those are lawyers people generally respect. And they all have authority over people and laws.

> engineers

Depends on where they work and what they do. Engineer at FAANG or a hotshot startup - that's been glamorized by media and entertainment but that's a relatively recent phenomenon. Engineer at a mid-sized auto parts or chemical company - usually associated with pocket protectors and slide rules, but basically just solid pros that take home a solid paycheck.

> physicians

They don't always hire or fire people but they certainly give orders. To patients, nurses, technicians. Physicians have always been respected, in every society across time.

> architects

Same deal as engineers. Plus on significant projects (like a skyscraper, apartment complex, government building etc) there's probably a team of architects that have one or more managers. Someone with an architect's license working for the city planning office in a non-leadership role? Not especially prestigious.

> designers

Are we talking about fashion designers? They don't manage people? Like literally zero people? That's news to me.[1][2][3]

> board members

They can literally vote to fire the boss of bosses - the CEO. And usually they're appointed on the basis of their achievements in business, law, or the industry.

1. https://en.wikipedia.org/wiki/Calvin_Klein

2. https://en.wikipedia.org/wiki/Ralph_Lauren

3. https://en.wikipedia.org/wiki/Donna_Karan

>> Consultants

> A term so generic as to be almost meaningless. It can apply to an Agile coach, an Ivy League fresh grad billed at $1200/hr by McKinsey et al, or a programmer with an LLC and some marketing skills. These all vary widely in prestige.

To add to your point, it is absolutely the case that in places like McKinsey et al., several key measures of the consultants as they make their way up the ladder are directly related to how many people they manage.

Consultants - the term has been diluted. But if you say that you're a consultant, people's imagination takes over. There's a reason why so many people are consultants. It's because generally speaking it's a term that projects high value merit.

Layers - people respect lawyers?

Engineers - we generally have very low respectability, among laypeople.

Not sure why you're being downvoted; this is true in my experience as well.

Hell, I've been (a software developer) in SV for 16 years now and I hadn't heard of the "Staff" title until a few years ago.

Only in tech is this the case - but I don't think that only in tech this necessarily needs to be the case. High impact employees can exist in a wide range of roles, but recent cultural trends have been to push toward commoditization employment so that someone with a different approach is assumed to be a malus rather than fairly evaluated - there are KPIs and if your work style isn't optimized for them you'll flounder in corporate america.

That's only true for a small subset of technology companies.

Outside the tech world it's barely true, and even within the tech world, the vast majority of companies still require you to enter management the moment you've been promoted a couple of times.

Sure it exists outside the tech world. It's the meaning of the word "profession." A senior doctor or senior lawyer is respected, despite being a leaf-node.

"Doctor" is always respected, senior or not, in every society going back to the stone age. It's the nature of the profession. And doctors have authority over people in the workplace - nurses and technicians primarily - even if they don't fire or give out raises.

"Senior lawyer" isn't a thing AFAIK. Law firm partners or senior partners have management roles, or at least, influence, in their firms. Otherwise you're an associate, or in private practice, working for the government, or as corporate counsel (where again, you might manage teams of people). A random lawyer with a small private practice isn't going to command a ton of respect in society generally, even if they do very well financially.

"Senior lawyers" exist—they become judges :)

Err...ok, but again, a judge commands respect because that's a position of authority. They can order people or organizations to do things, take away their property, freedom or even their life. They can literally write the law in some cases.

> I was with you until the "cast (sic) system"

You will have to take this as second hand information as I am not familiar with the relics of the cast system. But as he relayed it to me. When you go on a date with a girl that would be considered to be in a higher social status than yourself, the first thing the father will ask is how many people do you manage. Being a manager seems to provide some mobility in the relics of the system that is left. This is how it was relayed to me.

It's the "caste" system, not the "cast" system. Your friend does seem to have a pretty conservative circle of movement. He's probably talking about arranged marriages, not "dates".

(Am Indian, have gone on plenty of dates without ever meeting anyone's father.)

maybe the explanation is that management level is a replacement for the caste system to measure social status. not much different from western cultures. social status used to be the size of your land and how many people lived on it, now it's the size of your company or your team. the difference is that it is less universal but differs depending on the industry you work in.

I think he was suggesting that the word you were looking for was "caste"

While your points on broader power structures are entirely correct, I can understand why their friend put it that way. There's a natural tendency to attribute the state of your country to its past. The caste system was just the noticeable local manifestation of how societies have tended to structure power the world over.

I've had similar conversations. These guys were pretty open about the fact that they crammed for exams and didn't take undergrad very seriously. People that are in tech for the money is common everywhere, but there is definitely something unique about the Indian experience.

Unusually high number of openly abusive schools and parents.

90% of my class cheated in some form on regular exams until 10th grade. This was known by the management and teachers often hide it. They also increased marks of students by changing their answers lol. Discouraging environment for actual students.


Because education is a business. Metrics such as 90 percentile scored so and so drives admission rates.

why cheat?

Because lack of good parenting, teachers and dysfunctional infra. Most teachers outside of few top schools are "failures" (not literally) in private schools where they are spending their time trying to crack exams for government jobs or getting another degree. They don't care or aren't paid enough.

Parents won't help their kids or take much interest in what they like. They will be pretty thorough when investigating report cards and standardized bullshit metrics that indian schools make (outside of board) but shallow when empathising with their kids.

Tuition is a widely common practice in india which is similar to daycare in practice, I guess. It gives off an effect of your kid working... Whenever someone gets a bad grade, the first thing to do is increase their tuition time. My previous schools had same teachers taking tuition at home and an after school program. You will get questions and stuff that will come in exam by going there. It was public knowledge too. Most schools are shady. I can't remember one where I didn't see some bs going on like messing with paperwork for tax fraud (openly), messing with report cards, exams, board requirements, etc.

Big chunk of parents are not educated or live in poverty. Their kids will come to school and disrupt it for others but what can you do about it?

Separate them and put them into low cost classrooms? Yeah, that happens. Though it usually starts from 8th grade onwards. Until then, everyone is in the same classroom.

I think the biggest problem is we start investing in kids at a later age than we should. All their junior years, no one sets a good bar for them. They won't suddenly change as drastically as some people hope.

That's in line with what I perceive to be the waxing and waning of various degrees in the US. The farther the incentives drift away from selecting for people with sustainable interest and aptitude, more generally maladapted people in the field for the next five to ten years.

I think it's often a self limiting thing because word gets around that there isn't enough brass rings for everyone.

The problem is formal scholarly training and employment demands are 4-8 years dislocated from each other.

Universities do their best to keep a bead on the market (at least, the good ones do), but without medical school-style coordination it's almost impossible not to under- or over-shoot substantially in terms of graduate supply.

I don’t think that this is due to the caste system. I have seen it first hand - used to work in a restaurant flipping burgers with the other guys and as soon as somebody was promoted to shift manager - his demeanor towards other employees would change drastically .

That's also the case to a large extent in the UK, which makes me wonder whether it's a hold-over from the Empire rather than the caste system? I thought castes were more about who you're born as than what you end up doing?

It has nothing to do with caste system. It is that younger people are not supposed to say elders are wrong or oppose them, even if they are clearly wrong. I don't know about other countries but this kind of culture is root of many problems in India.

I remember that comment. I’ve quoted that story a number of times.

Thank you, it is good to hear. You know you put words out there and you don't really know if it contributes any value to anyone or not. I just try to relay my life lessons.

I have noticed this as well, both as a worker and an interviewer. The number of unqualified people of Indian ethnicity that inundate job applications is staggering, and some perform embarrassingly bad in the interview.

That said some of my favorite people to work with (smart, easy to work with) are Indian. It's really a shame that the issues affect perception of everybody. It's a good reminder to me not to judge a book by it's cover, metaphorically speaking.

> Indian ethnicity

Small nit, this is a nationality, not an ethnicity.

Actually in the context of racial discrimination, I think ethnicity is correct. The true nitpick is that it should be “Indian ethnicities”, plural.

true but its like saying African as a ethnicity even African American is pointing to both. there is original regionality to ethnics so to speak. perhaps our terms are at fault here but is still accepted and not negative in a racial context.

> That said some of my favorite people to work with (smart, easy to work with) are Indian. It's really a shame that the issues affect perception of everybody. It's a good reminder to me not to judge a book by it's cover, metaphorically speaking.

I don't even know why race or color would even matter when it comes to considering one's capability to do some engineering job. At the end of the day just work with whoever can get the job done.

Because humans are pattern matchers. We have to strive to eliminate or reduce conscience and subconscious biases to ensure fairness.

I know intelligent and successful people who would never take financial advice from someone with a beard for example.

Edit: maybe an interesting example. I grew up around smart woman and girls. From observation, I “knew” women were smarter than men. I was in college before I heard that some thought that woman were not suited for math. I couldn’t even process that. But people see patterns and extrapolate based on their observations and what they hear, and often start to believe something that does not exist.

> We have to strive to eliminate or reduce conscience and subconscious biases to ensure fairness.

Why? Does fairness serve a business purpose? Are businesses held to be fair to their employees in other circumstances?

What is fair? Perfect proportional representation of the host population? Within what limits? Can we make a heuristic for what's more fair? Should that drive hiring decisions more than other factors?

The way I've come to see it, so-called fair hiring practices are purely a social signal that companies are required, by the market, to hold - and only in the sense that they need to NOT appear to NOT be fair, in terms of bad press.

Other than that, companies don't seem to have any actual obligation to be fair, unless held accountable by some other mechanism (a union, the court of public opinion, government regulations, etc). They will only do so as far as it provides a favourable outlook for the company, and not further. When sweatshop-like conditions are profitable and the attention of the public is elsewhere, for instance, sweatshops you will get. It doesn't matter much if every race is slaving away in there together side by side if they're still slaving away.

Another reading of "We have to strive" is simply that, if we do wish to reduce various biases, it is something we must do consciously. That doing so runs against what's easy, our natural inclination is to extrapolate and generalize.

Deciding what fair means is indeed hard. But most would today agree (I think) that judging someone to be incompetent based on the reputation of those of the same ethnicity is unfair.

> if we do wish to reduce various biases

Again, though, the desire to do this is based entirely on marketing, and not on merit.

> judging someone to be incompetent based on the reputation of those of the same ethnicity is unfair

Sure, but mandatory hiring of people of particular ethnicities in order to boost some arbitrary "diversity quotient" (read: non-white quotient) is potentially just as unfair to other qualified applicants.

I work with exactly 0 black software engineers in NYC office.

I see it as a reflection upon America, rather than a reflection on my company.

The same company has black engineers in London.

When we seek new employees - we had 0 black applicants in NYC over the last 3 years. We have a small percentage in London.

"Fair" can mean a lot of things. If you asked three people to define fairness, you'd get at least three definitions, and I can think of some definitions that would indeed have a business purpose; I can also think of some that wouldn't.

An example of something that would serve a business purpose: widening the potential target market. Of course if your company is producing maternity wear then you probably don't want to aim for a gender-balanced customer base. But in general, increasing the size of your taget market can serve a business purpose.

There's no reason to assume that a diverse (read: non-white) group is required in order to market to a diverse audience. Plenty of 100% Chinese companies manage to market to everyone in America via Amazon etc. every day. Will there be some requirement or even some business advantage to them to hire diversely?

I can't see much practical value for diversity based on skin pigmentation intensity, in software engineering. (There's a good amount of research for gender diversity, though)

There have been studies on the value-add of diversity in the workforce. TL;DR: research "suggests that diverse work environments boost profitability, culture, and public perception.[1]"

1: https://www.purdueglobal.edu/blog/careers/how-does-workplace...

Research that validates the only conclusion you're allowed to publish isn't research I'm going to base my life around. The famous Putnam study on diversity in neighbourhoods is much more realistic:


Society exists to serve people, not businesses. Businesses are a tool to that end, so business purposes are only relevant when they don't run counter to human needs or cause human suffering.

If you want to have good objective judgement you must remove or at least be aware of your biases as much as possible.

What's a bias, versus a well-trained heuristic? Am I to deny a million years of evolution as a pattern-finding organism just to satisfy the political goals of a group of people who do not have the best interests of my own group at heart?

All living things use pattern matching - not just humans - as a surviving mechanism. It allows fast decision making.

Which model do any of us prefer in most situations: one that allows us to be right more than 50% of times done in miliseconds, or one that takes hours/days/weeks (whatever) and allows 95% of good (or fair) decisions?

The appropriate response time depends on what is being decided

When it comes to deciding who I will be working with I would rather take the time (hours/days/weeks) so that that we make a fair (un-baised) decision

As for deciding to whether to evade a baseball being thrown at my head, I would prefer the faster response time. It okay to be biased against fast moving projectiles :-)

Any time you deal with people you need take the time needed to eliminate any biases that are common to many humans

User story: Jane works in HR for $COMPANY. They have 10 places on the graduate scheme this summer, and have already received something like 800 applications. The boss wants a shortlist by Friday - they're going to read each one on the shortlist in detail and make a fair decision, but they're not going to spend half an hour on each one in the 800-pile because that would be 400 person-hours.

Of course, first you throw out the obviously bad ones - anyone who sent a word document when they clearly asked for PDF; anyone who doesn't have an engineering degree etc. etc. That still leaves you with 500.

What do you do? This is I suppose why implicit bias training exists, so you don't go "this one's from India, the last 10 from India couldn't even spell the company name right, reject".

(The next step in the UK is, reject everyone who doesn't have a first-class degree, if that still leaves you with a long enough shortlist. No wonder students are anxious about getting a first!)

Point I'm trying to make: there's situations in hiring where the time you can take is influenced by the volume of applications.

I think the parent was referring to survival instinct. Millions of years of evolution has lead to the need for fast pattern matching to avoid danger.

> Because humans are pattern matchers

Agree, but then you would think that engineers (when it comes to working with other engineers) are a little more rational than the average folks and can go beyond superficial observations.

I would think that engineers would also respect that cognitive operations have a cost just like computer operations.

If a cognitive bias lets you arrive at a conclusion 10 times faster and is right lets say 90 percent of the time, is that strictly worse than being super fair and objective as the thinking pattern you employ? I think if you had a process at your job that is 10 times faster and was what right 99.9 percent of the time you would absolutely be for using that process over the one that reaches a 100 percent accuracy rate but was vastly slower for anything that isn't fatal to your career.

Large parts of society seem to reward thinking fast and making quick decisions, and would prefer a quick decision even if its wrong. We have 2 pressures here. Making the decision quickly, and then making the "correct" decision. Your circumstances will determine which is correct at the time. But saying to always stick to one and avoid the other doesn't seem super rational to me.

You just matched all engineers to a pattern you observed.

That's brilliant! (as is the observation that humans are naturally pattern matchers)

In fact, I would argue that engineers tend to be people with stronger pattern matching capabilities, because that's exactly how most engineering problems are solved.

But these are not 'superficial' observations. People of Indian ethnicity are more likely to be the product of (tier B) Indian educational system (which is based on Brahminical rote memorization), Indian culture (always say yes to your superior), Indian incentive structure ("how many people are you managing?").

The last job I worked at, more than 50% developers on the floor were Indian (like either fresh H1b or intra-company transfers), so I noticed that I would get 'lost' in the crowd. A non-Indian person will immediately notice other non-Indian person, and ignore me. It wasn't their fault because most Indians on my floor never bothered to say 'hi' or 'bless you' or even acknowledge anyone who wasn't Indian. But then, I'd also ignore other 'pattern breaking' Indians (until, like me, they made themselves stand out).

> > Because humans are pattern matchers

> Agree, but then you would think that engineers (when it comes to working with other engineers) are a little more rational than the average folks and can go beyond superficial observations.

You are saying pattern matting is irrational? If one is to apply pattern matching in an absolutely rational way, they would not make abitrary judgements that some traits are/are not superficial. They should just take the fact as is, then make their hypothesis, then prove or disprove it then act upon the result.

Engineers tend to be more empirical and less idealistic, not to mention not uncommonly somewhat autistic.

They are more likely than the average bear to apply Bayesian probability, which comes alarmingly close to confirming stereotypes in most cases.

All in all no-one is beyond bias. Most of interview judgment comes from system 1 thinking. Meaning you feel some way about the candidate. And you only use system 2 to justify what you are feeling. So you use system 2 for cherry picking instead of determining whether candidate is good or not.

That could not have possibly be born out of observing engineers ...

Indeed. Categorization is how the brain works. On purpose or not, if you have two people with the same resume your initial impression of "Steve Smith" is better than your initial impression of "Bubba-Joe Willum Jr."

Maybe it’s not the race but the culture that makes working with them a pleasant experience. And they are also good engineers. From my experience with working with indian engineers they are very agreeable and polite people. Of course it’s a big generality and they have flaws like everybody else

This has racial connotation only because India is mostly populated by brown people. Other than Pakistan and Bangladesh - no other place has a clear majority of what you would call brown people.

That said - Indian cultural quirks definitely play a role in how majority is raised and how they operate. Economic situation and a very clear way to get a well paying job makes people try to get into these fields. IT doesn't have an insane filter like medicine, which is another way to earn a lot in India. Thus you get a lot of people that try to get around the system.

I had two cases happen in India to demonstrate this:

One of developers lied about their qualifications for the previous 3 years. He was supposed to be working for Oracle for 3 years, but we found out that he worked at multiple companies for 3 months at time.

The other one was one of three brothers, but only one of them was somewhat competent and would do the interviews... while the other brothers would actually try to show up for work.

I could not make up this crap.

If you noticed that people with a pimple on the left cheek performed significantly worse in interviews and you had limited time to review candidates, wouldn't you apply more scrutiny to resumes of this type of people? Well, this case is even stronger because there is an intuition at to why people of certain races are more likely to be worse engineers.

Because there is a clear correlation between an amount of blatant lies in an average resume and the country of origin.

I am from India and I think it is because many people try to game the system instead of actually working hard. It is rooted deeply in the education system itself.

That's cultural, historic and economic reality that puts pressure.

I'm in US and despite US having 20%(?) black population, I'm yet to have a black American colleague in engineering.

Something similar happened in the US where numbers of students in CS went up over time. However, academic fraud has not been as big of a problem as it is in India.

An Indian friend of mine said that IIT is good but hardly anyone can get in and the caste system dictates admissions policies anyway so many people try to get engineering degrees from schools with lax standards. The professors are completely unqualified, according to her, and people have to pay more to learn the material from off-campus tutors but not everyone can afford that.

I think this should be the focus is ending academic fraud rather than some of these other issues. That could do a lot of good. Here is a reference to a story I found that corroborates what I was told.[1]


> ...and the caste system dictates admissions policies anyway

Like, officially, in writing? Even if it's informal, as an American it blows my mind that that's still a thing.

It is not the caste based discrimination like you might intuitively perceive.

In history there was a caste system that led to systemic deprivation of education and opportunity to underprivileged castes. So India (few decades back) came up with a reservation system so that people belonging to those castes could get jobs/education/opportunities.

In today's times it's scale is more like racism that you would find in most developed nations.

However after achieving the basic purpose, the reservation system based on caste was never withdrawn. Lots of political parties invested into those vote banks.

Nowadays, the situation is such that many people who get admissions based on the reservation policy are from acceptably well off educated families. There are many people who are relatively poor and financially underprivileged but belong to the upper caste and they cannot get any benefits.

Sounds like you're describing was what Americans call affirmative action ("a reservation system so that people belonging to those castes could get jobs/education/opportunities"). I am not knowledgeable about India's system, but I get the impression that like the one in the US, it is politically/culturally divisive and I would take any comment about it as opinion/preference rather than fact.

It's factual that a policy exists or does not, however one feels about it.

Ah, that is not what I assumed, and rather less surprising.

I was told (if I remember correctly) that discriminated castes get an advantage (or even a certain percentage of seats) at universities in India. I am surprised this could be considered mind blowing, isnt there also affirmative action for college admission in America?

Universities aren't allowed to have racial quotas in the US. They are allowed have affirmative action that is implemented in a fuzzy non-numerical way, but they can't just say "we will admit X students of Y race".

They aren't allowed to have racial quotas anymore, but it was commonly done before the 2003 supreme court ruling that ended the practice.

Racial quotas haven't been allowed since 1978[1]. The 2003 case[2] was about a points-based system, not about racial quotas.

[1] https://en.wikipedia.org/wiki/Regents_of_the_Univ._of_Cal._v...

[2] https://en.wikipedia.org/wiki/Grutter_v._Bollinger

Yes. There is actually a whole Wikipedia entry[1] on it.

The relevant portion:

> For candidates in the general category, successful students must generally score within the top 0.25% or top 0.5% of all students to gain admission to the IITs, whereas SC/ST/OBC candidates must generally score within the top 2% of all students to gain admission to the IITs.

> Currently, reservation of 15%, 7.5% and 27% seats are provided for candidates originating from the SC, ST and OBC communities respectively.

[1]: https://en.wikipedia.org/wiki/Reservation_policy_in_Indian_I...

To be clear, that's affirmative action for people in the lowest castes (not everyone knows what SC etc mean offhand).

TIL that "SC" is the caste formerly known as "untouchables". It does not seem unreasonable to institute some affirmative action for them.

SC/ST were historically the most oppressed. However the OBC[1] designation is heavily diluted and is often handed out to previously well to do communities in exchange of votes.

[1] https://en.wikipedia.org/wiki/Other_Backward_Class

No, it’s formal. Much as there are certain groups in the US that are held to lower standards in the US for purposes of admission to universities and some other opportunities so it is in India. There are reservations for Scheduled Castes and Backward Tribes. If you don’t come from them the grade you need to get into a good college will be higher, much as if you want to get into Harvard it’ll be harder if you’re Li or Nguyen than if you’re Jones or Ramirez.

Honestly the remnants of the caste system are hard to distinguish from "legacy" in America. If you're a Bush or a Kennedy you're going to have an easy time getting into school - in America it's a bit weirder even because buying your way in is generally considered legitimate and culturally approved.

Is it that surprising? We have the exact same system in the States.

Affirmative Action exists today. The Ivies modified its acceptance criteria to "soft" discriminate against Jewish Americans in the 50s and 60s. There are arguments that this is indeed the case for Asian Americans today.

The soft discrimination actually happened much earlier than that. I think it was happening in the 20s and 30s already.

Officially - yes. It's affirmative action. About 40% or more of the seats are reserved for students from a "lower caste".

In this case, the caste system based admission is equivalent to affirmative action in US universities

Well, sort of. Explicit quotas used to be a thing in American universities until Bakke in 1978, and racial "points" systems were ended in 2003 with Grutter. Notably these Supreme Court decisions actively endorsed Affirmative action in general, they just implied you couldn't be too explicit about how you were using it.

https://en.wikipedia.org/wiki/Regents_of_the_Univ._of_Cal._v... https://en.wikipedia.org/wiki/Grutter_v._Bollinger

The proportions would be different. Minorities in US are, well, minorities - but if Wikipedia is to be believed, the category that is targeted for affirmative action in India constitutes about 40% of the entire population.

> Even if it's informal, as an American it blows my mind that that's still a thing.

In past times (and by that I mean XX century - before WWII usually) anti-semitism was pretty harsh, and official. Even on university admissions in the US.

I mean it's literally the same thing as affirmative action.

Yes there are laws about disadvantaged Castes I believe and caste discrimination goes on amongst communities outside India.


This is pretty harsh criticism. People perceive the world in the form that they experienced it through life. There's probably very few people in the world who are familiar with every culture and the nuances with it. You should encourage people to learn more, not attempt to make them feel ashamed that they didn't know it already.

> you should encourage people to learn more

I think you stopped reading after the first sentence because encouragement is exactly what I did. And I stand by the comment about naïveté.

I'll mention that from experience. IIT is a mixed bag. I've seen some really good people, but a lot of them were just terrible at coding as well.

I also have a problem with calling developers engineers. Heck, I would be offended if someone called me a developer rather than a programmer.

But unfortunately even the degrees themselves become less significant. A PhD in mathematics used to mean more than it does now. But another point is that with global literacy going up, scarse skills are now not based on the amount of people with certain degrees, but rather with inherent abilities that are uncommon. (Take Fortran coders as an example.)

> I also have a problem with calling developers engineers.

I held this point of view for a long time but, after lurking at r/engineering, I've learned that their jobs are (depressingly) similar to ours. I.e. it's almost never deriving things from first principles, but rather trying to quickly bolt together a solution out of pieces looked up at different vendors' catalogs. Most engineers don't even remember the basic equations they have learned at university.

> Heck, I would be offended if someone called me a developer rather than a programmer.

It depends on the specific job, but currently, I can spend 30 minutes changing one line of code followed by one week of deploying, testing it, making sure the configs are all right etc. So that's 30 minutes of programming followed by one week of "installing dishwashers" (as the joke on the team goes). Lately, I see myself more of a software configurator than creator (my nominal job title is a backend web developer).

The new "software engineer" is just a software assembly line worker. I guess the same goes for other engineers. I would imagine the quality of software engineer will get worse over time as it becomes easier to assemble software from an assortment of black boxes.

An assembly line worker just puts parts together - they don't understand why those particular parts have to go together in that particular way to achieve the desired result. Engineer is the person who does.

And engineers have always been assembling boxes together. At first those were the most basic components, like levers. Then we figured out about standardized parts and interfaces, and components got a lot less basic. But, fundamentally, what's the difference between an engineer fitting two cogs together, and an engineer fitting two pieces of electronics?

Is it getting easier though? Did you try "modern" web development lately? Good luck piecing together a working website...

It is easier. If you wanted to create a web application from the dotcom era, you could probably knock it out faster by one or two orders of magnitude. It will probably look neater too, and you won't spend days or months tuning it so it will look decent in IE. We even have amazing CSS capabilities now.

If you wanted to create something that's better than the pages we had in the Geocities era, you can do that in 5 minutes (download some static page generator, add a theme and voila).

When it was unveiled, the GMail frontend was a remarkable feat of engineering. Nowadays? Polishing to that extent (also scaling, etc) will take time, but creating a knockoff UI is no longer a revolutionary job. Most web developers would be able to single-handedly replicate the basic functionality ('ajax' and lots of client side javascript are no longer arcane).

As web development progressed, so did expectations.

well, so if requirements were easier back then you can't really say things got easier. The stack got harder. you used to be able to get by with asp.net / php and that's it. Yes, you would throw files into ftp and there weren't any stackoverflow or frameworks. But still, the amount of knowledge you needed to keep up was way less than what we have today. My point: 20 years ago you could learn php and make good money. Nowadays you can't get by without a convoluted front end stack as well, which kinda doubles the amount of knowledge you need to carry.

You can still do simple stuff, it's not hard: just don't use the complex garbage :)

I wrote a web app the other day with vanilla Python, it doesn't do much (it's a tasks app for my wife and I), but it does it's job, and in one file even! It doesn't use fancy front end stuff, just HTML template strings and some links that send CRUD ops to the server, then that saves the data in a big text file. It uses CSS to make it look nice.

I bet I could get a hundred people using it without edits, and it took a few hours. With a proper database and server, it would support thousands easily.

We all do what our managers / tech leads / architects tell us to do in the end of the day. Even if you have a lot of say where you work, eventually you will join a company with an established stack over which you'll have little control. If you're going to do web development there's zero chance you can keep this up forever unless you're working for yourself. Don't get me wrong, I wish the industry would do more of what you're describing, unfortunately it's just not happening.

Sounds like your job could use devops with some deployment stack.

I know the basics of chef/ansible etc but I much prefer traditional dev.

We have top-notch devops stack, but "thanks" to relying on microservices, a lot of changes in software require changing something in the devops part as well, which takes much longer than writing the software change.

I recently tried nix package manager and I gotta say - if your pain point is devops it could take away a sizeable chunk of problems. Steep learning curve though.

I prefer the term "software engineer" for a reason I haven't seen yet in this thread: clarity when speaking to people in other industries.

Among many of the people I talk to on a regular basis, if I told them I was a "developer" they would assume that I was a real estate developer.

If I told them I was a "programmer" it would be a little clearer, but before I moved into software I worked in the events industry for a few years, where "programmer" means "one who develops event programming."

In practice, I could append "software" in front of either "programmer" or "developer" to provide that clarity, but "software engineer" seems to be more common, and to me feels like it more adequately covers the totality of my job, which is as much about measuring, planning, and communicating as it is about producing code.

I think part of the discomfort is that there is no exam that software engineers have to pass (other than a few states) unlike real engineering professions. I suspect and I suspect many others suspect that a large percentage would not actually be able pass a meaningful exam.

However passing such an exam would probably only be partly correlated to success in the field. Part of this is because exams are imperfect, part because success in the field is not dependent on engineering skill, and part is because the tech field’s success is based on finding/creating/replacing/owning (new) markets rather than pure engineering.

If software is much better than what was there before, even shoddy software engineering will be superior to the existing solutions.

The exams and credentials part is certainly murky. One could argue we make it worse in tech. Among the certifications I hold is at least one with "certified engineer" in the title (RHCE), but that's hardly only ambiguous one, with "engineer" showing up in all sorts of vendor and third-party certs and "architect" and "auditor" also finding their way into many others.

Are those phrases misleading? I don't know. I certainly feel like I worked pretty hard to earn and maintain the certifications I hold, but I can't compare the rigour and level of effort to licensure, because that's not required of me for what I do.

I also know that there are quite a few "certifications" out there that aren't rigorous at all, that are basically multiple-choice exams you can cram for without actually learning anything. I've never bothered going after a CompTIA certification for that reason.

It's a tough problem. On one hand, I despise artificial barriers to entry on principle. On the other hand, being able to understand and trust a person's base level of understanding and competence does have value.

The solution IMHO is to perform your own test. It is hard to scale unless you have some superior filter or are a magnet of some sort (back channel references or your company is really hot).

The funny thing is, to be a professional engineer in Canada, the exam you take is more of an ethics and law exam rather than a skills exam. You prove that you've worked for four years or more under a P.Eng and do that exam and you've got your cert.

I immigrated into the US (from Canada) to work for a tech company, and a piece of advice I got from our legal dept was: Whenever you cross the border and the guard asks you what your job is, answer "Software Engineer". IIRC it was important I answer this correctly because that's the role that I was permitted to work for (under a TN, later a H1B; I'm now naturalized). Saying "programmer" or "developer" may have been fine (I don't know), but I do recall some emphasis on getting this right.

It was important because there were specific job requirements that had to be met in order to qualify for a TN visa. The expertise you were expected to be bringing in as a Software Engineer was architectural level knowledge of coding.

The TN visa could be revoked at any time which is why you want to be really clear when crossing the border. I worked for Microsoft and they recommended that I bring my full job description package and lawyer's letter every time I crossed the border

The best part was when I had to go to the border to apply for the TN visa. The poor guy had a list of questions to ask and clearly had no idea what any of it meant. "And will you be doing any <...long, dramatic pause> programming?"

Wait... so in your mind there is a distinct difference between a developer, programmer, and engineer? Because in my mind, they are all the same.

How are they different, in your mind?

In Canada you can't call yourself an engineer unless you studied engineering in university and went through licensing.

It's not really enforced in tech, but for me the definition is someone who at the minimum studied an engineering degree. Calling yourself an engineer when you studied Computer Science is a bit odd to me.

Lots of CS programs in the US are accredited by ABET [1] (our professional engineering standards board) and graduates from said programs are eligible to take the PE exam.

I call myself an engineer and is anyone has a problem with that, I just point out that I graduated from an engineering college and am eligible to become a PE, and will, should the world ever decide that's an important credential for building software. I work with tons of Mechanical and Aeronautical engineers, none of whom seem to take any issue with my holding a title of engineer.

[1] https://www.softwareengineerinsider.com/abet/abet-computer-s...

That list has some rather notable omissions. Stanford isn’t on there, nor is CMU, nor any of the Ivies besides UPenn.

This frustrates me because ABET degrees are required for a bunch of government jobs (and the patent bar). While it might make sense for certain fields, it’s silly to gate CS jobs on a credential that the field evidentially doesn’t take seriously.

Accreditation is weird. I lived with some engineers at university and they had a huge range of interesting courses they could choose. In physics we had mostly core modules and a smattering of electives.

I asked whether they could take the courses they liked (eg mix a bit of civil, mechanical and electrical) and they said in theory they could, in practice nobody does because your degree wouldn't be accredited. And no accredited degree, no job in engineering. I think for civil it made a bigger difference than the others.

I always thought that was quite sad, since the mathematicians did whatever the hell they wanted between maths, engineering, CS and physics and still ended up with a maths degree.

I'm fully OK with the distinction because of the licensing process and strict requirements on engineer-certified work, but as someone with a CS degree from a Canadian university I can tell you with confidence that my friends in the software engineering pathway had probably 90% the same course load as I did.

Really the only major difference at our university (IMO) was that they had a capstone project they did as a group and took two semesters, while mine was done individually and took one semester.

In my experience at UVic (6 months fresh) the CS students did more theory of computation, and SEng had formal requirements and specification writing, engineering economics, and project management courses that CS did not. And also yes, the capstone. So, those are the features which distinguish software big-E iron-ring engineering from computer science, in my mind.

e: and yes, cf. the sibling comment, some of those courses were mandatory curricula set by The Professional Body Formerly Known As APEGBC (I forget what they're called now).

The course load isn't the critical aspect, though, is it?

Licensing typically means professional standards set by a licensing body, continuing education requirements, insurance/liability rules, etc.

Absolutely, not disputing that. I just took offense to the "Calling yourself an engineer when you studied Computer Science is a bit odd to me" statement. I don't think the degree makes the difference, the licensing does.

I don't believe you would be able to get the licensing without the degree so saying the degree doesn't make any difference doesn't seem accurate.

I'm suspicious of any attempt to place so much importance on the name of a degree. I'm not even convinced there's a meaningful distinction that can be made between the two. Computer science topics like finite state machines are central to software engineering, and engineering ideas around correctness, safety and reliability form the basis of a lot of CS research.

The main difference is that engineers have a code of ethics they're expected to uphold, with the threat of taking away your certification if you don't.

Note that licencing is country-specific issue. Where i live 'engineer' is just an academic degree on the same level as 'master', just issued by technical university instead of 'general' university.

Is that a common thing in the tech world? Regardless, I'm not sure what that has to do with the name of the degree one got.

In Sweden, engineer is also a protected title, but computer science is aligned perfectly with software engineer because engineer basically says 3-5 years of "practical math of that field". Learning Python would not be "practical math", learning the O notation and linear algebra would.

Most US universities from what I've seen don't offer a different track for software engineering vs computer science, it's all under computer science. Most universities also have computer science in the college of engineering.

I think the issue is just university programs aren't granular enough.

Why do you think Computer Science is not "engineering" aka a scientist with thumbs.

Well, i see relation between compsci and software engineering similar to relation between physics and mechanical engineering, or biology and medicine.

As explained to me by an engineer: the distinct lack of statics, dynamics, and thermodynamics.

Then (most) electrical engineers are not engineers either.

Computer Science is an "engineering degree" at many universities. The distinction of which school a degree belongs to at a university is basically arbitrary.

I am definitely against the idea of licensing or professional organizations gating who gets to call themselves something. I think it's OK for an organization to invent their OWN term and branding, but they cannot take a generic word like 'engineering' and add regulatory capture on top of it. For instance, if IEEE or ACM wanted to license programmers, they are free to come up with a process for licensing with a title like "IEEE Software Engineer". The market can decide if that bears any value. But that value has to stand on its own, and not rely on government intervention granting those organizations a monopoly over the term 'engineer'.

I always thought calling programmers engineers was very weird until I watched this great talk:

Real Software Engineering, Glenn Vanderburg, Lone Star Ruby 2010 https://www.youtube.com/watch?v=NP9AIUT9nos

which explains what various kinds of engineers actually do. Not at all dry and boring like it might sound! From the YouTube blurb:

Software engineering as it's taught in universities simply doesn't work. It doesn't produce software systems of high quality, and it doesn't produce them for low cost. Sometimes, even when practiced rigorously, it doesn't produce systems at all. That's odd, because in every other field, the term "engineering" is reserved for methods that work. What then, does real software engineering look like?

Sounds like some of the cynicism behind Dijkstra's bit on software engineering[0]

"A number of these phenomena have been bundled under the name "Software Engineering". As economics is known as "The Miserable Science", software engineering should be known as "The Doomed Discipline", doomed because it cannot even approach its goal since its goal is self-contradictory. Software engineering, of course, presents itself as another worthy cause, but that is eyewash: if you carefully read its literature and analyse what its devotees actually do, you will discover that software engineering has accepted as its charter "How to program if you cannot."."

[0]https://www.cs.utexas.edu/users/EWD/transcriptions/EWD10xx/E... Edsger W. Dijkstra's "On the cruelty of really teaching computing science"

I was very sceptical too, but when I watched it, it all sounded very common-sensical.

Really I recall working for one on the big civil consultancies and we had one of our bridges fall of its supports once.

And lets not mention the new airport in Berlin (or the NYC tube lines) in the context of low cost.

> Really I recall working for one on the big civil consultancies and we had one of our bridges fall of its supports once.

> And lets not mention the new airport in Berlin (or the NYC tube lines) in the context of low cost.

That seems to me a low-quality comment, sorry. The lack of punctuation and the spelling mistakes made it hard to parse, and until you flesh it out more, I'm not sure precisely what point you were trying to make. And more mentioning, less "lets not mention"-ing, please.

its two sentences mate ok first one it should be one of - I am dyslexic go sue me

Engineers are typically required to have a license, have agreed to some code of ethics, and typically will have a membership in a professional organization. Like mechanical engineers and the SME, or electronic engineers and the IEEE.

True in the US, not necessarily true elsewhere.

IMO, developer and programmer are the same.

Engineer implies a higher level of skill WRT establishing and following processes designed to minimize risk. A software engineer, like their mechanical or civil equivalents, has a strong sense of duty WRT building things that are useful, safe, reproducible, etc.

No doubt the line is gray. But, your stereotypical web app developer (failing fast while chasing a unicorn) is not an engineer.

In the real world, I'd expect Boeing to employ many software engineers [insert 737 Max joke here]. Google and Apple would employ a mix of engineers and developers. And a company that builds CRUD apps on contract would be almost exclusively developers.

All of this ignores the licensed engineer's opinion, which is often that none of us are engineers because we don't have to pass a licensing exam. And often don't even have to pass a particularly rigorous academic program.

No doubt the line is gray. But, your stereotypical web app developer (failing fast while chasing a unicorn) is not an engineer.

That could just as easily describe Google and it is full of “smart people” (tm)

And I wouldn't call those developers engineers either. I said as much in the next line of my comment...

Google and Apple would employ a mix of engineers and developers.

So, whom will you exactly call an engineer?

A person with degree or a person with a specific set of skills? If skills, then can you enumerate few of them?

Generally, any licensed engineer (PE or non-US equivalent) would be an engineer. That usually means a proof of skills via professional exam. Somebody could have an engineering degree, but not be a practicing engineer at all.

Of course, there is no PE for software. So, within our industry, it's a lot more squishy. There's a bit of "I know it when I see it" here...

If you're building complex systems with an eye for reliability and/or safety, you might be an engineer.

If you're just building a business/consumer app, using infrastructure and tooling that somebody else built and maintains, you might not be an engineer.

With all that said, as a hiring manager, I'm not going to be hung up on what title you held at a previous job, as long as you appear capable of doing the job now. And my career has mostly been on the "just a developer" side of the line - there's nothing wrong with that. I'm simply not building software that has massive negative repercussions if I get it wrong (beyond impact on my employer's bottom line).

> All of this ignores the licensed engineer's opinion, which is often that none of us are engineers because we don't have to pass a licensing exam. And often don't even have to pass a particularly rigorous academic program.

Also, we're not putting our licenses/careers on the line by signing off on software releases. As someone with a degree in Mechanical Engineering (but not a licensed engineer) working as a developer, I think the key difference is the accountability and incentives.

Avionics software and some medical devices do have near-Engineering cultures and practices, but a lot of software would look much different if we had real Software Engineering. Half the IoT malware magnets sold wouldn't ship if someone had to put their professional license on the line with every firmware sign-off.

Not all software would need a practicing Engineer certifying that standardized releases, just like you probably don't need a structural engineer to sign off on your patio expansion or treehouse.

Steam boiler explosions very common in the U.S. (and around the world) until we started requiring licenses to design them with serious consequences for neglecting best practices and procedures. It's one thing to bet your company's reputation and move on to somewhere else if the company fails, but quite another to set aside the corporate veil and be personally responsible.

For a look at what an Engineering-like system would look like, a good friend lives in Vienna, Austria and went to church with Joseph Mangan. [0][1] The short version of the story is that airliner air pressure control valves have three positions: (1) closed, (2) slowly bleed pressure, and (3) wide open to equalize pressure on the ground and better ventilate the cabin. Older designs used separate motors for the two different open positions. Mangan was working for an Airbus subcontractor, writing the firmware for a valve that saved weight and shifted complexity from the mechanical design to firmware by using a single motor. From the closed position, it spun the motor one way to open the valve a small amount, and spun the other way to open the valve a large amount. If the firmware were to malfunction while closing the value, it could turn the motor too far and rapidly depressurize the cabin. In order for the subcontractor to ship the product, Mangan had to sign off that a whole bunch of testing and best practices had been followed. Best practices hadn't been followed, he refused to sign off, and his manager faked his signature. (In particular, one of the required standards was that the first thing the firmware does is initialize the processor's interrupt vector to point to actual interrupt handlers. This wasn't the case.) Mangan ended up stealing a bunch of internal documents and posting them online at great personal cost in order to force the company to follow procedures. In the end, after long court battles, Mangan continued to work on certification of the valve firmware, and he eventually signed off on it once it had really met all applicable standards and he was convinced it was safe.

[0] https://en.wikipedia.org/wiki/Joseph_Mangan

[1] https://www.telegraph.co.uk/finance/2923861/Airbus-whistlebl...

Engineer: Someone qualified with a B Eng or equivalent. In some countries this requires a masters level as well.

Programmer: A person who writes computer programs. I would personally also imply that the programs are typically not deployment of other programs, but this is my own view and not a standard definition. (Actually all of these are not standard definitions. At least, not anymore.)

Developer: A web developer; A person who writes or deploys applications. In the web era I guess most developers have some inherent focus on the internet as a client interface.

I would also add:

Hacker: A person who likes to probe things until nothing jumps out anymore. (These days people call this a White Hat.)

Cracker: A person who likes to probe things until nothing jumps out anymore. Then they probe some more where they really should not and the police get uneasy. (These days called a Black Hat.)

"hacker"/"cracker" are terms only used/understood with nuance in the tech community.

For the non-tech community:

hacker = person committing computer crimes (black hat)

cracker = a tasty snack (or, if you are in the American South, a contemptuous term for a white person)

tinkerer = someone who tinkers around with stuff (what tech community traditionally called hacker as in hacker news)

The top two are wrong.

The concrete definitions are:

Hacker: A programmer; someone who embodies the spirit of the programmer's way of thinking

Cracker: A programmer that commits crimes by illegally breaking in to systems.

A programmer writes programs, but a developer writes applications? Really odd line to draw in the sand.

If I build an iOS app that streams video to a webpage, am I developer or a programmer?

A developer is a type of programmer.

In my experience most people use them interchangeably with no distinction between them. The only time I've seen anyone show disdain for one term vs another is here on HN.

I've never cared what people refer to me as, and I've never seen anyone voice a preference for it among people I've interacted with.

I call myself a Software Engineer, because pretty much every job title I've had has used that term.

Truth be told, a lot of people with engineering degrees or titles are not doing any real quantitative engineering. Probably some sort of 80 20 rule in any field. Most "engineering" is just organizing and arranging things, fitting building blocks together. A lot of engineers stay "at the bench" just long enough to go into management. The people who keep their quantitative skills end up getting all of that kind of work.

Where did the term "software engineer" originate?

The only anecdotal observation I had is that people in nontech, non SV companies use the term "developer". People in SV style tech companies use the term "engineer". YMMV.

The line is blurring though, as I see the term "engineer" becoming more common in nontech companies too. Just like how leetcode interviews are spreading too.

Back in about 1970, various people realized that writing code was not the cakewalk in the park that everyone (who did electrical or mechanical engineering) thought it would be. See "software crisis".

They decided that "we would have to get serious" about this whole software production thing. Some people like C.A.R. Hoare and Edsger Dijkstra said something to the effect of "formal logic..." to which the reply was, "Hol' up, there. That's too hard." They then assumed the term "software engineering" and went off in the '70s, '80s, and '90s to develop stuff like UML and the software engineeing lifecycle requirements -> code -> testing -> acceptance V-thing.

For the cynical computer science programmery-type person such as myself, the end result seems to have been the software engineering degree, sort of a lite CS degree (just enough to be employable) with more project management and what-not. At least it's more comprehensive than information technology degrees.

Not the person you responded to, but my $0.02.

Developer: codes websites and apps.

Programmer: writes computer code. Encompasses developers.

Engineer: builds bridges, rockets, cars, missiles, smart tvs, gaming consoles, computers, power stations, electric infrastructure, water treatment plants, etc.

Developer: builds subdivisions and "develops" real estate.

Related: I've come across a handful of programmers that describe themselves as "contractors". So you hang drywall and install toilets?

You're a contractor if you work on contract. Just as you're a consultant if you consult.

(I'm most comfortable with "developer" because that corresponds most closely to what what I do feels like. I don't spend so much of my time actually programming, but very little in software is engineering-like)

Designs bridges :-) its the navvys that build them

The same argument used to call a programmer an engineer could be applied to anyone that writes for a living, any doctor, any lawyer, well pretty much anyone. We're all "engineers" unless we're doing something completely mechanical.

According to the dictionary, an "engineer" is a person who designs, builds, or maintains engines, machines, or public works.

A computer is a physical machine that runs programs which are encoded digitally on physical hardware (memory).

I could see an argument for considering a computer program to be an engineered "machine" that runs on a turing-complete computational platform. Just because a computer program is digital doesn't mean that it's not an engineered mechanism. In fact, early computer programs did run on physical hardware in a physically mechanical manner.

A doctor or lawer, on the other hand, is not building any type of machination. They are diagnosing patients and having arguments with judges. What exactly are they engineering?

> According to the dictionary, an "engineer" is a person who designs, builds, or maintains engines, machines, or public works.

That's exactly the point. Programmers write programs. They don't design engines, machines, or public works. Programmers are excluded from the very definition you're quoting.

If you want to expand the definition to include the application of scientific methods to solve a problem, so that it includes someone that creates a Javascript single page web app, there's no way to exclude those other professions. Programs are not machines by any conventional use of the term.


You can become a licensed software engineer

"NCEES discontinued the PE Software exam after April 2019."

True. Looks like only 81 people took it in 5 years. IEEE also seems to offer a certification.

In any case, software engineering seems to be considered a legitimate engineering discipline.

They're considered the same nowadays mostly because they've been doing overlapping jobs. Even worse, 'entrepreneur' is something that tells me absolutely nothing concrete about what the guy does.

But to come to your point, in my mind - an engineer is the one who designs the software, a programmer is the one who actually writes good code to make that design a reality, and a developer is a blanket term for someone who does both (or more) jobs.

But according to the dictionary, and engineer is a person who designs, builds, or maintains engines/machines/public works.

An engineer isn't just someone who designs things... but also someone who builds and maintains them.

Wouldn't that mean that even a lowly programmer who is just simply maintaining code is also an engineer?

To me, those are roles that describe different aspects of software creation. Depending on the job, those roles are needed in different proportions.

Engineers apply math to create systems. Without Newton and his math there wouldn't be engineers or the other way round: engineers are those who create the stuff that is only possible with Newton's math.

Since only few software needs math to that degree, rarely any software is developed by software engineers.

Software developers on the other hand are like real estate developers. They don't build walls, they don't do structural analysis. Instead they combine systems. Unlike real estate developers, they mostly do the plumbing by themselves.

Programmers are to engineers what words (Greek: grams) are to math. They focus on the language and care about expressing ideas in program code.

Then there are also software designers and architects who care about the overall system structure.

> Software developers on the other hand are like real estate developers. They don't build walls, they don't do structural analysis. Instead they combine systems. Unlike real estate developers, they mostly do the plumbing by themselves.

I like this analogy, because it confirms my personal biases/discomfort about web and app developing falling under the same umbrella of "engineering" as nuclear reactor design, missile guidance, and the worldwide chemical industry.

However, to advocate against my biases, in my field (ChemE), most of the fundamental work has been done. Very few BS graduates in chemical engineering will design a distillation column or a chemical reactor. Again, most of the basic science and engineering has been figured out long ago (which is why most research ChemE looks more like chemical physics, molecular/systems biology, and materials science than reactors and unit operations).

So, to an approximation, a chemical engineer won't "build" something. They'll stitch together components that were figured out a century ago. In fact, this was the entire point of "unit operations" -- black boxes that can be represented as a functional transformation on their inputs to produce outputs, and can be solved, quasi-linearly, to estimate the overall inputs and outputs of a chemical process.

In that case, by the same analogy, they wouldn't be "chemical process engineers", but "chemical process developers". Yet I wouldn't suggest a chemical engineer who pulls correlations out of Perry's isn't really an "engineer", so with critical review, it's hard for me to justify a believe that somebody who stitches together APIs for a living isn't equivalently an engineer.

[Edit: a relevant xkcd: https://xkcd.com/1988/ -- Most engineering doesn't seem to be that different]

My title is "software engineer".

I don't have an engineering degree, or even a CS degree.

I feel pretty uncomfortable calling myself an engineer since it seems to carry a certain weight of responsibility, but seeing as the title was bestowed upon me by my work place, I'll continue using it.

IMO the designations are meaningless until there is a real standard in place for "software engineer" and what it entails (in the US at least).

I refer to myself as a "programmer" or "developer", but I use them interchangeably.

Anyone putting any real weight on the title is splitting hairs.

I feel the same way and try to say "software developer" when I can, though, same as you, my official job title has "engineer" in it.

Of course, I also see titles like "Customer Success Engineer" and "Technical Support Engineer", which are just as, if not more, ridiculous.

I agree, I tend not to call myself an engineer because I don't have a PE license and never took a PE exam (though at one point I almost took the PE exam for electrical engineering). However, I was using the terminology of the article.

On a side note, when people ask what my job is, I usually say "programmer" or "software developer". For some reason I just feel uncomfortable calling myself an "engineer", I think I find it is just a bit pretentious.

I think you're right, it just feels a little wrong to claim a title so easily when others work hard in a specific practise to earn it and have standards designated by law for it.

Or know the right people - certainly in the UK its who you know not what you know.

It's funny, I actually have an undergraduate and graduate degree in engineering - but not software engineering - and I work as a software engineer.

Yet I tell everyone that I'm a programmer/developer. To me, having seen what goes for engineering in other fields, I feel like a small subset of engineering jobs in non-software fields is true engineering. To me, that bar is inventing something worth patenting. I'd say its an even smaller subset in software.

The thing is, I wouldn't say it the highest value work is the stuff that is true engineering. Actually implementing ideas is so much more value adding and difficult in my opinion. Execution and front lines gritty work is incredibly undervalued in every industry. So I prefer to go by developer because I take more pride in that part.

Depends where one comes from.

I have no issue calling myself engineer, because I have a degree in Informatics Engineering and in Portugal it is a professional title validated by the Engineers Organization and all universities must have a green light to offer such degrees.

What I have an issue with, is developers feeling like calling themselves "engineer" after a six months bootcamp, or not having any kind of engineering degree to start with.

I have a mechanical engineering BS, but I work as a "software engineer". None of my engineering friends in college had a problem with "software engineer" as a title.

Pretending that engineer is a restricted title does not match the reality of the world today, and is unnecessary at best and creates miscommunication at worst. Language evolves and certain words become more lax and widely applied. We can prevent it in cases that are sufficiently technical (Zoom does not have E2EE, that's a blatant lie), but getting the world to use "literally" as it was originally defined is no longer feasible IMO.

>I also have a problem with calling developers engineers.

Well, I for one am both a developer and an engineer. I have a B. Eng (equivalent) degree in ICT and I work as a full-stack dev. I don't really have a problem with using either "developer" or "software engineer" to describe myself.

> scarse skills are now not based on the amount of people with certain degrees, but rather with inherent abilities that are uncommon. (Take Fortran coders as an example.)

Soft skills and people skills are also scarce skills, in my experience. You can always teach a monkey a new trick (you can always teach a fresh looking young man to program in Python or to solve a differential equation), but you can't as easily teach them to: communicate in a professional manner, talk like a professional to other professionals (both people above you and people below you), write clearly, concisely, and without grammatical or orthographical mistakes, sell yourself or your product, etc.

The geeks will not inherit the Earth. Socially sophisticated people will inherit the Earth.

Adequate comment for the user name :)

I hesitate to label that "racist". Developing a feeling from interviewing engineers trained in India or China that they're generally not competent is not equivalent to feeling they're inherently stupid or bad people. They just came through a crummy education system.

I agree, as far as that. But it's racist to overgeneralize that feeling to ethnic Indians or Chinese who did not go through that system.

It's not helped by the Indian consulting sweatshops.

I didn't have any particular prejudices about Indians before I started dealing with Tata and Cognizant and Infosys and Cap-Gemini and the ATT/IBM/Oracle Global Services divisions, but afterwards, it's just hard. You get to where you just expect dishonesty and incompetence and disorganization and abusive behavior as the default.

I was going to say the solution is to raise the bar for software engineers, but it seems the problem here is the culture around prestige and money which has prompted millions of people to go after programming careers. It's not easy to change culture.

Still I think there should be some needed post-grad accreditation for software engineers if they want to actually be called engineers.

> the problem here is the culture around prestige and money

Everywhere in the world people flock to careers with prestige and money. Chasing cash in a developing country makes even more sense because being poor there sucks even worse than being poor in a developed country.

> there should be some needed post-grad accreditation for software engineers

Which will depreciate just as fast for the same reason.

Not necessarily if it's challenging enough. Based on CS/SWE knowledge and requiring a lot of focused effort. Not a requirement to create software professionally, but a requirement to be a "Software Engineer".

This would reduce the need for crazy interviews for those that have passed it, since it proves a level of competence above scraping by for a CS degree, etc! Maybe you need a few years of real work experience to have a chance at passing the Software Engineer accreditation. Just like if you have a long work history at GoogAmaFaceSoft, it's assumed you're already pretty capable.

Not necessarily. Most gatekeeping institutions outside of education works fairly well. The Bar, the AMA, PE exams, etc.

> Still I think there should be some needed post-grad accreditation for software engineers if they want to actually be called engineers.

That's just the opposite of what works. I personally find looking at github or whatever personal project the person had to be the best indicator of whether he/she actually liked/is good at programming - for someone coming out of school or claiming little/no experience otherwise.

> but it possibly creates unintentional racial bias in interviewers because the sheer volume of crappy engineers being churned out from universities has preconditioned you to think all engineers from there are crappy

You can't blame interviewers being racist on the bad actions of some university. They have to address their own racism themselves.

“You can’t blame cops for shooting innocent minorities. You have to blame guilty minorities.”

Yes, you always blame the racists for being racists.

Edit: instead of deleting my (incorrect) parsing of the parent poster, I’ll leave this here and accept my well deserved lashings and downvotes...

I think you're misinterpreting his statement. I think he's saying that the actions of the university are not an excuse.

You are correct. See edit.

That hasn’t been my experience.

Biggest predictor for anything is past experience, and understanding what bad habits people pick up in different places and roles — your interview needs to look for that.

End of the day, people are snobs about education, etc. Some companies just won’t deal with you if you didn’t go to a school on the happy list.

Let me just nod in the direction of stackoverflow and how it developed with regards to quality of content ...

I didn't check in for a bit of time, but the homework questions are still quickly closed and marked right?

"sheer volume of crappy engineers being churned out from"

This has been a problem my entire career. Long before China, India, Vietnam, etc entered the fight.

Credentials are just one signal in the torrent of noise.

The article is about the education of engineers in the country of India. The vast majority of Indians working in engineering in the US were born and raised in the US, or at the very least educated here. Ethnically Indian people in the US are disproportionately represented in the upper levels of tech. Anybody who can't recognize this has only themselves to blame.

Which part of the parent comment are you responding to? I'm afraid I don't see how your comment follows.

> And I hate to say it... but it possibly creates unintentional racial bias in interviewers

GP is trying justify racism by interviewers when the people being interviewed and the people mentioned in the article are two distinct groups. This is HN so you can't just say "don't be racist", but even from a logical point of view this doesn't make any sense. How does perceived poor performance of one group justify discrimination of another unrelated high performing group.

This is a well written article. For decades, the Indian society has tried to use engineering (along with law, medicine and IAS) as a template to success. Given the population numbers, it was bound to break sooner or later.

As an Indian CompSci graduate, I am excited for this bust to happen as soon as possible. Most people I know did not like studying computer science, are absolutely unhappy with their worklife and want to get out of it as fast as possible. Out of the 700+ in my graduating class of Computer Science, less than 70-80 are still associated with computers in some for or manner. Most fucked off to other fields, predominantly MBA. I hear similar stories from other Tier 2/3 institutions.

I can't wait for Indians to realize just how much easier it is to get employed today if you are willing to let go of the traditional path. Internet has unlocked so much opportunity and after 2016, pretty much all barriers to internet access have been lowered as much as possible. All you need is a computing device like a phone or laptop to get started. Doesn't work for the extremely poor still, but the opportunity for mass swathes of people have been widened much more than before.

> Out of the 700+ in my graduating class of Computer Science, less than 70-80 are still associated with computers in some for or manner.

I can back that up with my anecdotal stat as well, that number is rather generous, not even 70-80 would be doing it still. There were some which hated it and it showed. They were pressured into it and they were just struggling all around to develop any interest at all in the field.

> I can't wait for Indians to realize just how much easier it is to get employed today if you are willing to let go of the traditional path.

I am skeptical about this. Unless you can actively demonstrate competence (select few) you are not going to be favoured against someone with real degrees in the pile of resumes.

> I am skeptical about this. Unless you can actively demonstrate competence (select few) you are not going to be favoured against someone with real degrees in the pile of resumes.

That's why I said, if you are willing to let go of the traditional path. If you have to compete against a pile of resume, you are near or on the traditional path.

Employment doesn't necessarily mean you have to be working for a company.

Could you give an example?

Clearly, there are new paths. Streamer, Podcaster and so one. But nothing that couldn't employ masses.

What sort of opportunities are available for someone with little experience/qualifications in a poorer country?

In East Asian economies, the workforce transitioned from farming to labor-intensive manufacturing before moving onto high-tech services. India, in contrast, had a booming tech consultancy sector before they had a strong manufacturing sector. A poor farmer in China, and Japan/Korea in the decades prior, could move to a city and make a better income on an assembly line despite not having any formal education. A poor farmer in India needs to jump up to a service job which needs a lot more training and preferably a diploma to prove it. So even if your local college is a shit diploma mill, you'll still send your kids to it because there's no other choice for upwards mobility. There's no factory job where your children can get hired at and save up so the next generation can go to a college with legitimate training.

Which is good overall because automation is making those manufacturing jobs worth less and less. Companies are starting to leave China for low wage countries already. Right now service jobs designing the automation is where the real money is and India is well positioned to take it.

Note there are no easy roads to success in general. Being born to the right family helps (a lot) , but you can sti mess up.

Apparently not based on the premise of the article discussing the poor quality of service workers coming through India's education system. My hypothesis would be that the poor quality in education comes from trying to funnel as many people as possible into highly-skilled service jobs because there's no middle rung for them to take a rest at. Rushing things without a solid foundation always ends up being self-defeating and slower in the long run.

In addition, automating a factory process is more effective if the designers live in a society with plenty of manufacturing experience. Avoids problems like egghead designers creating the latest automated process that turns out to be a nightmare for maintenance when actually used in a high-volume manufacturing line. I'd be willing to bet big chunk of the companies in the future automated factory revolution would be Chinese companies leveraging their manufacturing experience. Once again, skipping steps = problems down the line.

The article is just a repeat of similar ones I see in the US pushing some agenda. I take it with a grain of salt.

Plenty if you are willing to learn. People are creating exceptional stuff on the internet. From blogs, youtube, instagram to SaaS and apps, the content to learn all of this is available easily.

It does not work for literally everyone from the country but the people I'm talking about can definitely travel on this path.

> Out of the 700+ in my graduating class of Computer Science, less than 70-80 are still associated with computers in some for or manner

'700+ graduating class' sounds more like a fraudulent diploma mill than a Tier 2/3 college.

Actual Computer Science and Computer Engineering grads from Indian Tier 1/2/3 colleges have no problem finding jobs.

Nope. Legit college whose students went onto excellent post graduate programs in US and Europe. 700 in a graduating class is chump change in India. Plenty of colleges whose annual batches are that size.

I never said they had trouble finding jobs. You jumped the gun. I said they were not happy with choosing computer science as a career.

Why is 700+ fraudulent ? HBS for example, has >1000 students in their graduating class

Berkeley is graduating 900+ undergrads every year in EECS/CS.


> For decades, the Indian society has tried to use engineering (along with law, medicine and IAS) as a template to success.

Isn't this the case everywhere? Even in developed countries education has become the default path to a successful life. Medicine and law are extremely competitive fields because they have a reputation for guaranteed success. There aren't many opportunities available for people without qualifications.

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