Slack Overhauls Data Infrastructure, Shifting 700 EMR Jobs to REST-Based Architecture

Slack has successfully eliminated SSH dependencies within its EMR pipelines, transitioning over 700 data jobs to a more secure and scalable REST-based framework.
Modernizing Data Pipelines for Scale
Slack, the enterprise communications giant, recently completed a major overhaul of its data engineering infrastructure. By eliminating Secure Shell (SSH) dependencies within its Amazon EMR (Elastic MapReduce) pipelines, the company has successfully migrated more than 700 recurring data jobs to a modern, REST-based architecture. This shift marks a significant milestone in Slack’s efforts to enhance the reliability, security, and observability of its massive data processing ecosystem.
For years, many organizations have relied on SSH-based job submissions for managing distributed compute clusters. However, as Slack’s data volume and complexity grew, the limitations of SSH became increasingly apparent. The legacy system presented challenges in error handling, credential management, and the ability to scale seamlessly across thousands of concurrent processes.
The Move Away from SSH
The decision to move away from SSH was driven by the need for a more robust communication protocol between Slack’s internal workflow orchestrators and its EMR clusters. In the previous configuration, job submissions required maintaining persistent connections and managing complex SSH keys, which often led to brittle pipelines. If a network interruption occurred, tracking the state of a job became difficult, often resulting in "zombie" processes or failed data loads that required manual intervention.
By adopting a REST-based (Representational State Transfer) approach, Slack has decoupled the job submission layer from the execution environment. This transition allows for better utilization of standardized APIs, making it easier to monitor job status in real-time and automate recovery protocols when a cluster node fails. The new architecture leverages AWS-native APIs and internal gateway services to ensure that every data job is tracked through a centralized, auditable interface.
Overcoming Migration Challenges
Migrating 700 unique data jobs is no small feat. Slack’s engineering team had to ensure that the transition did not disrupt daily business operations or lead to data inconsistencies. The migration was handled in phases, beginning with low-criticality telemetry jobs before moving to core financial and analytical pipelines.
One of the primary technical hurdles was ensuring parity between the old SSH commands and the new RESTful requests. The team developed internal wrappers to abstract the complexity of the API calls, allowing data scientists and engineers to continue writing Spark and Hive jobs without needing to master the underlying infrastructure changes. This abstraction layer proved vital for maintaining developer productivity during the multi-month migration process.
Security and Observability Gains
From a security perspective, the elimination of SSH significantly reduces the attack surface of Slack’s data environment. Rather than managing long-lived SSH keys or opening specific ports for shell access, the system now utilizes Identity and Access Management (IAM) roles and short-lived tokens. This alignment with "least privilege" security principles ensures that only authorized services can trigger data workloads.
Furthermore, the REST-based architecture provides superior observability. Every request is logged with detailed metadata, providing Slack’s infrastructure team with granular insights into resource consumption, latency, and failure patterns. This data-driven approach to infrastructure management has already led to faster troubleshooting and optimized cluster utilization, ultimately reducing the operational overhead of managing one of the world’s largest Slack deployments.
Future Outlook for Slack Engineering
This migration is part of a broader trend within high-growth tech companies to move toward "serverless" mentalities in data engineering, where the underlying compute resources are abstracted away from the end-user. With the SSH-to-REST transition complete, Slack is well-positioned to further integrate its EMR pipelines with other cloud-native services, potentially exploring more aggressive auto-scaling and spot-instance strategies to manage costs.
As enterprise data needs continue to evolve, Slack’s successful transition serves as a blueprint for other organizations looking to modernize legacy Hadoop or Spark environments. By prioritizing API-driven workflows over manual shell access, Slack has built a foundation that is not only more secure but also capable of supporting the next generation of real-time analytics and machine learning applications.
