Hacker News new | ask | show | jobs
A collection of sysadmin test questions and answers for interviews/exams (github.com)
99 points by trimstray 2848 days ago
12 comments

"what happens when you type api.example.com and press enter?"

This has been one of my interview questions for years. Take a minute to speak your answer aloud. Do it now, I'll wait.

It requires walking through several layers and subsystems. Really a great question for exposing how the candidate models a complex system. The best part, as an interviewer, is seeing how deep the candidate goes down the potentially infinite rabbit hole.

The most entertaining answer I've received started with the electrical contact in your ENTER key sending the key code through USB. He briefly digressed into the pinout of PS/2 vs USB, and continued in that fashion.

there's at least one collaboratively edited doc about this standard interview Q; see https://github.com/alex/what-happens-when
Interestingly enough this only ever attempts to answer the technical part but doesn't consider the electrophysiology and psychology of it. What happens in your brain when you start typing each letter? And in your arms and fingers? And your memory? What if you have dyslexia? Or Parkinson's? Or dementia? What if your primary language is Swahili? And so on.

This question can truly be incredibly interesting.

Yeah, I could have sworn I saw an alternate version of this what-happens-when wiki which spent more time describing "your brain sends signals which are interpreted as follows …"

But I didn't come up with it in a quick Web search and thought maybe I had dreamed it.

Awesome, thanks for posting this
>"what happens when you type api.example.com and press enter?"

That's easy.

Bash checks all the directories as listed in my $PATH, doesn't find it and then prints "api.example.com: command not found" on the screen.

If you want me to tell you how a bluetooth keyboard works you're going to need to pay more than a sysadmin's salary.

Please don't take offense, but there are plenty of people in the world, who know the intricacies of Bluetooth, know the intricacies of how a keyboard send signals, may even know the pin out of PS/2 and USB, yet make no where near what people holding the title "Site Reliability Engineer" or "DevOps Engineer" do.

There are some poorly paid electrical engineers in the world. There are overpaid under educated sysadmins in the world as well.

wouldn't it check for aliases and functions first?
Type in what? A text editor? Bash? A browser? An app?

I could see myself getting started on a big tangent, and the Interviewer listening politely, then responding with "you're over thinking it; a new line is inserted and the cursor moves to the next line."

I think I would appreciate the tangent and see where it went, time allowing, as it still offers insight into your thought processes and depth of knowledge. If the tangent goes to far afield, you can always guide it back with additional leading questions...
Come on, the question is clearly about a browser
I don't see anything clear about it being a browser. If you want to ask silly questions like this, expect silly responses. There is a zillion ways to answer this question, I imagine the idea here is just to see a persons thought process, and not being 100% accurate.
This has become my least favorite question to answer, partly because the rabbit hole is too deep for a limited amount of time, and mostly because it has so little to do with the job I'm interviewing for. It also feels so tedious, having answered it so many times before. The hardest part about answering this question is not sounding or looking like I just want it to be over, already.

> Really a great question for exposing how the candidate models a complex system.

The question could do that, if the interviewer is sufficiently interactive and asks the candidate to explore or explain, but I have yet to experience it. Every single time I've answered the question, the interviewer just sits and listens.

Am I really exposing how I model anything when I'm giving what's now a pretty rote answer, colored by years of reading postings about it?

When I had to answer a question like that, I'd give a bit of detail about each stage and then ask if the interviewer if they wanted me to talk in more depth or go on to the next stage.
Holy shit. The most detail I know is the calculation of IPaddr from physical address.
A former boss of mine was like that. It's fascinating to hear him speak.
Funny, I don't see the immutable file question, or questions on capabilities, systemd, selinux, etc. Also, there are "big traffic" questions missing, like how to tune a kernel to perform lots of network ops, how to design a system for high-performance and high-availability, network attached storage, firewalls, replication, etc. Basically, how do I build a system that I know can deliver X traffic at Y rate, and scale it?

Then there are the process questions, which always seem missing. How do you prioritize work? How do you balance projects and toil? How do you manage working on the same set of services with multiple team members on multiple platforms? How do you handle incidents? What is your typical postmortem like? What do you do when a customer asks you to do something? When a manager does? How do you manage your automated tasks? Give me an example of implementing auto-healing. Give me two examples of how you have migrated or upgraded a running service. Multiple customers have reported that the production site is down; what do you do?

Then there's more modern stuff which should be standard by now, like talking about using Docker, job schedulers, CI/CD, monitoring, configuration management, inventory management, secret management, deployment, HP/HA, distributed computing, etc. Even using the cloud should be standard now, as virtually every company that isn't using it wants to.

Isn't that the magic of GitHub? Put in a PR
"What do you understand by CLI?".. Something about this question makes me question what they are expecting you to answer. Last sentance: "CLI is very easy to use, but it should be typed very precisely.".. First of CLI includes sh,ash,bash,ksh and all other command lines, all with a variaty of difficulty and their own querks. "CLI is very easy" depends on how well you know it, master it and obfuscate an operation in it. I am not sure what that question, or whatever answer you get out of it, would help you determain what a person actually know beside knowing the abriviation?
I'll never get any job again:/
Hey, it lists answers too. And it's concise. That makes it immediately useful. I was expecting a list of questions, and the interviewer is expected to just muddle through picking the ones for which they knew the answer.

Not only is it immediately useful, it's actually educational. That's nice. I'd say it's well done, even if some people are saying that the questions are too junior. It's well-organized, well-structured, and well-written.

The title should start with "Show HN:", followed by something more readable than the repo path. E.g. "Show HN: Test your sysadmin skills"
For some reason, sorting algorithms and whiteboarding snuck their way in a few years ago. Here's hoping that fad came and went for 95% of roles which don't require extreme scaling.
Nice try, but ... Many of the questions in the Regular and Senior categories I would put into Junior. It's not clear to me who the audience is for this. It's not comprehensive enough for a test-giver, test-taker or self-studier. Having it be a single MarkDown document makes it hard to munge. I would guess that there is a better vefsion already written elsewhere.
I was hoping to get a printable version using gitprint, but it seems to create a corrupt PDF :-(

https://gitprint.com/trimstray/test-your-sysadmin-skills/blo...

I really want to contribute to this, but it seems like it is so incomplete and full of Opinion instead of fact that doing so would be more like me doing your homework for you, instead of showing you how to do it yourself.
I haven't seen mention of the fork bomb in a long time. I'm impressed that it was included here; gives me hope for the next batch of sysadmins.
why would this "give you hope for the next batch of sysadmins"?

Most sysadmins/SRE's i have met (especially on *nix), are very capable in their craft.

I don't agree with there being "a next batch of sysadmins" because the layers are so abstracted now. I have still seen systems that don't protect against fork bombs. I love taking advantage of it.
There are apparently only seven Linux distributions.

Sorry ARCH people, you're not one of them.

(I'd think twice about admitting to knowing of Kali at most interviews too, I guess...)

(Note, they do admit: "The answers are only examples and do not exhaust the whole topic.")

Looks like all the enterprise Linux distros to me? I wouldn't qualify Arch for that purpose.
Linux xxxxx 4.17.11-arch1 #1 SMP PREEMPT Sun Jul 29 10:11:16 UTC 2018 x86_64 GNU/Linux