Introductory paragraph
At Knock we’re building a developer first notifications-as-a-service platform so that product teams don’t need to build in-house notification engines. We wrap all of the cross-channel notifications complexity into an API call and provide a dashboard for the non-technical members of the team to design, launch, and iterate on notification flows and content.
About us
My name: Chris Bell
My position: CTO / Co-founder
Company name: Knock
Website: https://knock.app
Company info and history:
- We’re a small team of engineers and product thinkers on a mission to improve on how software communicates with its users.
- We’re headquartered in New York City, but we are a fully distributed team.
- We were founded in January 2021 and raised our initial round of Seed funding in March 2021.
- We’re backed by folks like Adam Gross (fmr CEO @ Heroku), Guillermo Rauch (CEO @ Vercel), Michael Grinich (CEO @ WorkOS), and Scott Belsky (CPO @ Adobe)
- We’re all in on Elixir, using it throughout our services. And more importantly, we’re all in on supporting the community (I help organize @ EMPEX conf and co-host @ Elixir Talk).
About the job
Job title: Senior Backend Engineer
Job description:
We’re looking for a founding backend engineer to come and join the team. That means coming in and playing a meaningful part in shaping the direction of the company, product, and culture, as well as making lots of large technical decisions along the way.
We have a lot of technically challenging and rewarding problems to solve along the way as we build Knock into a robust and scalable platform for powering product notifications, and you’ll be at the pointy end of those problems as our founding backend engineer.
Salary range: $160 - 190k + sizable equity grant
Position on remote work: Remote encouraged but within US timezones only (GMT-10 to GMT-5). We also have hub offices in Boulder, CO and NYC and are actively practicing a “hybrid” model, should you wish to spend time in an office.
Qualifications or experience required:
- You have 5+ years experience working on backend services in a language such as Scala, Ruby, Python, Go, Node.JS, Erlang, or Elixir (some prior Elixir experience is advantageous but not a hard requirement).
- You have a track record of designing, building, and operating services in production at some meaningful measure of scale.
- You have knowledge of message brokers or queues in SQS, Kafka, RabbitMQ or similar.
- You’ve worked with AWS, Terraform, k8s or similar tools in the past.
- You’re excited about the opportunity to be at the “ground-floor” of an early stage startup and help build the team, processes, and product in order for it to succeed.
What the successful job applicant will be working on:
- Working exclusively on our Elixir based notification delivery engine, whereby we execute customer workflows and deliver notifications to end users, at scale.
- Architecting and building our infrastructure and services for the next generation of scale and resilience.
- Designing and building customer facing APIs
- Contributing to and maintaining our open source SDKs in a variety of different languages
- Working alongside the CTO in making large, long-lasting technical decisions.
About the interview process
- Screening call w/ hiring manager (30 - 45 mins). We’ll discuss your work experience and background and go into more depth about your past projects. We’ll also discuss the role at Knock and our mission.
- Pair programming exercise (45 mins) - we work on a shared problem together whereby we’ll implement a service that reads jobs from a JSON file, processes them, and delivers them to downstream HTTP services. You’ll be “driving” the pair over a Zoom call and can complete the exercise in whatever language you feel most comfortable in.
- Systems design exercise (30 mins) - we discuss how we might turn the above into a “real service” in production, and walk through a classic systems design problem using whiteboarding software.
- Interview w/ CEO (1 hour) - you’ll get an opportunity to meet the CEO and co-founder of Knock and ask additional questions you may have about the mission and business model.
- Offer - we’ll discuss the terms of an offer for a role at Knock, and walk you through our benefits.
Further info
Learn more:
If you’re interested you can speak to me directly at chris@knock.app or on the Elixir slack @cjbell. I’m happy to spend time telling you more about what we’re doing and answering any questions you might have before you apply. Otherwise, please send your resume to careers@knock.app.