Senior Software Engineer, Data Infrastructure

Slack is looking for an experienced Software Engineer to join our Data Infrastructure team. You will build and integrate scalable backend systems, platforms and tools that power our Data Warehouse and help our partners implement, deploy and analyze data assets with a high level of autonomy and limited friction. You will play a meaningful role in scaling our data infrastructure as well as making our user experience interacting with data more efficient, pleasant and productive.

As Slack’s data grows (along with the number of customers, features and employees), the goal of the Data Infrastructure team is to provide the best blend of the tools and technologies that will strengthen the efficiency and dependability of the way we make decisions. You will design and integrate systems that power processing of our large and diverse datasets to allow our partners to focus on their strengths: data applications, data modeling, data analysis, search or machine learning.

Slack's API and web backend is built on PHP/Hack, and our backend services are written in Java and Go. Our data infrastructure is built on Apache Sqoop, Airflow, Hadoop, Hive, Presto, Spark, Kafka, Pinot, Flink and MySQL/Vitess.

What you will be doing

  • Build and scale data infrastructure that powers batch and real-time data processing of hundreds of billions of records daily.
  • Provide visibility into the health of our data infrastructure (comprehensive view of data flow, resources usage, data lineage, etc).
  • Automate and handle life-cycle of the systems and platforms that process our data.
  • Evolve maturity of our monitoring systems and processes to improve visibility and failures detection in our infrastructure.
  • Streamline the intake of the raw data into our Data Warehouse, propose new age solutions for data ingestion and collaborate with key stakeholders to execute on it 
  • Provide implementations to expose actionable data to internal and external partners.

What you should have

  • 4+  years of experience working with data technologies that power analytics (e.g. Apache Sqoop, Airflow, Hadoop, Hive, Spark, Presto, Kafka, Pinot, Flink, etc or similar technologies). 
  • You have experience provisioning and maintaining large big data clusters. You have worked on scalability and reliability challenges for the same.
  • You have a deep understanding of data persistence (relational, key/value, document, columnar, graph).
  • You are skilled at crafting and building robust backend data services (distributed systems, concurrency models, microservices).
  • You have a strong dedication to code quality, automation and operational excellence: unit/integration tests, scripts, workflows.
  • You posses expertise in object-oriented and/or functional programming languages (e.g. Go, Java/Scala, Python).
  • You can lead technical architecture discussions and help drive technical decisions within your team.
  • You are a strong communicator. Explaining complex technical concepts to designers, support, and other engineers is no problem for you.
  • You have a Bachelor's degree in Computer Science, Engineering or a related field, or equivalent training, fellowship, or work experience.

Slack is an Equal Opportunity Employer and participant in the U.S. Federal E-Verify program. Women, minorities, individuals with disabilities and protected veterans are encouraged to apply. Slack will consider qualified applicants with criminal histories in a manner consistent with the San Francisco Fair Chance Ordinance.

 


Back to top