SoundHound

Senior Software Engineer - C++ Service Architecture

Server-side Engineering | Santa Clara, CA, United States

SoundHound is creating and productizing transformative technologies that improve life. Join us.

After amassing a global user community well over 300 million strong, a large portfolio of core technologies and award winning products....we're just getting started. 

At SoundHound we value creativity, innovation, hard work, open communication and fast iteration, which allow us to act on valuable feedback from employees and users alike. SoundHound's culture is one of impromptu coffee breaks, less-impromptu fitness sessions, group lunches, and weekly happy hours. 

We offer a competitive salary, SoundHound stock options, unique camaraderie, catered lunches, and the opportunity to call a company home that's simultaneously changing the way we discover music AND interact with machines. Yep, it's that cool.

About the Role:

Our voice recognition engine is designed to handle a large volume of audio queries. You will be joining a small team as a key technical hire that designs, maintains and upgrades the service layer that handles receiving of audio queries and streams the data to the speech recognition module (the speech engine) in addition to handling the communication between various modules in the speech engine. The key parameters in the design are scalability and fault tolerance. At the same time it is key to implement a design which will provide visibility into data communication when faults do occur.

Responsibilities:

  • Ownership of the design and development of the service layer of our Speech products, the interface layer between the mobile client, speech recognition engine, and content sources.
  • Design and evolve our service architecture; implement new services and features for existing services; test and provide binaries to IT for deployment.

Requirements:

  • Expert level coding abilities in C++, with a strong hands-on approach, as architect and coder.
  • Extensive experience working with multi-threaded, multi-process applications
  • Deep understanding of Unix/Linux based systems
  • Operational experience as a service owner
Nice to haves:

  • Experience with socket-level programming
  • Experience with speech recognition
  • Experience with gdb, Valgrind, perf
  • Experience with scripting languages (BASH, Perl, etc)


How to Apply:

Please send us your resume and cover letter.  Applications without cover letters will not be considered.  Tell us why you would like a job at SoundHound in particular.