Senior Software Engineer - Visibility

Slack, San Francisco

Slack's cloud-based collaboration tools and services are used worldwide.

About the Team

The Visibility team at Slack develops platforms and tools which provide insights into the availability, performance and reliability of Slack production services. We develop configuration management tools for distributed applications and infrastructure, maintain datasets for business and system analytics, and build interfaces and backend systems to answer questions and infer behavioral patterns about our users and systems. Our toolset is varied. We work with open-source technologies like Elastic Stack and Prometheus, cloud providers such as AWS and GCE, and write software using a combination of Go, JavaScript, Python, and PHP/Hack.

As part of the Visibility team you will work closely with other teams in engineering, product development and customer experience to provide valuable insights to drive decisions and ensure a positive user experience for our Slack customers. You will also help build distributed services with the ability to self-heal and scale up or down to meet demand. We are an inclusive team with deep empathy for our colleagues and customers.

You can see the team at work here at Monitorama 2017.

About the Role

This is a senior engineering position based in San Francisco.

Your responsibilities may include:

  • Collaborating with an engineering team to write a client library to collect traces and metrics from customer-facing systems.
  • Whiteboarding and soliciting feedback from peers for a next-generation monitoring system that will scale to meet growth — and then making it happen.
  • Prototyping tooling interfaces or building new features for engineering use cases.
  • Improving auto-remediation in our telemetry infrastructure to avoid common failures.
  • Teaching engineers how to use our tools to introspect their systems.
  • Participating in the Visibility on-call rotation, triaging and addressing production issues as they arise.

You might be a good fit if:

  • You are a strong communicator. Explaining complex technical concepts to designers, support, and other engineers is no problem for you.
  • You enjoy helping onboard new team members, mentoring, and teaching others.
  • You model best practices for unit tests, code review, design documentation, debugging, and troubleshooting.
  • You have curiosity about how things work.
  • You are motivated by helping others succeed. When things break — and they will — you are eager and able to help fix things. You like thinking of ways to improve efficiency or bring delight to your coworkers.
  • You also know that the internet is a scary place and understand security concepts deeply and can put them into action to protect us and our users.



  • Firm grasp of computer science fundamentals: data structures, algorithms, programming languages, distributed systems, and information retrieval.
  • Bachelor's degree in Computer Science, Engineering or related field, or equivalent training, fellowship, or work experience.


  • Experience with functional or imperative programming languages -- e.g., PHP, Python, Ruby, Go, C, or Java (used without frameworks).
  • Experience deploying, operating and debugging server software on Linux at scale.

Bonus Points:

  • Solid competency with ELK, Prometheus, and/or Icinga.
  • Experience using PHP without a framework.
  • Experience using deployment automation/configuration management, especially Chef.
  • Experience with AWS and other virtualized environments.
  • Prior experience with or knowledge of large scale, high volume systems and data.

About Slack

Empathy. Courtesy. Playfulness. Craftsmanship. Solidarity — these are some of the values we live by, as a company. We work by them, too: we’re building a platform and products we believe in — knowing there is real value to be gained from helping people, wherever they are, simplify whatever it is that they do and bring more of themselves to their work.

We’re building a strong, diverse team of curious, creative people who want to find a purpose in their work and support each other in the process. We work hard and we play to win… within normal business hours. And then we go home.

That balance is important: It enables us to truly do the best work of our lives. As a result, we create a place where all kinds of work happens — and happens well — all while working alongside people we respect and admire.

Want to learn more about Slack? Visit Slack's website.