Professional orchestras have auditions, where you will perform a piece from the solo repertoire in front of the head of the section you are auditioning for, and a few other key staff (e.g. [1]). Some auditions will include orchestral parts, and you can buy books of famous solos for most instruments.
This repertoire has little in common with the kind of playing you will be paid for, other than as a pure display of technical ability (just like whiteboarding). For example, it is relatively poor as a gauge of the ability to play with others (accompanists follow you, not the other way around), or of your fitting in with the rest of your section.
Even on a technical level, performing a showy piece well in the few minutes of the audition does not mean you have the stamina to sustain this playing through four hours of Wagner.
[1] "The jury consists of 25 members of the orchestra: two of four concertmasters, the principals, the VPO chairman and managing director, five musicians of the relevant orchestra section, two staff council members from the Vienna State Opera Orchestra, and a representative of the Vienna State Opera’s management." - http://web.archive.org/web/20141203022823/http://slippedisc....
In software engineering interviews, most of the time the interviewer will try to have prepared questions that the interviewee has NOT seen before. To make it more like an audition, the questions would need to be provided beforehand so that the interviewee could practice them.
They will then ask you to sight read or play through famous repertoire (e.g. Tchaikovsky 5th Symphony 2nd movement horn solo [3]).
This is true whiteboarding in the sense that in theory, you might not have seen it before, but a professional (or a well prepared student) will know most of the things that can be asked, just as inverting a binary tree is one of many probable whiteboard problems an engineer who knows the game will pick up in Gayle McDowell's book or whatever.
And that's part of the game, one that older engineers don't need to play anymore, which is why they have problems at the US border, whereas older musicians must continue proving themselves as their work has a physical component that unfortunately must be demonstrated throughout their professional life.
Edit: this captures the spirit of the thing quite well, spot the parallels with an engineering interview: https://www.youtube.com/watch?v=SdAnogOKR0I
[1] https://www.youtube.com/watch?v=Xu2kIVSP5yw&t=8m
At a few of the auditions they would interrupt you if it appeared that you knew the piece and give you something else.
Honestly rather annoying. Even though I entered teaching, I did a lot of time in the pit and sight reading was never a skill that was needed. I can understand the need to weed out people with no/basic reading skills, but the idea that you need to be high-level fluency (particularly with oddly notated pieces!) is nonsense.
The worst part was that most students just gamed it. They would purposely ritard some part just to make it look like they weren't familiar with a piece they could play blindfolded. The net result is that the school I ended up selecting had a number of non-fluent readers that wasted everyone's time at some point because they were so slow!
/rant
I live in Pittsburgh where we have a wonderful orchestra. The musicians went on strike this season because their compensation was going to be significantly reduced (after already having suffered cuts recently). I wish I knew what to do to convey a love of this music to others, such that there could be more financial support for orchestras. It seems like the supply of talented musicians far exceeds the demand.
Also, since you're a fan of jazz, I was blessed to hear what would become Phil Wood's last concert. He played here in Pittsburgh while on oxygen -- he called it his "amplifier". Members of the Pittsburgh Symphony joined him as he played selections from "Charlie Parker with Strings". Besides the fact that every solo he played was perfect, he ended the show by telling the story of his musical career (and also, to the surprise of all gathered, announced his retirement from music). He passed away only a few weeks later.
I hope that we can find a way to not only maintain but to expand the richness of these musical genres for future generations. But with the challenges that you've described, I fear that many musicians will not be able to take part of it.
In front of that whiteboard you have to perform with all that that entails, but you also have to compose.
I'll disagree with the GP, though, on its applicability to "real-world" work. When I did chemistry, diagraming out a reaction mechanism and pondering it over with colleagues gathered in front of the chalkboard was a daily activity.
I think it's a sign that universities are failing to be trusted as credentialing institutions. You should be able to verify a degree and conclude from that the person learned the material.
I guess this is why the professional engineering exams exist.
I know that I would not have gotten as much out of my degree if I hadn't had prior experience with programming prior to university. It's tough to appreciate why complexity analysis is important if you've never personally experienced a program running slow because you chose a poor algorithm.
And most employers aren't looking for that level of theoretical knowledge. They're looking for people who can quickly get up to speed with the development environment, who can break down a problem into smaller logical chunks, and who can translate those chunks into working code.
If neither employers nor students care about the theoretical knowledge, then what is the point of going for that degree? (IMO, the best course of action would be a few years of on-the-job training, then going to university once you have enough experience to appreciate the theoretical stuff. But that would be a huge culture clash with how things are currently done).
Because you occasionally (but often enough to get a reputation for it) get to look like a god when you pull stunts letting them shut down 30% of the app server fleet by just adding one multi column index to the db...
It was probably 5-10 years into my career when realised I occasionally pulled out knowledge or techniques from 2nd year CS courses - which other people (even ones with way more university than me) didn't even understand when I explained what was going wrong and how we could fix it.
The old comp.lang.perl.misc gag saying "There are people with 10 years programming experience, and people with one years programming experience 10 times over" has a deep kernel of truth to it. 10 years of CRUD apps or Wordpress extentions or Django sites is unlikey to have prepared you to be Netflix's platform architect (to be fair though, neither has a mid to late 1980's vintage CS education - I don't get to show off my Pascal chops much professionally... ;-)
Each had a lecture/exam component, but it was minor. The classes mostly centered on a set of programming projects, implementing foundational components in the topic area from a specification and a skeleton. (IRC server, TCP stack, IP router, Paxos, Byzantine Generals, Raft, b-trees, query parser, thread scheduler, syscalls, filesystem, interpreter, RSA, D-H key exchange, authenticated encrypted channel, concurrency primitives and then concurrent algorithms that use them, sensor fusion, geometric transformations, shading, texture mapping, ray tracing, etc). No one I know took all of these classes, but we all took most of them.
Proofs are theoretical knowledge. Hobbes, Locke, and Rousseau are theoretical knowledge. I did plenty of that too. This isn't theoretical knowledge, it's breadth. It's knowing what's involved in the systems adjacent to the code we write, inside the libraries we rely on. It's an understanding of what problems they're solving internally, why they might be acting up, and what to do about it. It's demystifying the rest of the computing environment, pulling back the curtain on abstractions. It's a whole bunch demonstrated ability to write complex programs for complex purposes subjected to rigorous test suites, under far more realistic conditions than any whiteboard interview.
A few years of on-the-job training will teach you what matters for your specific job, right now.
Though we didn't have such a class, a degree capstone might have been "given a CPU emulator, write a secure distributed database engine on your network stack in your SML interpreter on your operating system." It wouldn't have the performance optimizations that modern, widely-used components have accumulated over the last half-century, but it would work.
[0] http://collegecatalog.uchicago.edu/thecollege/computerscienc...
oh well.
Especially the "coder culture" which was obviously not part of the curriculum, but not negligible.
As there seems to be no end of the stream of jerks and increased misogyny, I doubt that it's gotten that much better though.
Edit: I also did a couple of courses that were eye-openers, including a introductory course based on the wizard book (SICP), but it probably was an eye-opener only to the few hobbyist with some previous experience.
- you can get a degree from a lot of universities without learning what you should
- schooling is no substitute for work experience
- software hiring is still generally broken
Said that, it is ALSO a very bad developer interview technique.
Think if anytime you use it to communicate with a team coworker you had to feel like "I must make this good in these next 20minutes or I am getting fired" (with the bonus of not knowing what the whiteboarding will be about) and this is how feels a potential candidate when doing these types of interviews
Most interviews are presented as cases[1] where students/applicants have to analyze and propose a strategy to handle example client situations in ~60m.
I've found that the people who have the most success with the interviewing process are the ones who do the most mock and focus on optimizing their skill-set for the interviews, rather than for the actual positions (which is unfortunately similar to tech recruiting and algo/whiteboarding problems).
There is also a ton of online case prep[2] and training materials specifically for the interview process, akin to CareerCup/CTCI/HackerRank/etc.
[1]https://en.wikipedia.org/wiki/Case_interview [2]http://www.consultingcase101.com/tag/free-sample-case/
In MC, the delivery of the case is extremely important (how you structure the solution, how you speak, how you present yourself, etc.). Your point on people optimizing is spot on. Some students spend 10-20 hours a week practising before a McKinsey, Bain, BCG interview..
When I'm building cases and interviewing people, I try to structure it around a real life problem we have (e.g. a wood/fiber B2B company wanting to go B2C) which makes it less awkward than solving random algorithms.
However, I'm still not satisfied with the process, so wondering if people have ideas ?
I thought about giving a case to solve at home, but we're missing the part of how an applicant will react with a lot of pressure and in front of clients :/
Maybe I can help. If I need to explore some ideas and there's no whiteboard handy I write on the windows instead. Gotta be prepared when inspiration hits!
So e.g. if there is a "Competitive Bridge-Engineering" and the problems are completely different compared to bridge-engineers day job.
To continue this theme - in case you have an opening for bridge engineer - isn't it enough to discuss the previous 5 bridges the candidate has built and maybe also discuss the relevant details the current bridge project entails? Do such bridge-engineers also get irrelevant questions?
Not really related to job interviews, but West Point used to do a bridge engineering competition (maybe they still do) where you downloaded a software package and had to design a bridge that could withstand the highest load for the smallest cost. It was pretty accessible and kind of fun to mess around with. I never submitted any solutions, but I think the prize was a scholarship.
Some companies will end up sending you for testing. Which normally have less than a 5%-10% pass rate.
Although the entire process is far more pragmatic than programmer interviews from what I've seen here. I was also able to expect far more replies back with results than programmers do here.
But i /feel/ that larger scale (civil, etc) would not? I mean i kind of imagine civil, forestry, etc would be more portfolio driven?