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.
You will have deep technical skills, are comfortable contributing to a nascent data ecosystem and building a strong data foundation for the company. You will be a self-starter, detail and quality oriented, and passionate about having a huge impact at Slack.
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 Kafka, Hadoop, Hive, Presto, Spark, 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 health of our data platform (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.
* Provide implementations to expose actionable data to internal and external partners.
What you should have
* Bachelor's degree in Computer Science, Engineering or related field, or equivalent training, fellowship, or work experience.
* 4+ years of experience working with data technologies that power analytics (e.g. Hadoop, Hive, Spark, Presto, Kafka, etc).
* Deep understanding of data persistence (relational, key/value, document, columnar, graph).
* Skilled at crafting and building robust backend data services (distributed systems, concurrency models, microservices).
* Strong dedication to code quality, automation and operational excellence: unit/integration tests, scripts, workflows.
* Expertise in object-oriented and/or functional programming languages (e.g. Go, Java/Scala, Python).
* Excellent written and verbal communication and social skills; able to effectively collaborate with partners.
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