I've experimented with the "do not disturb" mode which has worked well. But I also occasionally work from home and when you do that you also have the desire to be always available.
One thing I enjoy doing is starting my day really early and working on stuff before even opening Slack or email. That way you can easily get 2-3 hours of uninterrupted work accomplished.
By the end of that chunk of work you may also have pending questions for your co-workers so may be a good time to open Slack and start chatting to hash things out.
Do you find that you're not able to block off 2-3 hours if you don't get up early?
I feel like the need for immediate feedback is a big problem with the way people use Slack, if you could just not be expected to respond within 20 minutes it would be easier to block that time off.
To be honest I start my day early most days even at the office so I usually do have a good chunk of time for dedicated work to start my day.
There are some days where I don't write any code at all but it's not always due to Slack. It's usually meetings, planning, troubleshooting, brainstorming with teammates.
Have you actually been told you need to respond within 20 minutes or is that just the general feeling you have?
If you are really blocked you could just try closing Slack for an hour and do some work. If someone really needs to get in touch with you they'd come find you :)
Haha, no one has told me that, but Slack is engineered to make people feel an urgency to respond.
I feel like it takes an organizational change to get teams to fight the urge to treat Slack like an instant distraction machine, so it'd be nice if the tool itself fought that pattern. However, I think it's built to encourage that pattern ☹️
Another idea that might work depending on your team and work environment is bringing it up at the next team meeting and see if you could agree to set aside a certain time of the day where you can all take a "slack break" or just not be obliged to respond immediately.
For example "No Slack before 930am and after 1pm" or something like that?
Sounds like you guys have a corporate culture problem. In general, chat tools should be seen to be inherently asynchronous – though typically less delay-oriented than email. Which is to say, while tools like Slack can be used for interactive conversation, if you're not actively participating in an existing conversation, there shouldn't be an expectations that you'll simply drop everything just to reply. If someone needs you, you should have an established urgency-escalation path (e.g. Slack direct message or @-mention, SMS, phone-call). Also, people should take your Slack-status seriously (if I've marked myself away – especially if I've snoozed notifications – "take the hint").
We're a place where coders share, stay up-to-date and grow their careers.
We strive for transparency and don't collect excess data.