Staff Software Engineer, Backend
Slack is looking for Staff Backend Engineers to build features, design and implement API methods, and improve the performance and reliability of our systems as we rapidly scale our product and organization. We have backend engineers in almost every team across Slack, and in that role, you’ll be making some of the most significant decisions for the company.
We build our app using reliable tools that our team knows and trusts, including PHP/Hack, Java, MySQL, and Linux. Expertise in these areas is a huge plus, but having familiarity with other common web languages (such as Python or Ruby) and other relational databases are fine substitutes. We’re a collaborative team who genuinely enjoys working together with a cross-functional team of product managers, designers, frontend, iOS, Android, automation, and quality engineers to make Slack a better product. We are looking for engineers that understand that simplicity and reliability are aspects of a system to be carefully calculated with every decision made.
This is a full time Staff engineering position based in Toronto, Canada.
What you will be doing
- You’ll own technical strategy for broad or complex requirements with insightful and forward-looking approaches that go beyond the direct team and solve large open-ended problems.
- You’ll participate in the strategic development of methods, techniques, and evaluation criteria for projects and programs.
- You’ll lead a broad functional area and directs efforts through team leads along with team’s overall planning.
- You'll brainstorm with Product Managers, Designers, and Frontend Engineering to conceptualize and build new features for our large (and growing!) user base.
- You’ll actively own features or systems and define their long-term health, while also improving the health of surrounding systems.
- You'll assist our skilled support team and operations team in triaging and resolving production issues.
- You’ll develop & implement tests for ensuring the quality, performance, & scalability of our application.
- You'll mentor other engineers and deeply review code.
- You’ll improve engineering standards, tooling, and processes
What you should have
- You’ve been building web applications professionally for 7+ years.
- You have experience with functional or imperative programming languages -- e.g., PHP, Python, Ruby, Go, C, or Java.
- You can lead technical architecture discussions and help drive technical decisions within your team.
- You write understandable, testable code with an eye towards maintainability.
- You are a strong communicator. Explaining complex technical concepts to designers, support, and other engineers is no problem for you.
- You possess strong computer science fundamentals: data structures, algorithms, programming languages, distributed systems, and information retrieval.
- You have a bachelor's degree in Computer Science, Engineering or related field, or equivalent training, fellowship, or work experience.
Slack has transformed business communication. It’s the leading channel-based messaging platform, used by millions to align their teams, unify their systems, and drive their businesses forward. Only Slack offers a secure, enterprise-grade environment that can scale with the largest companies in the world. It is a new layer of the business technology stack where people can work together more effectively, connect all their other software tools and services, and find the information they need to do their best work. Slack is where work happens.
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.