Software Development Engineer - R1194

Engineering ENT CAD · Vancouver, British Columbia
Department Engineering ENT CAD
Employment Type Regular Full-Time

Job Title: Software Development Engineer


Company Overview: Here at Ooma we empower people to connect in smarter ways. We do this by creating powerful communication experiences through our cloud-based platform to bring people together at work and at home. Our solutions help small business owners stay connected with their customers and manage their businesses from anywhere. For larger companies we provide customized unified communications solutions to meet their unique needs. At home, we help our customers connect with their loved ones by providing the #1 rated VoIP phone service available. We also provide them with peace of mind though our innovative smart home security solution. At Ooma, all our products and services are priced competitively, because we believe advanced technology should be accessible to all.


Every day, we strive to uphold our brand values:

We care that everyone loves their Ooma experience.

We think big to innovate and revolutionize markets.

We create smarter solutions that uniquely deliver both superior experiences and superior value.

We embrace diversity of thought to make the best decisions.

We respect that problems are best solved by fact-based discussions and positive intent.

We choose to be a force for good in the world.


Working at Ooma means being a team player, while allowing your individual voice to come through. And, you'll receive competitive compensation, benefits and generous company perks.

Job Responsibilities:

  • Responsible for building and maintaining new and existing features in our distributed service architecture
  • continue to build new features on top of a modern stack - it consists of a database layer (CouchDB), an application layer (Kazoo a number of other applications), an audio transcoding/call routing layer (FreeSWITCH), and an SBC/proxy layer (Kamailio). Many parts of this stack are written in the programming language Erlang.
  • Communications between components is often over the AMQP protocol; specifically, we use RabbitMQ.
  • you will spend most of your development time on Kazoo or the other peripherals in the application layer. We value moving fast and responding to change quickly, so don’t hesitate to propose adoption of new technologies that help us deliver value and functionality to our customers.


Job Qualifications:

  • Associate's Degree or Bachelor's Degree in Computer Science, Business Information Systems, or similar field, or equivalent work experience required
  • A strong functional programming background (Erlang/Elixir is a plus)
  • Experience with distributed systems (both computation and data replication)
  • Confidence working with various Linux environments
  • Strong git skills
  • NoSQL experience (CouchDB is a plus)
  • Experience with AMQP (RabbitMQ is a plus)
  • Experience with realtime systems
  • Experience with VOIP, SIP, WebRTC
  • Experience building robust RESTful and websocket APIs
  • Kazoo stack (Kamailio, FreeSWITCH) is a plus
  • Ability to perform code reviews, create detailed plans and willingness to work collaboratively with a development team
  • Excellent technical, troubleshooting and analytical skills
  • Telecommunications/VOIP experience and an understanding of network topology and telecommunications architecture is a plus
  • Great communication
  • Excellent judgement and decision-making skills
  • Strong time-management skills
  • High technical ability



  • Full Medical/Dental/Vision benefits
  • RRSP Match
  • Paid time off (PTO)
  • Paid Holidays



Thank You

Your application was submitted successfully.

  • Location
    Vancouver, British Columbia
  • Department
    Engineering ENT CAD
  • Employment Type
    Regular Full-Time