Slack is looking for Senior Application 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 Application 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 lead technical architecture discussions and help drive technical decisions.
- 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
Slack is a messaging app for teams that is on a mission to make your working life simpler, more pleasant, and more productive. We believe everyone deserves to work in a welcoming, respectful, and empathetic culture. We live by our values and hire accordingly.
Launched in February 2014, Slack is the fastest growing business application ever and is used by thousands of teams and millions of users every day. Slack's investors include many of the best-recognized firms in the world, including Accel Partners, Andreessen Horowitz, Social+Capital, KPCB, Google Ventures, Horizons Ventures, IVP, Spark Growth, DST, and Index Ventures. We currently have five offices worldwide, in San Francisco, Vancouver, Dublin, Melbourne and New York.
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 fun place to work. Come do the best work of your life here at Slack.