Slack for software developers

Slack gives engineers and developers a new way of building and shipping software. Become familiar with everything Slack's API has to offer: Build internal tools, brilliant bots, and useful apps so you can share external information, streamline performance monitoring, and centralize communication with your development team and beyond! 💾 

Why should development teams use Slack?

  • Write, deploy, and debug code with the help of other apps.
  • Track bug notifications and change requests.
  • Work using agile methodologies and create efficient workflows.
  • Create internal integrations for your workspace.

Keep reading to learn how your software development team can best leverage Slack. 🙌


Create and share snippets

Snippets are useful. They let you share code, configuration files, and log files — essential for letting developers know how the computer executes code and what it has to tell you in the form of logs. 

When you create a snippet, you can select from over 60 different programming languages. Go ahead, create and share snippets with your workspace in a snap!

Need to share a plain text file? Upload the file in Slack and it will automatically convert to a snippet so everyone can read it easily without opening a separate application. 

Keyboard shortcut: Enter (Mac) or Ctrl Shift Enter (Windows) will open a pop-up window to create a new snippet in Slack.

snippet_html.png

In addition to code snippets (which are easy to download to share longer code), you can display shorter portions of text as fixed-width code and send it as a message in any channel.

Simply surround your text with ```triple backticks``` to create a block of pre-formatted, fixed-width text. Here's what it would look like in Slack:

codeblock.png

💡  Read on for more on how to format your messages


Track bugs and change requests

Software development can be in constant flux, so integrate your issue and project tracking tools with Slack to help your team keep track of bug reports, change requests, and user feedback. (We'll tell you how to do this with webhooks and integrations!)  

bugnotification.png

If you use a repository tool like GitHub, try integrating it with your workspace! With the two connected, you can create dedicated channels in Slack to track commits, pull requests, issues, and deploys. 

💡 Read Use GitHub with Slack for more.

 

Webhooks and integrations

Here at Slack, our team has channels for #alerts-php, and #cron-jobs, and #dev-ops! 🦁  Incoming webhooks are a great way to automatically pipe information and data from external sources into a channel in Slack. Need to efficiently monitor cron jobs or batch scripts? Webhooks are the answer. (You can make them interactive, too!)

Here’s what you might see in a dedicated #cron-jobs channel:

Cronjobs.png

💡 Our Slack API site shows you how to format your bot's messages so information is easy to read. 

How to interact with apps within Slack

Slash commands let Slack users interact with your app directly in Slack. We already have built-in commands like /remind and /mute to help you move around Slack more quickly — but the possibilities are endless. ➰

For example, connect JIRA (or a similar app) with Slack to simplify the bug reporting process for your team. Assigning the slash command /bug couldn’t be easier for your teammates to remember, and they don’t even need to leave Slack to log a new bug. 

jira_bugs.png
How to build custom internal integrations for your workspace

Engineers and developers have the technical know-how to build internal integrations that are tailored precisely to your team. Using Slack’s APIs, connect your third-party tools, external data sources, and custom workflows to Slack:

  • Focus work in one place.
  • Turn notifications into action.
  • Search across your systems.
  • Increase the visibility of how work gets done.

💡 Learn more about how you can customize Slack with internal integrations.

Incoming webhooks: Calling all engineers! Visit our developer site to create an incoming webhook. 🔧


Work using agile methodologies

👫  Hold daily stand-up meetings

Give your team some time back by holding recurring meetings in Slack. To keep the “meetings” focused, consider creating a dedicated #stand-up channel just for everyone’s daily updates.

standup-ios.png

If some of your members work remotely or don’t adhere to the traditional office environment, holding meetings in Slack gives everyone the ability to participate from wherever they’re located.


📕  Use posts for technical specs and pin them to relevant channels

Make it easy for everyone to find details about the product you’re building. Compose a post in Slack to document technical specs, project outlines, or to-do lists. Pin these items in relevant channels so you and your development team can refer to them later.

 

💬  Track feedback, requests, and problems with emoji (and reacji!)

Coordinate your team’s efforts by assigning one person each day to answer questions in a focused triage channel (#triage-ios, #triage-android, #triage-webapp, #triage-ops, etc.).


Here's how:

  1. Update the channel topic to let everyone know who’s on duty for the day, week, or month.
    triage-topic.png
  2. Encourage people to use specific emoji to indicate an issue’s severity.

    🔴  :red_circle: emoji means the issue is urgent.
    🔵  :blue_circle: emoji denotes a question or problem.
    ⚪️  :white_circle: emoji shows something is feedback.

  3. Then use emoji reactions to let others know you’re working on the issue.

    👀  :eyes: emoji reaction means "I’m looking at this for you".
    ✅  :white_check_mark: emoji reaction means "I’ve fixed the issue".

That's it! Here's an example of what that might look like in your #triage-webapp channel.triage_issue.png

If your triage channel gets a lot of action, build a bot that scans the channel for specific emoji to help you keep track of outstanding issues.

triage-bot.png

Tip: Choose a custom emoji that represents the feature or project your team is working on. Get creative! 🎨

 

Apps for software developers

We’ve listed a couple of examples here, but the Slack App Directory is chock-full of developer tools — take your pick!

GitHub

GitHub makes it easy to store your Git projects and work together on them with your team. Connect GitHub to Slack to keep members in sync — you’ll receive Slack notifications about commit events, pull requests, issue events, and deployment statuses.


Codeship

For teams working together on features or projects, Codeship keeps everyone on the same page of the development workflow. Run tests on your hosted software and automate your team’s code deployments. When integrated with Slack, Codeship will automate your team’s code deployments and send notifications to a designated channel, letting everyone know when new builds are successful or not.


JIRA Cloud

JIRA Cloud helps teams reach their full potential with powerful workflow and project tracking. Stay up to date with JIRA without ever leaving the Slack app. @jirabot will send notifications from JIRA Cloud to your channels in Slack, and once you’ve connected a project to your channel, @jirabot will automatically preview JIRA issues when they’re mentioned.

Screen_Shot_2017-05-02_at_6.03.10_PM.png

💡  For more, visit Post JIRA updates to Slack.

Build, connect, delight! Learn more about making great apps for people at work: slack.com/developers

Related Articles

Recently Viewed Articles