
Ask HN: Why isn't there a professional body for Computer Science? - o_safadinho
I know that people say that &quot;interviewing is hard&quot; and I&#x27;ve read lots of articles that say that people generally don&#x27;t like doing long winded technical screens but it is the only way to judge whether or not a person is competent, etc.<p>What I want to know is why have other related areas of study such as Statistics, Economics, Actuarial Science and Operations Research been able to organize professional bodies that can determine competence. There are other professional bodies where they don&#x27;t give credentials but they organize a central location for candidates and organizations to come together and they provide a standardized format to determine competence.<p>I find this especially baffling now that &quot;data science&quot; has become a buzzword. Lots of &quot;data science&quot; techniques such as:<p>- Generalized Linear Modeling<p>- Gradient Boosted Machines<p>- Support Vector Machines<p>- Random Forrests<p>- The Simplex Algorithm<p>- Anything with the word Bayes or Markov in the title<p>were developed by Statisticians&#x2F;Mathematicians. Even though hospitals and insurance companies and the Fed and logistics companies are able to find statisticians&#x2F;operations researchers&#x2F; predictive modelers&#x2F; etc. with out problems why do tech companies such as AirBnB(https:&#x2F;&#x2F;www.quora.com&#x2F;How-does-Airbnb-hire-data-scientists) say they HAVE to give these multi-day long technical screens with multiple homework assignments?<p>What is it about applying the same techniques to tech that makes them special and some how harder to measure?
======
PaulHoule
It's an interesting question.

There is

[http://www.acm.org/](http://www.acm.org/)

which supports the academic CS establishment but frankly has a "devil may
care" attitude about practitioners. CACM is full of hand-wringing articles
about the roller-coastering numbers of CS undergrads and they never once get a
clue that the undergrads hear rumours about what happens to people in
computing once the flush of youth wears off. (It's a general thing that
engineers start out with good pay but hit a glass ceiling rapidly)

I used to be a member but I quit because of this. If I had to point to a
particular issue it is that the ACM has unquestioning support of increasing
H-1B visas.

I am a member of the IEEE Computer Society precisely because they take the
opposite side.

Personally it is not a litmus test for me, I see there are two sides of the
issue, but when you look at the ACM they are in lockstep with the industry
which sees it as a one-sided issue and anybody who questions it is like one of
those brits that likes to brawl at football matches.

Anti-professionalism (that is, active opposition and resistance to
professionalism) is the dominant paradigm in IT and it creates "market for
lemons" situations that has a number of negative impacts on the field, the
worst of which is that once you do get the job (well paid or not) you will
almost inevitably be forced into malpractice by management and not have
anybody to support you.

If there was a simple explanation of the situation it is that computing came
along in a time when unions were on the run. Had computers became widespread
20 or 30 years earlier, the situation might be very different.

~~~
o_safadinho
How does that explain INFORMS for Operations Research?

WWII was the catalyst for a lot of technical research. It spawned the birth of
the modern computer with Turing and it also saw the birth or what is now
considered modern Operations Research. For example, during WWII George Dantzig
(the person that developed the Simplex Algorithm) served in the U.S. Air Force
Office of Statistical Control. He only returned to finish his PhD at Berkeley
after the was was over. Also a lot of work with Bayesian search started
developing around this time to do things like help search for enemy subs.

However INFORMS is very involved in the OR/MS community and multiple times per
year they host meetings where one of the goals is to connect grad students
with companies.

~~~
dalke
ACM and IEEE Computer Society also host meetings "where one of the goals is to
connect grad students with companies."

When I was in school, the local ACM chapter had meetings which which even
helped undergraduates find internships and jobs.

All of the major ACM conferences have a job fair. Most of the minor ones as
well.

> "What is it about applying the same techniques to tech that makes them
> special"

There is nothing special about tech. The same is true for most fields. Where
is your central source where you can hire a chemist?

Usually, the potential chemist hire comes to the site, talks to people, gives
a job talk, etc.

> "say they HAVE to give these multi-day long technical screens"

The link you gave to AirBNB says it's one day technical screen, and candidates
which pass that screen have a followup with four non-tech interviews. It is
not a "multi-day long technical screen".

~~~
o_safadinho
I guess the problem comes that especially outside of tech, they don't have
independent technical screens, the company reads your paper.

If we stick with AirBnB here is a posting they made with the AEA
([https://www.aeaweb.org/joe/listing.php?JOE_ID=2015-02_111454...](https://www.aeaweb.org/joe/listing.php?JOE_ID=2015-02_111454432&issue=2015-02&keyword_search=&section=5&jel=all&country=all&recent_only=Show+all+listings+published+since+August+1%2C+2015&from=1970-01-01&to=1970-01-01&listings_order_by=institution_a&lpp=50)).

All of the interviewing takes place at the AEA meeting and the candidate is
expecting to have their Job Market paper (a completed technical project that
is used for presenting at all of your interviews).

The American Statistical Association has something similar with their Joint
Statistical Meeting
([https://www.amstat.org/meetings/jsm/2016/employerlist.cfm](https://www.amstat.org/meetings/jsm/2016/employerlist.cfm)).

Once I finish grad school I wouldn't do any type of homework for a job
interview. If you can't read one of my papers then I just wouldn't be
interested.

~~~
dalke
The job process of hiring a new chemist is more than just reading your papers.
And yes, _papers_ , as most people will have published several papers in the
process of getting a PhD.

There are references to check up on. There's the ability to present your job
talk; the ability to present is an important skill when you work in a company.
Some candidates during the interview day might yell at a secretary or send
text messages while being interviewed - these are two no-go indicators for
most jobs.

Those two examples come from a comment at
[http://blogs.sciencemag.org/pipeline/archives/2014/11/03/job...](http://blogs.sciencemag.org/pipeline/archives/2014/11/03/job_interview_advice)
. Another points out a technical screening question one might ask a chemist:

> If I ask a PhD candidate how many protecting groups they know for nitrogen
> and they can name ten off the top of their head with pros and cons for each
> – then that tells me something. If all they can come up with is “Ummmm…
> Boc?” – well that tells me something too.

[http://blogs.sciencemag.org/pipeline/archives/2006/01/29/nam...](http://blogs.sciencemag.org/pipeline/archives/2006/01/29/name_reactions_for_one_thousand_alex)
suggests:

> I think I might work up some questions like that for the next time I
> interview someone. “Here,” I’ll say, handing over a sheet of paper.
> “SciFinder says that you can do this reaction any of these six ways. Which
> one would you recommend trying first, and why?”

A recent grad comments about a job interview, with questions "more along the
lines of “do you know some basic transformations and how they occur?”

Given that evidence that there _are_ technical screens for chemists, why do
you write fields "especially outside of tech ... don't have independent
technical screens", and that interviewers only look at one's single paper
publication?

You write: "If we stick with AirBnB".

If we stick with AirBNB then re-read the interview process you linked to
earlier. Not only does it not do multiple days of technical screening, as you
thought, but it says nothing about a homework assignment; which seems to be a
particular point of irritation for you.

You appear to have an incorrect interpretation of what you read, and an
incorrect interpretation of what happens in other fields. I suggest that means
you may need to re-evaluate what you think you know of the topic.

~~~
o_safadinho
I read the article correctly. They don't call it homework in the article and
instead decide to use the term "data challenge". You can call it whatever you
want it is the same thing. It is also split in to four parts and takes place
over several days. How did I interpret this incorrectly?

I'm specifically talking about other technical fields that are highly
mathematical and that have a lot in common with Computer Science.The fields
that I specifically mentioned were Statistics, Economics, Actuarial Science
and Operations Research. I mentioned all of the fields that I'm talking about
in the original post and in sever of my replies. You are harping on something
trying to correct a point that I'm not even trying to make and your response
actually helps to further prove my point. You could be correct about the
Chemistry thing. I didn't study Chemistry and I don't want to be a Chemist and
I didn't mention the subject anywhere in my OP, so I don't really care about
the interview process for hiring a Chemist.

For example, with Economics (one of the fields that I actually mentioned),
presenting your "Job Paper" is actually part of the interview process. You
make your presentation and everybody that has arranged an interview with you
can come by and hear your talk. They can read your paper before hand so they
have time to think questions well ahead of time. The American Economics
Association provides one platform for all interested parties to come together
and hash things out instead of me having to try and go to 10 separate
interviews.

With Actuaries (another field that I actually mentioned) there is no need for
you to quiz me to see if I actually know how a Poisson Process o GLMs work
because that is taken care of by the exam process. If somebody passed the
Statistical Models exam then you know that they at least meet the industry
agreed upon minimum competency level for knowledge of specific Statistical
Models.

~~~
dalke
I apologize. It was I who was mistaken. I overlooked that the basic question
takes place at home.

This is, I think, equivalent to the FizzBuzz problem that was going around a
few years ago. I can see how it can be called homework. I assume it's a screen
because a lot of people apply who have no clue on what data science is
actually about. If my assumption is correct, the it should take no more than
15 minutes or so, since it's supposed to be "easy."

You write now "and takes place over several days". Earlier you wrote "multi-
day long technical screens with multiple homework assignments." These are two
different, though related things. My response was to your first description,
not your updated description.

Here are the differences I see. 1) the AirBNB text says "We send a few
datasets to them and ask a basic question; the exercise should be easy for
anyone who has experience." The use of 'the exercise' looks like it's one
homework assignment, while you say it's " _multiple_ homework assignments".
This is a minor point, but still a difference.

2) the AirBNB text says that the in-house challenge is a day long ("They then
have the day ... At the end of the day"). That is the main _technical_ screen.
The remaining day is a non-technical screen. I agree that it's a multi-day
long process, but only one of those days is for technical screening. This is
why I disagree with your initial characterization of "multi-day long technical
screens", though I agree with your new characterization of "takes place over
several days".

> "I'm specifically talking about other technical fields that are highly
> mathematical and that have a lot in common with Computer Science. ... so I
> don't really care about the interview process for hiring a Chemist."

I was addressing your earlier statement "What is it about applying the same
techniques to tech that makes them special and some how harder to measure?"

In comparing your two sentences, I'm confused. You first imply that CS is
"tech" and somehow special, and different from statistics and the other
fields. But now you say they have a lot in common? What does "special" even
mean then?

Most of CS, by the way, has very little mathematics in it. Surely less than
chemistry does. Why do you think CS is "highly mathematical" when most CS
departments require only basic calculus, discrete math 2, and perhaps an
intro. statistics course? (Some specialized subfields of course require more
mathematics.)

I'm "harping" on the topic because you think CS is somehow _special_ , when my
experience from physics, chemistry, and bioinformatics says that the CS hiring
method is pretty standard.

I believe the hiring process in mathematics is also similar to the science
fields I just listed, and different from what you have described.

For example,
[http://www.siam.org/pdf/news/1847.pdf](http://www.siam.org/pdf/news/1847.pdf)
describes the process for "recent PhDs who are looking for positions at
undergraduate-focused schools". It includes a strong teaching component, so
the interviewees are expected to put together a talk with "the daunting task
of showing that you can connect with an audience of undergraduates and non-
specialists while simultaneously making it clear that you’re a serious
mathematician, knowledgeable about your area and with substantial work to your
credit."

[http://blogs.siam.org/how-and-why-to-ask-good-questions-
duri...](http://blogs.siam.org/how-and-why-to-ask-good-questions-during-
interviews/) says "In the U.S., the typical interview for a PhD-level position
lasts a full day or more, including a one-hour seminar and one-on-one meetings
with researchers and/or faculty as well as managers/administrators." This is
also different than your description of "You make your presentation and
everybody that has arranged an interview with you can come by and hear your
talk."

Am I incorrect? Is there a centralized system, perhaps at SIAM, for
mathematics papers and job finding which is similar to what you describe for
economics?

~~~
o_safadinho
I'm not sure about Mathematics, but for Statistics the American Statistical
Association hold the 'Joint Statistical Meeting' every year. It is part
continuing education classes, research presentations and career fair. Every
year there are dozens of companies, universities and national research labs
interviewing there. They also do a regular salary survey so you know what
types of salaries are typical for Masters/PhD holders in different parts of
the country and different industries.

If you plan working in predictive modeling at an insurance company you will
have to get credentialed by one of the two actuarial societies. The SOA just
added more exams to their current schedule to cover various predictive
modeling topics and the CAS decided to make the predictive modeling portion a
separate credential. But this way, you do everything once and it is valid
across most English speaking countries. It doesn't matter whether you want to
work at AllState, ESurance or Liberty Mutual. They just pull your record with
one of the Actuarial societies.

I was saying that depending on what you specialize in they do have a lot in
common. Given that you have similar specialties, why are economists and
actuaries and statisticians able to judge a persons competence in some sort of
standardized way but a tech company trying to hire someone in Machine Learning
or Data Mining isn't able to do the same?

~~~
dalke
All fields have big yearly meetings as you describe. And people interviewing
at them.

Including, as I mentioned, ones organized by the ACM and IEEE. Here's the
ACM's stepping-off point for graduating students:
[https://www.acm.org/education/resources-for-
grads](https://www.acm.org/education/resources-for-grads) . They have a twice
monthly publication called CareerNews. The ACM links to the many resources
available for getting an idea of pay scales in different parts of the country.

At this point, I don't know what to say. Yes, a few fields have credentialed
requirements, ranging from haircutter to certified public accountant to lawyer
to surgeon to engineer.

Most do not.

For example, if you plan working in predictive modeling at drug discovery
company, no such credentials exist. Moreover, a credential from an actuarial
society will almost worthless, and surely less important than a MS in
biostatistics.

You keep coming back to: "why are economists and actuaries and statisticians
able to judge a persons competence in some sort of standardized way".

 _Shrug_ I know nothing about those fields. For all I know, it's because there
is a well-known set of laws and regulations they have to follow, and generally
accepted practices, so most of the need for competence is to ensure that
people know those laws and practices.

That's not the case for most fields. Including computer science, in all of its
forms and incarnations.

------
CM30
Perhaps because they're worried that the law would start requiring
'professional' accreditation to work in computer science?

Because at the moment, anything computer related is something you can teach
yourself through practice and experience rather than something that
necessarily needs a degree or credentials. You can obvious get a degree or
what not, but it's not required.

The worry however is that professionalism could lead to a situation like with
doctors or lawyers, where you need to be part of some professional body or
have certain credentials to work in the field at all. And that it could make
getting work in the field more difficult for newcomers as a result.

~~~
kazinator
Worse, in order to belong to this body you might have some particular ideology
shoved down your throat about how computers ought to be programmed.

We can't have a professional accreditation, because there is no right or wrong
best practice in computing. Obviously, making programs that are buggy and
incomplete w.r.t their specifications is wrong, but if you don't do that,
there is no one right way.

~~~
flukus
Are there any industries with authoritative right or wrong best practices?

------
CyberFonic
We have ACM, IEEE, ACS, etc - so there are professional bodies, but ...

In my experience a very large proportion of programmers have not completed any
formal training, which is typically the first step in the other professional
accreditation processes.

The attempts to put real engineering into "software engineering" and real
science into "computer science" is strongly resisted by many. ACM and IEEE
deplore this state of affairs but are unable to bring about any widespread
change in attitudes.

~~~
ben_jones
Well the fact is that the world needs software engineers and computer
scientists, but it needs more _software developers_. Also software developers
love calling themselves computer scientists and software engineers because
money, and colleges don't want to teach _software development_ because...

~~~
flukus
> and colleges don't want to teach software development because

Because they don't want to admit they've become trade schools for white collar
workers. They even advertise themselves as such, "training for the real
world". The real world needs more software developers than computer
scientists.

------
eldavido
I'm going to have to invoke the Munger test [1] on this: rather than imagining
an ideal regulatory body that works perfectly, talk to people in regulated
professional fields (law, architecture, medicine) and see what they think
about the regulators they have.

You'll get a mixed bag. On one hand, it limits major acts of gross negligence
where a practitioner really didn't know _a thing_ about what they were doing.
In trade, you get a hierarchical, rigid career path where the people at the
top -- the professionals/partners -- extract economic rent from those below in
trade for their exclusive ability to practice the trade as independent
professionals, not under control of anyone else.

Be careful what you wish for. Professionalization would probably benefit the
old at the expense of the young, because salaries wouldn't necessarily track
performance (or perception thereof) as directly as they do now, in tech. As
controversial as it might seem, I really think there _is_ a limit of how much
value one can add as an individual practitioner software developer, and don't
think people should necessarily get, or expect, raises for doing the same job
year in and year out, just for showing up. So you can either plateau salary
quickly, which is what we have now, or hit the same peak, but take a lot
longer to get there. It's a complex issue either way but I don't think the
status quo is actually that bad.

[1] After economist Charlie Munger, invoked when people mention "the free
market" or "regulation" to the solution to any problem. Think about the
business leaders/regulators we have, not necessarily ideal ones of our
imaginations.

~~~
o_safadinho
It doesn't even have to be regulated per se. For example, Economists aren't
regulated the way that actuaries are, but they still have widely agreed upon
format and process for how to get people from grad school to employment. It
doesn't matter whether you want to work in the Econ department at Harvard, The
World Bank or a consulting company like Deloitte.

------
goalieca
Engineering professional associations could potentially regulate "computer
engineers" here in Canada but as a student going through school (10+ years
ago), I felt like the software industry wasn't ready for the rigor doing real
"engineering". Everyone was getting ready to jump on the agile bandwagon which
is pretty much the exact opposite of a formal engineering process. No one took
design and security too seriously. They still don't. The industry and the
markets pretty much agreed that they don't want to pay or wait for products to
be engineered. That they can accept problems.. even serious ones like heart
bleed.

~~~
jerf
And this sort of thing is why I'm against the idea strongly. The first thing
that people think when they think about this sort of thing is that we have to
drag in extremely heavyweight "better engineering", _blind to the major
differences_ between programming and other engineering.

What if an architect could specify an entire skyscraper, push a button, and
have it manifest in the real world in 30 seconds? What if they could slightly
tweak something about the plumbing, push the button again, and have the old
thing torn down and the new building put up? What if they could push another
button to put 10 times the rated mass on every floor to see what happens? What
if they could push another button to summon an 8.3 magnitude earthquake for
ten minutes? What if they could write a for loop that did that for every .1
magnitude increment, ten times a day, until the building collapses, and
gathered statistics on which buildings do the best?

Do you think maybe this would affect their design process a bit? Maybe just a
little?

If you stop and seriously think about it, you should _expect_ that programmers
have a very different optimum design methodology. It would be _crazy_ if we
didn't!

Now, there are good practices and there are bad practices, and the bad
practices are more widespread than they should be, and there are cowboys where
there should be engineers. However, based on the prevalence of posts like
this, I have little confidence in the ability of a "professional organization"
to improve things. It seems based on the evidence far, far more likely to
mandate _counterproductive_ practices that make software more expensive, less
reliable, and harder for the disadvantaged and underprivileged to get into.

Don't be envious of the other engineering disciplines. _They_ envy _us_.

~~~
axlprose
> _Don 't be envious of the other engineering disciplines. They envy us._

They shouldn't. Our work is deplorable. Any non-trivial internal codebase
would probably give any mathematically savvy engineer nightmares for days. If
our office buildings were designed as needlessly hastily the software designed
inside them, having our tech hub in an earthquake hotspot would be a serious
issue.

Yes, there is something to be said about the convenience of our "agile"/rapid-
development cycle, but it's not like we use that power responsibly. We have
enough decades-old codebases that have been in a perpetual state of 'fragile
legacy-code' since they were first written, that prove that we don't take our
designs seriously enough to improve them despite all our conveniences. If
building engineers suddenly had access to some magical 'easy-bake oven' for
building skyscraper MVP's and making 'agile' changes, I know I'd be concerned,
looking back at our track record with software.

~~~
UK-AL
Some the worst code I've ever seen comes from mathematicians and engineers.

They're objective is, does it work? Then don't change it.

You have to remember software is incredibly complicated due to the amount of
possible states it can be in.

------
soham
Because nobody saw the massive growth coming, and now it's too late.

Programming (which is different from CS, but is often mixed) is very
accessible to learn (all you need is a computer and Internet), because of
which it grew very fast and got democratized very quickly.

No professional body was able to catch up to the speed of growth and breadth
of penetration. Before the talent crunch hit, it was too late.

I wish I could find some relevant numbers for growth, penetration and ubiquity
of programming to support this claim. But for those of us in the industry for
a while now (6 years of education + 15 years of working), there is a lot of
anecdotal evidence. e.g. I was booed in 1996, for choosing CS as my major. And
now every Taxi company out there needs software engineers.

------
binarybyte01
This industry doesn't need a union, but it does need a professional
association to protect and help engineers. Some things a professional
association could do:

1) Provide legal muscle to individual engineers - If there's a legal dispute
between a company and engineer, the company can just outspend on lawyers. It
doesn't matter if the law says the engineer is right, the engineer can't fight
a long legal battle. This will help with issues such as non-competes, off-
hours IP ownership, startup stock/options disputes, etc. It also provides a
place for engineers to report issues such as H1B visa abuse.

2) Politcal lobbying - The voice of engineers is not heard in the H1B debate.
This association could lobby and make sure the interests of engineers are
represented in the debate.

3) Accreditation - No more stupid technical interviews.

I want to emphasize, this is NOT a union. It does not do strikes, set salary,
or any of the things associated with unions. The primary power of an
association like this is pooling resources for litigation power and political
lobbying that serves the interests of engineers, not companies.

------
im_down_w_otp
There are a few, as people have pointed out, but why would they have any
particular clout or influence in a marketplace dominated by the Church of MVP?

Practically every single piece of advice ever given about engineering and
scientific practices on HN, or its cousin sites/forums, is that it's a
pointless pre-mature optimization and should be avoided at all costs in favor
of just hacking out and coughing up a piece of demoware that is loosely based
on your slideware, both of which you're trying to sell to an audience that
fundamentally doesn't care if it works or what its technical or scientific
merits or risks are, and in that world I'm not sure where there's room for a
vibrant and growing set of professional bodies because in that world the need
for credibility benchmarks and verifiable rigor are almost entirely
irrelevant.

------
pjmorris
Tom Demarco (one of the authors of Peopleware [0]) argues that certification
is primarily about the political agenda of the certifier/de-certifier, for
example in a letter to the editor [1] of the Cutter IT Journal, the end of
which I've clipped:

" Before ending, I offer the following example of how certification/de-
certification will work: I hereby de-certify Prins Ralston, Nancy Mead,
Patricia Douglas and Ed Yourdon. They will forever after have to write their
names with the letters RTSF (Relegated To Slinging Fries) after them. This
demonstration shows us two things about the process: 1) those who do the
certification are always effectively self-appointed, and 2) the basis for de-
certification, no matter what the societal rationale, always works out to be
the private agenda of the de-certifier. James Bach and Luke Hohmann came out
against certification in their article, arguing along the same lines I have
used above. But I am going to de-certify them as well. This shows a third
fundamental fact about certification: 3) it is inherently capricious, subject
to all kinds of mischief. I vote that we let poor old Citicorp and poor old
Aetna and poor old Microsoft figure out for themselves who they should hire. I
suggest that we have a perfectly fine selection mechanism at work today; it's
called the market. Some people get hired as software developers and some
people don't. It is a lot more competent than any appointed elite would be and
a lot more ethical."

[0] 'Peopleware: Productive Projects and Teams', Tom Demarco, Timothy Lister

[1]
[http://www.systemsguild.com/certification.htm](http://www.systemsguild.com/certification.htm)

------
wrong_variable
THIS.SO.MUCH

Lets look at the salary of Actuaries shall we ?

£ 222,936 - Chief actuary, senior partner

£ 140,814 - Senior function head, practice director

£ 117,343 - Function head, practice head

£ 89,442 - Department manager, managing consultant

£ 80,664 - Section manager, senior consultant

£ 73,043 - Section leader, consultant

£ 66,118 - Senior actuary, junior consultant

£ 52,067 - Actuary

£ 36,241 - Student actuary

£ 33,130 - Recent graduate

Each level is incremental - X amount of work increases your salary by Y
amount.

All you need to do pass the exams and you can work in USA + Canada + Europe +
India + Australia !

Now being a Chief Actuary is quite improbable - but look at the salary ! how
probable is it that a programmer is going to earn that much after 25 years of
experience ? we have all heard stories of unemployed experience engineers.

Coming from a maths background I really want some answers as to why I choose
software engineering

To me the rampant unprofessionalism, the lack of structure, the insane amount
of discrimination that is normal due to age, race, gender.

I really want to rage quit and go back and became an actuary due to lack of
options for career progression.

~~~
aianus
Move to the US, seriously.

For reference, starting compensation for a 22-year-old fresh CS graduate in
the Bay Area is $120k+ (higher than department manager in your list). 5 years
in as an individual contributor or tech lead you'd be doing $150-$200k. My
roommate was in actuarial and got the hell out when he saw the difference. Now
he's a 'data scientist' and doesn't need standardized exams or accreditation
to get a job.

~~~
wrong_variable
Not every software engineer has the fortune to be born in the USA :(

~~~
cheetos
Being born in the USA is not a requirement for getting a job as a software
engineer in the USA. It's hard, but not impossible at all.

~~~
wrong_variable
Recent Graduates do not have the experience for companies to risk going
through the hassle of getting visa in america.

The way it works it seems is that companies are willingly to take the risk if
you have proven yourself very well outside of america.

~~~
zzzcpan
I'm pretty sure the opposite is true. It's much easier for a recent CS
graduate to get a job offer in the US, than for anyone else.

But I agree somewhat, that software engineering is not the field, where you
are likely to be able to have a career.

------
analog31
I'm not sure that accreditation is so widespread. Most engineers don't get
licensed. Most math majors (myself included) don't take the actuarial exams.
Many people doing math and engineering related work (and programming) have
degrees in the physical sciences (again, myself included).

Engineers have an "industrial exemption," where they can work without a
license, if they do engineering for an employer. Rather than having things
designed by licensed engineers, the work is completed, and then a licensed
engineer signs off on it. Design review is often outsourced. For instance when
we're ready to ship a product (an electronic measurement instrument), we hire
a testing firm to approve the design.

Better watch what you ask for: If you look at the actual work that licensed
engineers do, most of us would say that it's incredibly repetitious and boring
-- basically poring over someone else's work all day long. I'd go nuts. I also
couldn't be a patent lawyer for that reason. On the other hand, it's well paid
and secure. A relative of mine had a long and rewarding career as a licensed
nuclear power plant operator. In practical terms, he was a project manager.

New things are developed and become widespread before professional bodies can
even react. I learned about microcomputers under the mentorship of my physics
professors, while the CS department at my college was 100% mainframe focused.
The CS majors laughed at my "toy computer." The early pioneers of Embedded
Systems were a hodgepodge of scientists, engineers, hackers, and so forth. How
long would industry have waited for a certification in Embedded Systems?

I think the multi-day-long technical screens are a separate issue. Tech
companies have gotten themselves utterly freaked out about the terror of
hiring the wrong person. Other industries don't have the same problem because
they don't follow the same trends, and it could change overnight if tech
companies get sick of it.

~~~
o_safadinho
You obviously wouldn't take an actuarial exam if you don't plan on working in
Insurance. However, if you do plan doing something like predictive modeling
for an insurance company then it would have to do it.

Both the SOA and the CAS recently changed their exam process to include things
like various predictive modeling and clustering techniques. The SOA decided to
extend the number of exams and the CAS decided to make it a separate
certification.

------
tpetricek
The book "Computer Boys Take Over" by Nathan Ensmenger
([https://mitpress.mit.edu/books/computer-boys-take-
over](https://mitpress.mit.edu/books/computer-boys-take-over)) is a useful
reference here. It goes through the early history of computing discipline and
discusses how computing turned into a discipline, including professional
organizations (including ACM, but also more "data processing" \- think COBOL -
oriented organizations). It also makes some fun points on interview process
(tldr - it was broken even in 1950s :-)).

There are too many points in the book to summarize in a comment, but anyone
who wants to read some - at least to some point - serious historical work on
the topic should probably have a look at the book.

------
kazinator
There can't be a professional body for Computer Science because Computer
Science is a mixture of religions, divided by such boundaries as programming
languages and operating systems.

Any sort of test to determine professional membership eligibility will either
have to be pure theory (useless) or else sectarian (favoring practitioners who
develop under a particular platform, or using particular approaches).

------
11thEarlOfMar
Perhaps it has to do with the myriad sub-specialties in Computer Science. They
are distinct enough that the specific knowledge and experience of one is
typically not transferable to another. I am thinking about such distinct
specialties as electro-mechanical control systems vs. A.I. You wouldn't expect
the controls pro with no A.I. experience to pass an A.I. interview simply on
the basis of his general computer science experience. Same for a CICS
programmer with no mobile experience interviewing for a Swift programming
position.

This fragmentation implies that Computer Science really is too broad an
umbrella. For sure, there is a lot of process related general software
development knowledge that all of the above should possess. But most projects
won't suffer an experienced developer's learning curve on a new sub-specialty,
even if it only means a few months.

Do Statistics, Economics, Actuarial Science and Operations Research have a
similar attribute?

~~~
o_safadinho
All of the above do have various sub-specialties. The problem is that even the
CS specialties (A.I./Machine Learning/Data Mining) still don't really conform
with the other fields that I mentioned. Generalized Linear Modeling is
Generalized Linear Modeling; it really doesn't matter whether you are
classifying risks for an insurance company or classifying text documents at
some tech start up. The math works the same.

In addition to that all of the other fields that I mentioned have sub-
specialties as well. An actuary can be a life, health or P&C actuary. They can
work in reinsurance or predictive modeling. An economist can work in Financial
Economics or Labor markets or Econometrics/Quatitative Methods.

Yet the SOA/CAS are able to come up with and evaluate a set of minimum
competencies that insurance companies in most English speaking countries are
able to agree on. The American Economics Association is able to bring together
major international banks (Various branches of the Fed, The World Bank,
Various National Banks, Consulting Companies, Law firms that specialize in
Financial/Economics issues) and grad students and it gives them a common
format to get to know each other and evaluate job offers regardless of a
candidate's/company's specialty.

------
flukus
Aside from the individualist attitude that's prevalent, it's because we are
still grouping too many things under the banner of computer science or
engineering.

Neither of those disciplines has much correlation to general software
development, so they fail from the start.

------
wyager
Because the guild system is outdated. I don't want to be encumbered by a
social environment of forced "professionalism", where professionalism means
ponying up for some pointless self-inflicted bureaucracy.

~~~
serge2k
> Because the guild system is outdated

Evidence?

~~~
fennecfoxen
The computer-programmer industry, for a start?

------
gariany
I've been interviewing for the past month in SF. The only thing bad about my
interviewing processes experience is BAD INTERVIEWERS with no sensibility to
HUMAN SKILL (i.e. not technical skills).

Team fit is what makes people shine in their jobs and no one is asking about
it... The industry is well developed now for us to stop asking about reversing
binary trees and start asking about how many friends you one had in high
school

~~~
marblar
> The industry is well developed now for us to stop asking about reversing
> binary trees and start asking about how many friends you one had in high
> school

Could you explain?

------
GFK_of_xmaspast
There is a strong streak of libertarianism, if not outright objectivism, in
this industry which recoils at the mere thought of collective action.

~~~
ADanFromCanada
And rightfully so. Who the hell are "they" to judge "my" competency?

Isn't that the job of my employer, anyway?

~~~
o_safadinho
For one thing, there is a reason that "The Professions" were standardized. At
one point in history, there was way less regulation for a lot of professions.
But then people had problems with insurance companies becoming insolvent and
not actually being able to pay all claims when major disasters struck. This
was because companies were hiring people that really didn't know how to do the
math.

It also seems like it is also more common for actuaries, statisticians,
Industrial Engineers to do independent consulting where they are employed as
an independent professional and will be required to carry things like
insurance. In cases like that, there really isn't any place that acts as "your
employer". Instead, you are independently providing your services to a client.

~~~
johan_larson
We're one or two balls of flaming wreckage away from software development
being controlled like other types of engineering, with certified training
programs, P.Eng. signoffs, and formal apprenticeships.

Or if not flaming wreckage, then major corporate failures, particularly if
they are banks.

It's coming. Just a matter of time.

------
TheSpiceIsLife
> say they HAVE to give these multi-day long technical screens with multiple
> homework assignments?

The only logical explanation I can this for this is because HR has to find
something for itself to do.

Is there any evidence to suggest that requiring mutli-day technical screens
reduces the rate of bad hires?

------
danso
No offense to the other fields, but as an outsider to those fields, I feel
that computer science is a far more varied and creative field than math or
statistics.

With programming, you can write programs that use statistical analysis and
modeling. But you can write programs that do things that are far less
mathematical in nature. A web developer could create a content-focused
website, including the backend and devops code. If said developer is far more
focused on the content and less on the code (e.g. not much more than setting
up WordPress and writing CS/JS and maybe some custom PHP), why should they
have to get accredited for that?

It's not that math and statistics are lesser fields, but that computer science
(or rather, what's commonly associated with it, such as programming) is a far
more versatile and creative field. The difference between being accredited to
write a legal opinion, and being a writer in general. But we don't
credentialize writing.

------
dragonwriter
Software Developers don't have one because there's so much money being thrown
at them, and its increasing fast enough, that they don't feel the need to
siphon any of it off for a professional organization.

------
cheriot
I'm in favor. Let's require professional accreditation to work in the
industry, lobby against H1B, and get our salaries really jacked up!

~~~
jdminhbg
I'm not in favor of pulling the ladder up behind me to screw over future
programmers and benefit myself.

~~~
cheriot
You're not in favor of sarcasm either. It's the more fun way of demonstrating
the danger of professional bodies.

~~~
jdminhbg
Sorry about that. Although I'm worried about the number of opinions I see on
HN that are literally the sarcastic ones you expressed.

