You learn a LOT about how a candidate thinks and the depth of their knowledge.
You learn a LOT about how a candidate thinks and the depth of their knowledge.
expecting current gen SWEs to talk about network layer protocols while answering this is kinda the same as expecting 1990s SWEs to include wire physics and dispersion statistics in their answer to this question.
Depth alone isn't always a good indicator. We have to move on from some of the low level stuff at some point and it is okay for engineers to know in detail about things that have been solved long back.
But my devops guy? He better be talking about CDN, cavhing, WAF.
Current web is full of WAFs and CDNs, devops should know that they exist at the very least.
The nice thing about the website load question is that it touches every part of the stack. You could talk for an hour about rendering on screen at the OS level, or network protocols, or server stuff, or web client stuff, or data center stuff, or …
Really to answer the question in its full entirety would be the equivalent of that “Everything that goes into a pencil” essay. You could build an entire college curriculum just out of that question.
which one! I tried googling this but without quotes it gives me clickbait and with quotes it only points to this comment. :(
Been around long enough so I've written my own CSS framework, server-side framework, web browser, web server, sent bits over Ethernet, written assembler, programmed a FPGA, built circuits, AND have a electrical engineering degree... and YET, _ABSOLUTELY NONE_ of this is useful _99%_ of the time.
So meh. If I want you to do frontend, I will ask you frontend questions. Hopefully you can go deep on a11y and that's what I care about.
(But the 1% of the time when I can precisely step through a whole stack is also fun.)
Electrical engineering is a whole nother thing!
If they can talk about network layer protocols, then that tells you something. If the next candidate's understanding stops at knitting libraries together, then that's also notable.
Even if it's not a discriminating factor in hiring, it still helps you flesh out the candidate.
If they say "depth first", go all the way down to electrons bumping into each other on the wire.
It's an "I'm so smart, are you so smart" question, the only right approach is a smart aleck approach.
I work on web browsers for a decade+ now, and worked on network protocols for a decade+, and it's not a question I'd consider in any way high signal. If this particular area matters to you, ask a problem in the space. "Web page X doesn't load, figure out why". It shows you way more than "please regurgitate every detail"
But having a frontend engineer aware of Safari on iOS or macOS vs assuming chrome compatibility, or a SRE aware of abusive UDP http2 / h3 stuff...
Again the beauty is in the flexibility and scope of something normies take for granted, and this video delves into some of the esoterics of this topic!
My objection was to using it as an interview question. An broad open-ended question like that without any guidance what the interviewer cares about is a signal of either copy-pasted hiring practices, or a working culture that doesn't know what it wants. It's also a question with little signal in the noise if you don't give a bit more clarity.
I mean, fundamentally I'm happy if other companies use the question, more good hires for me, but in terms of "we should really raise the bar on this interviewing thing" I still object :)
Forget about that. The question is an open ended and adaptable tool to get a huge amount of information about knowledge, verbal ability, audience awareness, and all sorts of other directly relevant skills. No trick questions just "teach me everything you know about this subject" and then work with the other party.
That said I suppose there's no reasonable expectation that (for example) most firmware developers necessarily know anything whatsoever about loading a web page. But anyone whose touches network (ie most) should know something.
As CTO for multiple companies and hiring across multiple competencies for 10 years... This is the question that keeps on giving!
I don't get it. You ask for excruciating detail. But you want candidates to intuit what to leave out? Eh?
And what do you mean physical keyboard, the virtual one on my phone works fine ;) (also preconceived notions)
Basically to load a web page you must first invent the universe.
Each textbook in the series at the depth of a bachelors degree, split by relevant subject including physics, chemistry, biology, neuroscience, materials science, electrical engineering, hardware design, kernel and device driver design, systems level networking, and all the remaining browser engine, VM, security, and webdev stuff.
To keep the task at least theoretically tractable cut off at the NIC in the local box.
Who knew you could premise a textbook on protein folding on "how a web page is loaded"?
not: the physics of racecars, that is explaining racecar dynamics given physics fundamentals, rather explaining the fundamentals using racecars instead of spherical cows. i think not very different to first semester analog ee courses using hifi audio as the basis.
I think this would be excellent as a once-in-a-while exercise to teach the complexity of it all, after we went the other way to abstract the hell out of everything to make it more palatable. A reality check, so to speak, and as a check for everyone about the many holes in their understanding. Basically, in support of something that has been posted here more than once, this blog post: http://johnsalvatier.org/blog/2017/reality-has-a-surprising-...
In the last few years I read a lot of easily digestible progression fantasy on RoyalRoad. One frequent theme is rebirth or isekai on another world, one that's usually much more primitive. Often the main character starts bringing earth technology ideas into the new world. And every single time it is obvious that the authors very, VERY severely the complexity and difficulty of even the smallest thing that we take for granted. My favorite blog post describing an extremely simple product, and how large and sophisticated its supply chain is: https://medium.com/@kevin_ashton/what-coke-contains-221d4499...
To me, this shows that some more awareness of how much complexity there is in things might be valuable.
Being more aware of the connections across our abstractions also helps finding what's missing. It could also help to find optimizations across abstraction borders, instead of limiting oneself to only looking within ones favorite abstraction layer.
is walled. Is there a way to read the article without extra steps?
https://medium.com/@kevin_ashton/what-coke-contains-221d4499...
The last string part is, again and to be sure since the visible URL is shortened by H, what-coke-contains-221d449929ef
I think you copy-pasted the visible URL, which on HN is unreliable. Long URLs are shortened for display, you need to use the underlying link.
> is walled. Is there a way to read the article without extra steps?
Archive link: https://archive.md/PPYez
oh, oops!!! yes I did copy and paste it, I typically do that when quoting parts of comments. I didn't realize it truncated the URL lmao
> Archive link: https://archive.md/PPYez
thank you!
source: https://youtu.be/AqNDk_UJW4k?list=PLowKtXNTBypGqImE405J2565d...
at 13:44s
Depth-first doesn't work when the depth of reality is basically unlimited.
I could go on but :)
[0]https://explained-from-first-principles.com/internet/#prefac...
it's an awful question.
Never specified the level of detail I wanted but left it open to the candidate…depending on where they went it leaves plenty of room for follow on questions to probe their knowledge
What? You said excruciating…