agentleFS
jaballerjaballer/react-claude-skills/react-interview-async-slack/SKILL.md

react-interview-async-slack

Skill0 starsChanged 5 months agoMITView on GitHub

Navigate the async-with-Slack-access technical interview format (Netlify and similar). The engineers will explicitly invite frequent questions and proactively check in — but the senior calibration is to ask ORGANICALLY when it makes sense, not on a schedule and not to perform engagement. Includes the ask-vs-commit decision matrix, Slack message templates (clarifying question, idea sanity check, stuck moment, response to check-in, submission), professional async tone, what makes a question senior vs. needy, the "I'm going with X, flag if wrong" pattern. Use during any time-boxed coding interview that includes a chat channel with the hiring engineers. Triggers on "Slack interview", "async interview", "ask vs commit", "clarifying question", "interview communication", "Netlify interview", "technical project", "during the build", "Slack channel", "async build".

The file

We split this skill into the rules it gives an agent

7 rules. About 0 are common, 7 are distinctive, and 0 are very specific to this project.

  • ≈0

    Common · estimate

    Many files like this have a rule of this kind.

  • ≈7

    Distinctive · estimate

    This author's own choices. Worth a look.

  • 0

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Distinctive:

    Asking is welcome: Don't apologize for it.

    line 28
  2. Distinctive:

    They'll guard the off-limits territory: If something is "figure this out yourself," they'll tell you.

    line 29
  3. Distinctive:

    AI tools (Claude Code, etc.) are sanctioned: Use them openly.

    line 31
  4. Distinctive:

    If you have something to share:

    line 96
  5. Distinctive:

    If you're heads-down:

    line 102
  6. Distinctive:

    If they ask about your Slack messages:

    line 184
  7. Distinctive:

    If you didn't ask much:

    line 190

≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md

react-interview-async-slack

The async-with-Slack-access format: you're alone, time-boxed, but engineers are reachable via chat and have explicitly invited questions. The senior move is to ask organically when it makes sense — not on a schedule, not to seem engaged, but when a question would genuinely help the work.

Calibrated for the Netlify Senior UX Engineer technical project (2-hour GitHub-based exercise set; Sam + Nathan Houle available in Slack throughout, with proactive check-ins). Adapt for similar formats.

What Sam actually said, verbatim

About Slack access:

"Please think of us as a resource and reach out to us as often as you'd like. We're here to help! You're welcome to ask us questions about the prompt, bounce ideas off us, ask us what we're looking for in parts of the exercise, etc. Don't feel like there are questions that are off limits: If there's something we'd like for you to figure out on your own, we'll make that clear."

About proactive check-ins:

"I'll also regularly check in on how things are going and to help you keep track of time. Don't feel like you need to give a progress update when we send these, or as any kind of indicator that you're communicating too much or too little — more than anything remind you that we're here to help if we can!"

About allowed resources:

"You're also welcome to use any resources you'd like to complete the exercise, which includes Google/the general Internet, AI agents, etc. Pretty much anything that's not 'I had someone else do this for me'."

What this combined context means:

  • Asking is welcome. Don't apologize for it.
  • They'll guard the off-limits territory. If something is "figure this out yourself," they'll tell you.
  • Their check-ins don't require a status response — engage if useful, otherwise just keep working.
  • AI tools (Claude Code, etc.) are sanctioned. Use them openly.
  • The channel is friendly, not adversarial. They're a resource.

The "organic" calibration

Even with the door wide open, the senior move is organic asking, not high-volume. Asking when a real question arises beats asking for the sake of seeming engaged.

A question is organic when:

  • A genuine ambiguity in the brief would change the work meaningfully if you got it wrong
  • You're bouncing an idea and a 60-second sanity check would save 15 min of rework
  • You've been stuck for 10+ minutes after real effort
  • The brief invites a tradeoff and you want a read before committing significant time

A question is not organic when:

  • The answer is in the brief if you re-read carefully
  • It's a tiny reversible choice ("h2 or h3?")
  • You're asking to perform engagement
  • You haven't tried first

Default: commit on small ambiguities, document the reasoning in the README or commit message, move on. The open channel is a safety net, not a continuous-feedback loop.

The ask-vs-commit decision matrix

SituationAction
Choice affects whether you can ship at allAsk
Choice changes structure significantly (hours of rework if wrong)Ask
Brief is silent and you're genuinely 50/50 between two interpretationsAsk (with a default)
You want a real sanity check on a meaningful tradeoffAsk, briefly
Choice is small and easily reversibleCommit
You have a 70/30 preference and the brief allows eitherCommit
Standard convention applies (a11y, semantic HTML, focus rings)Commit — always
The answer is in the brief if you re-read carefullyCommit (after re-reading)
You haven't tried firstTry, then commit or ask

Slack message templates

Template 1 — Clarifying question with a proposed default (use most of the time)

Hey team — quick clarification on [exercise name].

The brief says [thing], but I'm not sure if [interpretation A] or
[interpretation B] is the intent. Going with [A] because [one-line
reason] unless someone has a strong preference. Happy to adjust.

Thanks!

This says: I read carefully, made a call, here's my reasoning, I'm not blocked. Keep coding while you wait because you've stated your default.

Template 2 — Bouncing an idea / sanity check

Quick sanity check — for [exercise], I'm thinking [approach].
Trades off [pro] against [con]. Does that match what you're looking
for, or would you go a different direction?

Sam explicitly said "bounce ideas off us." This is the use case — when you have a tradeoff and a 60-second read from them saves a chunk of rework.

Template 3 — Responding to a check-in (when Sam pings)

If you have something to share:

Going well — on [exercise N], working on [feature]. Will move to
[next thing] after.

If you're heads-down:

Heads-down on [thing] — will surface for the next one.

You don't have to respond to every check-in. Sam said as much. But a one-liner is friendly and costs nothing — better than radio silence over a 2-hour window.

Template 4 — Stuck moment (after 10+ min of real effort)

Stuck on [specific technical thing]. I've tried [X] and [Y] — both
[why they didn't work]. Time-boxing this to [N] more min before I
work around it by [fallback]. Any known gotcha?

Critical: name what you tried first. "I'm stuck" without context = mid-level. "I'm stuck, tried X and Y, fallback is Z" = senior.

Template 5 — Submission

Submitted! All exercises pushed to the repo. The README walks
through decisions and what's out of scope.

A few highlights:
- [Thing I'm proud of]
- [Thing I'd return to with more time]

Looking forward to Wednesday!

Tone & style

  • Concise. Three sentences beats six.
  • Decisions, not hedges. "I'm going with X" beats "I'm leaning toward maybe X-ish."
  • No apologies. Sam invited questions — "sorry to bother" wastes everyone's time.
  • Engage their check-ins lightly — a one-line response is friendly without being a status report.
  • Match their tone. Sam's writing is warm and casual ("Hey @jabaltorres! 🐸"). Match it — emoji are fine, "hey team" is fine.

What still doesn't make sense to ask

Even with the door open, these are time-wasters:

Don't askBecause
"Should this be accessible?"Always yes
"What tech stack should I use?"The repo indicates it
"Is what I have so far good?"They'll evaluate in the review
"How much time do I have left?"You know — there's a clock
Anything obvious in the briefRe-read the brief first
"Can I use [common tool/library]?"Sam said you can use anything — assume yes

Note: Sam said "if you find yourself wondering 'Can I use this?' feel free to ask" — but most "can I use" questions are answered by "yes, of course." Save the ask for genuinely novel situations.

What the engineers will see in the transcript

The Wednesday review will be informed by your Slack messages. Patterns:

Pattern in your SlackWhat it signals
1–3 thoughtful questions where they actually matteredSenior judgment
Bouncing an idea once with a clear tradeoff articulatedSenior — collaborative, decisive
Brief responses to their check-insFriendly, professional
Zero messages on a brief that was genuinely ambiguousMixed — could be confidence, could be over-interpretation
8+ messages, many "is this right?"Needs hand-holding
Stuck message with what-you-tried + fallbackStrong debugging signal
Apologetic/hedging toneLacks conviction

Common pitfalls

PitfallBetter
Asking permission for every micro-decisionCommit, document, move on
Asking "how should I structure this?" with no proposalPropose, ask if roughly right
Apologizing for askingJust ask — Sam said it's welcome
Waiting silently when blockedAsk after 10–15 min of trying
Sending a question and freezing waitingSend Template 1 with a default; keep coding
Long messages3 sentences max
Asking things the brief coversRe-read first
Hourly "still working on this!" pingsTheir check-ins handle this rhythm

During the Wednesday review

If they ask about your Slack messages:

  • "I asked about [X] because the brief had two reasonable readings and the structure differed. Went with [option] when I didn't hear back fast — documented the reasoning in the README."
  • "I bounced [idea] off the channel — felt like a tradeoff worth a sanity check before committing significant time."
  • "I kept Slack light overall — most ambiguities I resolved in code with a comment since the brief was clear once I had a structure in mind."

If you didn't ask much:

  • "I kept the channel light by design — I wanted to demonstrate the working style I'd use day-to-day, which is to commit on small things and surface only the meaningful ambiguities. I appreciated knowing the door was open if I needed it."

Authoritative references

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

Reviews can't be read right now.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.