
Slack Software Engineer candidates describe recruiter and team conversations, a practical technical exercise, then a virtual final loop with coding, system design, and behavioral interviews.
$183K
Avg. Base Comp
$364K
Avg. Total Comp
7 rounds
Typical Rounds
3-5 weeks
Process Length
Slack Software Engineer interview reports point to a practical, product-facing evaluation rather than a process built only around standalone algorithm questions. One candidate described a recruiter screen and hiring-manager conversation before a 24-hour take-home code review of a buggy codebase. The assignment centered on reasoning through delayed service responses, with ambiguity in what the reviewer wanted. Another candidate reported a recruiter screen, a staff-engineer conversation, and a technical challenge to build a mini-app.
The final stages in both reports were multi-interview virtual loops. Prepare to make your engineering reasoning visible while working in a realistic application context. One candidate’s coding round used a Slack-like chat application with SQLite and a feature addition such as private channels; their system-design prompt involved ingesting Slack-message commands or keywords and invoking third-party APIs. The other candidate reported two system-design interviews in a four-interview final stage, including a mapping-system prompt. Behavioral discussion appeared early as well, including motivation for joining Slack.
The available reports are limited to two candidate accounts. Practice explaining tradeoffs in a build or code-review exercise, diagnosing a service slowdown, and structuring an open-ended design discussion around product behavior, interfaces, data flow, and failure handling. For behavioral conversations, have a concise, specific answer for why Slack and examples that show how you work with a team.
Synthesized from 2 candidate reports by our editorial team.
Had an interview recently?
Share your experience. Unlock the full guide.
Real interview reports from people who went through the Slack process.
Share your own interview experience to unlock all reports, or subscribe for full access.
Sourced from candidate reports and verified by our team.
Topics based on recent interview experiences.
Featured question at Slack
How would you investigate a SQL query suddenly running much slower than usual?
| Question | |
|---|---|
| Facebook Autocomplete | |
| 2nd Highest Salary | |
| Top Three Salaries | |
| Merge Sorted Lists | |
| Empty Neighborhoods | |
| Closest SAT Scores | |
| Subscription Overlap | |
| Monthly Customer Report | |
| Rolling Bank Transactions | |
| Top 3 Users | |
| Random SQL Sample | |
| Prime to N | |
| Comments Histogram | |
| Upsell Transactions | |
| Raining in Seattle | |
| String Shift | |
| Customer Orders | |
| Bagging vs Boosting | |
| Find the Missing Number | |
| Minimum Change | |
| Weighted Keys | |
| Find the First Non-Repeating Character in a String | |
| The Brackets Problem | |
| Daily Retention Summary | |
| Scrambled Tickets | |
| Largest Salary by Department | |
| Size of Joins | |
| Rectangle Overlap | |
| Google Maps Improvement |
Synthesized from candidate reports. Individual experiences may vary.
Candidates report an initial recruiter screen followed by either a hiring-manager call or a staff-engineer conversation. Motivation for joining Slack came up in an earlier conversation for one candidate, so applicants may need to connect their background and interests to the role before the technical exercise.
Candidates report a hands-on challenge rather than only a conventional coding question. One received 24 hours for a take-home review of a buggy codebase focused on delayed service responses; another built a mini-app. Expect the task to reward clear reasoning and communication about an imperfect codebase.
Both candidates describe a final virtual stage with multiple interviews. One reported coding, system design, and two behavioral interviews; another reported four team interviews, two of them system design. Reported prompts included extending a chat-style app, mapping-system design, and triggering third-party APIs from message commands.