Senior Software Engineer, Backend

Slack   •  

San Francisco, CA

Industry: Enterprise Technology

  •  

5 - 7 years

Posted 54 days ago

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.

A taste of our scale and reach:

  • Users spend over 10 hours connected and 2+ hours active in Slack every work day.
  • 10M+ Daily Active Users in more than 150 countries.
  • 1.5 billion messages are sent per month, half of those outside the United States.
  • Every day we see over 3.5 million simultaneously connected users, over 3.5 billion web requests, over 42 billion database queries per day, and our systems see over 1 million queries/second in our caching tier.
  • We have 8.8M+ app installations with 155,000 weekly active developers building on the developer platform.
  • 90% of our paid teams on Slack actively use apps.

This is a full time senior engineering position based in San Francisco, California.

What you will be doing

  • You'll brainstorm with Product Managers, Designers and Frontend Engineers to conceptualize and build new features for our large (and growing!) user base.
  • You'll produce high-quality results by leading or contributing heavily to large cross-functional projects that have a significant impact on the business.
  • 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 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 4+ 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.