Software Engineering Internship
Slack is looking for interns to work alongside our engineers for the summer of 2020. These full time internships are a unique opportunity for someone currently pursuing a BS, MS, or PhD in Computer Science, Engineering, or equivalent training, fellowship, or bootcamp completion, who wishes to gain hands-on experience in an industry setting. You will have the opportunity to work on a collaborative team and be paired with one of our engineers who will be your mentor throughout the course of the program.
You will demonstrate:
A strong work ethic, an eagerness to jump in and help fix things
Curiosity about how things work and tenacity to learn
Self-awareness and a desire to improve your skills
Strong communication skills, a positive attitude and empathy
You'll work in one of the following areas:
Our team works to create delightful features, while designing and implementing useful API methods to improve the reliability of our systems. We build our app using reliable tools that our team knows and trusts, including Hack/PHP, MySQL, and Linux. Expertise in these areas is a huge plus, but having a familiarity with other common web languages (such as Python or Ruby) and other relational databases are fine substitutes.
Come use your extensive knowledge of Java and Kotlin to improve the Slack Android app, a complex completely native application relied upon by millions of users every day. You will work with real-time data streams, engineer for performance across devices and delight people by making the best software we can imagine. You will collaborate closely with Product, Design and QA to build, test and deploy new features.
Come use your extensive knowledge of Objective-C and Swift to improve the Slack iOS app, a complex completely native application relied upon by hundreds of thousands of users every day. You will work with real-time data streams, engineer for performance across devices and delight people by making the best software we can imagine. You will collaborate closely with Product, Design and QA to build, test and deploy new features.
Everyday, millions of people use Slack's desktop application to stay connected and communicate with their teams. Though the application is used by a massive audience, it's created by a surprisingly small group of folks. We're able to pull this off through the use of cross-platform technologies like Electron, Node.js, and React. It doesn't hurt that our engineers are incredibly passionate and talented. Come help us build delightful features and tackle the unique challenges of developing for Windows, macOS, and Linux using web technologies.
Come help make Slack be more performant and reliable for teams of any size around the world. Our team focuses on the building blocks that enable the product engineering teams to build features easier, faster and more reliably. We'll use your knowledge of data structures, algorithms, programming languages, distributed systems, operating systems, and networking to build and troubleshoot complex distributed systems.
The Service Engineering team is responsible for building the network, systems, and software upon which we build Slack. We are a team of tool builders working to provide a secure and reliable base powered by automation. We use Chef, Python, MySQL, memcached, Solr, Apache, Kubernetes, HHVM, Java, Go, and many other technologies, all running in AWS and GCP.
The Data team helps our analysts, product managers, and customers understand how to make our users working lives simpler, more pleasant, and more productive. We develop Slack's open-source data infrastructure built on top of Thrift, Kafka, Spark, Druid, Airflow and Vitess and the work will involve creating and scaling batched streaming data pipelines.
You will develop frameworks, tools, and tests to cover the full depth and breadth of Slack’s client-server-side functionality. This includes our desktop and web clients, our iOS and Android clients, our external service integrations, the Slack platform API, and our supporting server infrastructure.
This is an excellent position for people who enjoy working on the full cycle of manual testing — crafting a strategy, writing a plan, building and executing tests, finding regressions, logging and verifying bugs, and building comprehensive historical records of testing activities that are key to being successful in this position.
The Information Security team at Slack partners with other teams to ensure we are doing our best work to protect customer data. We partner with each Slack engineering team to ensure Slack's entire product stack considers security best practices. We monitor Slack's operating environments, looking for malware and bad actors on Slack's corporate and production infrastructure. We develop secure libraries, tools, and services to prevent classes of risk and vulnerabilities to support Slack's operating environment. We continuously assess Slack's compliance with security standards and best practices. Help protect the billions of messages that Slack users share on our platform.
Slack is a layer of the business technology stack that brings together people, data, and applications – a single place where people can effectively work together, find important information, and access hundreds of thousands of critical applications and services to do their best work. From global Fortune 100 companies to corner markets, businesses and teams of all kinds use Slack to bring the right people together with all the right information. Slack is headquartered in San Francisco, CA and has ten offices around the world. For more information on how Slack makes teams better connected, visit slack.com.
Ensuring a diverse and inclusive workplace where we learn from each other is core to Slack’s values. We welcome people of different backgrounds, experiences, abilities and perspectives. We are an equal opportunity employer and a pleasant and supportive place to work.
Come do the best work of your life here at Slack.