Software Engineer, Backend at Nextdoor
Toronto, Ontario, CA

Nextdoor is the private social network for you, your neighbours and your community. Nextdoor’s mission is to provide a trusted platform where neighbours work together to build stronger, safer, happier communities, all over the world.

Are you passionate about using the power of technology to build community? Do you believe residents can strengthen their neighbourhoods through dialog and collaboration? Would you like to join a transformative company and play a meaningful role in crafting its future? If so, we’d love to meet you.

We’re seeking an experienced software engineer to design, build and maintain scalable, distributed systems that power Nextdoor's neighbourhood communication platform. You will work with multi-functional teams to translate product requirements into elegantly designed backend services that scale gracefully as our service grows. You will be responsible for designing and scaling interfaces, data stores, and backend services that power our iOS, Android, and HTML5 frontends.

About You:

  • You are passionate about building clean APIs for fellow engineers, writing crisp design documentation, and building, debugging and maintaining highly available distributed systems
  • You value software quality and have experience writing test suites that ensure bullet-proof correctness
  • You have experience building tools and automation that can aid in programmer productivity and work to eliminate downtime in both the system and the development process

Requirements:

  • BS, MS or PhD in Computer Science with specific interest in systems engineering; 2+ years industry experience preferred
  • Proven entrepreneurial spirit and experience as a self-starter - ideally at your own business or on your own side projects
  • Experience working on high-performance technical teams and software engineering projects
  • Strong fundamental understanding of data structures and algorithms
  • Extensive experience in one or more of the following languages: Go, Python, Java or C++ (Go/Python preferred)
  • Experience designing, building and debugging distributed systems
  • Experience architecting and deploying distributed systems on the Amazon AWS EC2 platform
  • Familiarity with software engineering standard methodologies (e.g., design patterns, peer code reviews, unit testing)
  • Strong collaboration and communication skills, both verbal and written
  • Experience writing technical specifications and design documents
  • Ability to be flexible and adaptable in a dynamic start-up environment
  • Strong desire to learn about new technologies and systems