Senior Embedded Software and Application Engineer

Seniority LevelEmployment TypeJob Functions
Senior-levelFull-timeEngineering

What if the devices you use every day were smart enough to understand both their environment and your intent? Imagine what’s possible when your camera can accurately perceive what it’s seeing and hearing without compromising your privacy. Imagine your wearable devices seamlessly integrating into your life, doing what you need them to do for as long as you need them to do it. Imagine if your appliances knew exactly what to do. No complicated settings, just perfect results. So simple it feels like magic. Join the dynamic and experienced team at Perceive, which is making magic a reality, as a Customer Solutions Engineer for Embedded Software. Be part of the team that’s transforming sensing into perceiving!

Job Description Summary

Perceive is looking for a Senior Embedded Software and Application Engineer to join our highly skilled team. The ideal candidate will be responsible for help our customers build amazing new products using our tools. You will provide valuable insights on Perceive tools to customers and enable them to optimize their models for widespread deployment on Perceive Ergo hardware.  The position requires expertise in consumer products / IOT; knowledge of embedded software, and/or hybrid edge-cloud systems is a strong plus. Demonstrated track record and passion for building great products is a must.

Essential Duties and Responsibilities

  • Enable and accelerate key customer efforts to get products to market with Perceive tools
  • Collaborate with ML network, algorithm, and SDK engineers in determining the best solution for customers
  • Develop embedded software/firmware and components for constrained hardware environments with a strong focus on efficiency, stability, and scalability
  • Write great code – efficient, well documented code that customers can use as examples to develop their own code.
  • Evaluate requirements, architectures, and tools; quantify design and performance tradeoffs
  • Help customers to optimize neural network models for various criteria such as power, latency, performance, etc.
  • Consult, trouble-shoot, and problem-solve as part of the customer success team in enabling customers to bring to market & deploy solutions built on Perceive hardware and software
  • Provide input and feedback to internal product enhancement and engineering teams

Minimum Qualifications

  • Bachelor’s or master’s degree in Electrical Engineering, Computer Science, Software Engineering, or a related field
  • Excellent analytical and troubleshooting skills
  • A proven track record of development, test, and delivery of production-quality software
  • A strong drive to solve problems and disrupt the status quo
  • Strong coding skills in at least two of C/C++, Python, and scripting associated with large code base development
  • Strong experience with embedded processors, hardware interfaces, communication protocols, multi-threaded programming, RTOS, Linux, or equivalent development
  • Strong embedded debugging skills with JTAG debug/trace, in-circuit emulators, and logic analyzers
  • Experience with coding standards, code reviews, source code management, build management, issue tracking, testing methodologies, and release management
  • 7-10 years of experience in embedded software/firmware development, progressively growing responsibilities on strong product teams, including ideally, as team lead
  • Strong communication skills; demonstrated cross functional / cross disciplinary leadership experience

Preferred Qualifications

  • Experience developing imaging and/or audio applications, IoT platforms, embedded system security, and/or machine learning applications
  • Knowledge of image processing (algorithms, image formats)
  • Agile/Kanban development expertise
  • Familiarity with Atlassian Data Center applications

Work Environment

  • This position involves working mainly in a typical desk/office environment, but it can also involve working in a lab setting
  • Travel to other Perceive offices/customer sites may be required occasionally

Location

  • Preferred locations: San Jose California, Boise, Idaho, Vancouver BC
  • Other locations in the US/Canada may be considered depending on the candidate’s skills/experience