Senior Backend Web Engineer
Slack is looking for Senior Backend Web Engineers to build delightful features, design and implement useful API methods, and improve the reliability of our systems as we rapidly scale our product and organization.
We build our app using reliable tools that our team knows and trusts, including PHP, 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 are looking for engineers that understand that simplicity and reliability are aspects of a system to be carefully calculated with every decision made. We’re a collaborative team who genuinely enjoys working together to make Slack a better product.
This position is based in San Francisco and reports to one of our engineering managers.
If you were to join Slack, here are the kinds of things you would do over the course of a typical week:
- Build a new feature, with unit tests, that can support our large-and-growing user base.
- Whiteboard a fix to a scaling problem -- and then make it happen.
- Talk with our frontend team to decide how an API method should work.
- Collaborate with peers to write, review, or provide feedback on a technical design proposal.
- Help our skilled support team triage and solve bugs.
- Provide support to our operations staff in troubleshooting and addressing a production issue.
- Contribute to internal tools that help us improve our development process, manage our users, and scale our systems.
Here are things that we consider critical to being a Senior Backend Web Engineer:
- You have curiosity about how things work.
- You’ve been building web applications professionally for 3+ years and can point to things you’ve worked on.
- You have experience with functional or imperative programming languages -- e.g., PHP, Python, Ruby, Go, C, or Java (used without frameworks).
- You can jump into situations with few guardrails and make things better.
- 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 enjoy helping onboard new team members, mentoring, and teaching others.
- You know how the web works. You know HTTP and TCP/IP and what a good API looks like.
- You possess strong computer science fundamentals: data structures, algorithms, programming languages, distributed systems, and information retrieval.
- You also know that the internet is a scary place and understand security concepts deeply and can put them into action to protect us and our users.
- You know how to build reliable and safe distributed systems and understand the tradeoffs made when engineering a feature.
- When things break -- and they will -- you are eager and able to help fix things.
- You are someone that others enjoy working with due to your technical competence and positive attitude.
- Bachelor's degree in Computer Science, Engineering or related field, or equivalent training, fellowship, or work experience.
- Experience using PHP without a framework
- Solid competency with SQL (ideally in a federated database environment; MySQL a plus) and browser technologies
- Experience with SOLR, Redis, and Java
- Prior experience with or knowledge of large scale, high volume systems
- Experience in a startup environment
Meet Some of Slack's Employees
Senior Engineer Integrations
Duretti creates code and corrects bugs for the back-end of Slack’s website and mobile applications. She and her team work hard to keep Slack constantly functioning and up-to-date with new and exciting features.
Back to top